Raspberry Pi Gets A Faraday & Things Get Sticky

During the past two weeks we’ve made some significant progress with our Telemetry and APRS software. These are both efforts to shape up our software for the #LaunchWithFaraday campaign where we aim to build several buoys and high altitude balloons using Faraday technology. Everyone benefits because Faraday gets better along the way and will soon become one of the best ways to perform remote sensing with ham radio.

Additionally, we’ve added some swag to our store by producing FaradayRF Stickers and have already shipped a bunch out to some awesome supporters. Show your support for open source hamradio projects by grabbing some stickers!

Rock-Solid APRS Support

GitHub issues #266 and #268 both helped make our faraday-aprs software stable and more useful when interacting with APRS-IS. The software was tested to 35 hours of continuous use updating Faraday position and telemetry data at 30 second intervals to the APRS-IS network. Any network failures or hiccups are automatically mitigated. On-top of this the software now sends BASE91 telemetry which gives our APRS implementation 12 bit data support. This is outstanding!

Telemetry sent in 12-bit BASE91 format from faraday-aprs software as shown on aprs.fi

Also, we tested locally with an aprsc server which was incredibly helpful. Shout-out to aprs.fi and @KWF for their help getting this running! We may end up hosting our own for Faraday applications in the near future, we will see. Check out the image below to see the faraday-aprs software connected to aprsc as a “client” near the bottom of the image.

Faraday-aprs client connected to a local aprsc server

Raspberry Pi Support

Using the Raspberry Pi with Faraday introduced a few unexpected issues. We are actively fixing them on Issues #270 and #272. The first roadblock we hit was with faraday-telemetry operating on the Raspberry Pi. The SQLite database used to store telemetry kept failing due to the database being locked when a second SQL operation was attempted while the first one was still ongoing which is not allowed. To fix this, each thread was given its own database connection and Write-Ahead Logging (WAL) was enabled.

Faraday software running on a Raspberry Pi sending APRS data

I suspect that without Write-Ahead Logging the Raspberry Pi is simply too slow for our the .journal file in SQLite to be deleted prior to the next operation. This is required and while the .journal exists the database is locked. Not an issue on laptop/desktops but apparently on the Raspberry Pi it is. With this fixed we are now performing long duration tests to ensure the code works. Pretty soon we’ll have a Faraday base-station up and running!

What’s Ahead for Faraday Development

We’re moving on several hot items we need to address. @KB1LQD is making a ton of progress getting I2C working with a SPI over on Firmware Issue #80. I’m also starting to look at Grafana for a new user interface which is looking promising. What do you think about our progress so far? Any tips or suggestions? Comment below and let us know.

Author: Bryce Salmi

Licensed radio amateur KB1LQC and Co-Founder of FaradayRF. Professional Electrical Engineer designing and building avionics for rockets and spacecraft during the day and developing the future of digital amateur radio experimentation by night. All opinions are my own.

1 thought on “Raspberry Pi Gets A Faraday & Things Get Sticky

Leave a Reply


Your Cart

%d bloggers like this: