Skip to content
Rick M edited this page Nov 28, 2023 · 11 revisions

High-Altitude Balloon Controller

This will be the second balloon controller I make[^1]. Features:

  • RP2040-based controller (Pi Pico, but that has some issues. Maybe an alternative RP2040. Maybe a Pi Zero!).
  • RFD900 radio link (probably limited to 64 kbps).
  • APRS backup link.
  • HA GPS.
  • Pressure sensor.
  • Internal and external temperature sensors, as well as sensors on the GoPros.
  • Current & voltage sensor (measure power and battery voltage).
  • Coulomb counter?
  • On-board SD card for logging (downlink is unreliable).
  • Camera for downlink (hopefully we can get some low-res images).
  • MAVLINK protocol (not sure if I can find a way to send images).
  • GoPro cameras, one up, one out.
  • Power distribution to controller & GoPros. APRS has separate supply (depending on weight).

A high-altitude balloon flight puts unique requirements on sensors. On the way to 31,000 m, the payload will encounter the following:

  • 31 km maximum altitude (very few GPSs can operate this high)
  • -60 °C minimum temperature, encountered between 11 and 20 km (very few sensors can read this low)
  • 183 Pa minimum pressure (very few sensors can read this low)

Image Downlink

I was able to get some crude CircuitPython code running on an RPi Pico (RP2040), with an Arducam SPI connected. It can capture a 1920x1600 image, JPEG compress it to under 100 KB, which should download at 64 kbps in under 15 seconds, more with error correction, retry, and interleaving with other packets.

But it works, and it would be pretty cool to have.

Links


[^1]: The first was based on an old Make Controller board and a custom PCB with Microhard radio, pressure sensor, thermistors, and GPS. It also had a backup APRS transmitter and two GoPro cameras.

Clone this wiki locally