Announcement

Collapse
No announcement yet.

Some findings on fr24feed performance in Raspberry Pi

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Some findings on fr24feed performance in Raspberry Pi

    Hello there,

    In one of these days, I looked at a idle Pi, and a also idle old Nooelec RTL dongle in my bag, just travelling around without any real use, and I decided to do something about it.

    After some time fiddling and building a antenna, everything was set up and sound.

    I live in the 11th floor with a decent North view and I'm surprised that I'm getting juicy reports of up to 200 nm aircrafts, even with a rather old RPI (it's a Pi B+) and a, um, rudimentar antenna.

    I tried to build a collinear but got up to 50 nm reports; probably due to something wrong with the segment sizes. Will be back to it when I get a VNA.

    So, old Pi, Old dongle and up to 200 nm reports. I have to say, I also have played a little with dump1090 configuration and operating system scheduling too.

    So, this is what I have in my fr24feed.ini:

    Code:
    procargs="--gain -10 --ppm 69 --enable-agc --lat -23.5553 --lon -46.7464 --aggressive --phase-enhance --net"
    NOTICE

    It is VERY IMPORTANT to know the average PPM deviation of your dongle! Run a rtl_test -p to find yours. Leave it running for like 10 minutes at least. Get that value and set it in your --ppm parameter in 'procargs'.

    I also changed the scheduling priorities giving more priority to dump1090.

    I edited the /etc/init.d/fr24feed and changed the lines that starts with:

    Code:
    /sbin/start-stop-daemon [...]
    to

    Code:
    /usr/bin/chrt -f 60 /sbin/start-stop-daemon [...]
    The last thing. When I log in the pi and do stuff, like updates, tests, etc., I don't want it to compete for CPU resources with dump1090.

    So what did I do: I've changed the default priority for my terminal activities to become 'Use CPU only if it is idle'.

    How to:

    1. Edit the file /root/.bashrc
    2. Add the following fragment of code:
    Code:
    for i in `pidof bash` ; do
       chrt -p -i 0 $i 2>/dev/null
    done
    3. Log off and log on back again. Everything that you will do in the terminal session will disturb the system minimally.

    So we have three tiers of CPU scheduling here:

    1. Most prioritary: dump1090
    2. Normal priority: The running system stuffs, everything that was not started by me in the terminal
    3. Lowest (idle slice) priority: Everything that I do when logged in via SSH.

    Radar data at rf01.co/r/

    Happy hacking & reporting!

    - RF (T-SBSP91).
    Last edited by rfreire; 2017-02-18, 21:58. Reason: Added radar ID, URL
Working...
X