Finally got my spare parts for the Raspberry Pi PoE hat and put the ADSB receiver back online. It took DHL Express almost 6 days for the customs clearance, was the last time I used this carrier. UPS is way more efficient on that.
I used the outage for an upgrade to the Mode-S Beast receiver. The performance of the neat little thing is astonishing! Compared to RTL-SDR dongle the ADSB message rate is 3 times higher, I see 40-50 more aircrafts, tracks per hour increased by 300-400, range increased by around 70km and CPU usage is down to 2-3%. That’s with the G7RQG antenna, connected by a short coax cable (<1m).
My dump1090-fa fork now supports the Mode-S Beast directly via USB. See Github for details.
Today, a thunderstorm passing overhead just killed, or better grilled, my ADSB receiver. There was no direct lightning strike but for some reason the DC-DC converter on the PoE hat stopped working and shows a short on the 48V input. The Raspberry Pi and everything else on the 5V side is working just fine. The PoE hat is powered by a 48V switching supply off the 220V mains. That is also still working fine, probably because of its output short circuit protection.
On the PoE hat the DC-DC converter is a Silvertel AG9805-M, ordered some new from http://www.semiconductorstore.com. $8/piece is a good deal compared to the price for the PoE hat or replacement converters supplied by other manufacturers.
I will stock some spares just in case that happens again. But then I need to investigate why that thing breaks.
In upgrade 1 I described how to add a GPS to the ADSB receiver for a precise clock in the Raspberry Pi. Here is another description how to add a graph in the the ADSB receiver portal for monitoring clock performance.
In a previous post I described the connection and usage of DS18B20 temperature sensors on a Raspberry Pi that serves my ADSB receiver. This setup was running for a while now and I have seen randomly read errors in /var/log/messages looking like this:
Jan 2 06:57:06 adsbreceiver kernel: [662143.679719] w1_slave_driver 10-000800507da4: Read failed CRC check
Jan 2 07:04:06 adsbreceiver kernel: [662563.782949] w1_slave_driver 10-000800507da4: Read failed CRC check
Jan 2 07:05:04 adsbreceiver kernel: [662622.182977] w1_slave_driver 10-000800507da4: Read failed CRC check
Jan 2 08:22:06 adsbreceiver kernel: [667243.852720] w1_slave_driver 10-000800507da4: Read failed CRC check
Jan 2 08:23:05 adsbreceiver kernel: [667303.023337] w1_slave_driver 10-000800507da4: Read failed CRC check
Jan 2 08:33:06 adsbreceiver kernel: [667903.780663] w1_slave_driver 10-000800507da4: Read failed CRC check
Jan 2 09:22:06 adsbreceiver kernel: [670843.967159] w1_slave_driver 10-000800507da4: Read failed CRC check
Jan 2 10:09:04 adsbreceiver kernel: [673662.309653] w1_slave_driver 10-000800507da4: Read failed CRC check
Jan 2 10:31:05 adsbreceiver kernel: [674983.100512] w1_slave_driver 10-000800507da4: Read failed CRC check
The ADSB receiver OS image that I use provides several performance graphs including the CPU temperature. For receivers installed on a remote location that is maybe not enough to monitor what’s going on inside and outside the box. For that reason I decided to install additional temperature sensors in my ADSB receiver box. My choice was the the Dallas DS1820 1-wire temperature sensor. It’s easy to interface to an Raspberry Pi and the kernel comes already with drivers. Perfect for that purpose.
This upgrade is divided into two steps: 1. Connect the DS1820 to the Raspberry Pi and configure the kernel drivers – 2. Reconfiguring the collectd service and the shell script that is creating the performance graph so that the additional temperatures will be logged and plotted as well.
DS1820 sensors measuring inner and outer box temperature