Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Soldered ADS-B Receiver Arduino library

Make docs and publish to GitHub Pages

Arduino driver for the Aerobits TT-SC1 ADS-B receiver module, a 1090MHz receiver that listens for ADS-B squitters broadcast by aircraft and reports each aircraft's position, altitude, speed, callsign and squawk over UART. It talks to the host over a simple AT-command interface for configuration, and streams live traffic as either CSV or MAVLink. This library was made for the Soldered ADS-B 1090MHz Receiver with ESP32-S3 board.

This library covers what the base SC1 module actually supports: CSV and MAVLink output. It does not include Mode-A/C/S decode, USB, multilateration timestamps, or the JSON/GDL90/ASTERIX/RAW protocols - those are exclusive to the SC1-EXT variant.

  • State machine: puts the module into and out of its CONFIGURATION mode to change settings, plus BOOTLOADER control and locking.
  • AT-command layer: read/write every setting, list all settings, full help text, reset to defaults, read serial number/firmware version/device type, connection test, reboot (normal or to bootloader).
  • ADS-B settings: pick CSV or MAVLink output, how often aircraft reports are sent, and the statistics output protocol.
  • CSV decoding: parses aircraft state vectors, ADS-B receiver statistics and system statistics out of the module's CSV stream, with CRC16 verification on every line.
  • MAVLink decoding: parses the module's MAVLink v1/v2 frames, with checksum verification, into a typed ADSB_VEHICLE struct (the one message the module sends); any other message ID is still delivered via a generic frame callback with its raw payload.

poll() auto-detects which of the two the module is currently sending, byte by byte, so the same sketch keeps working whichever output protocol is selected.

Repository Contents

  • /src - source files for the library (.h & .cpp)
  • /examples - one example per functional area, see table below
  • other - keywords file highlights function words in your IDE, library.properties enables implementation with Arduino Library Manager.

Examples

Example Demonstrates
1_ReadAircraftCSV Default RUN state, CSV decoded aircraft callback
2_DeviceInfo CONFIGURATION state, serial number, firmware version, AT+HELP, AT+SETTINGS?
3_ConfigureProtocolsAndSettings Writing every documented setting
4_Statistics System (#S:) and ADS-B (#AS:) statistics messages
5_StateMachineAndLock Full RUN -> CONFIGURATION -> BOOTLOADER(locked) -> RUN cycle, hardware reset
6_MavlinkAdsbVehicle MAVLink output, decoded ADSB_VEHICLE messages, generic frame callback
7_CustomBoardWiring Using the library on a board other than the Soldered combo board (different UART/pins)

Hardware design

You can find hardware design for this board in the Soldered ADS-B 1090MHz Reciever with ESP32-S3 hardware repository.

Documentation

Access Arduino library documentation here.

Board compatibility

This library talks to the module over a dedicated ESP32 hardware UART and targets ESP32 / ESP32S3 boards only.

Compile Sketches

About Soldered

soldered-logo

At Soldered, we design and manufacture a wide selection of electronic products to help you turn your ideas into acts and bring you one step closer to your final project. Our products are intented for makers and crafted in-house by our experienced team in Osijek, Croatia. We believe that sharing is a crucial element for improvement and innovation, and we work hard to stay connected with all our makers regardless of their skill or experience level. Therefore, all our products are open-source. Finally, we always have your back. If you face any problem concerning either your shopping experience or your electronics project, our team will help you deal with it, offering efficient customer service and cost-free technical support anytime. Some of those might be useful for you:

Open-source license

Soldered invests vast amounts of time into hardware & software for these products, which are all open-source. Please support future development by buying one of our products.

Check license details in the LICENSE file. Long story short, use these open-source files for any purpose you want to, as long as you apply the same open-source licence to it and disclose the original source. No warranty - all designs in this repository are distributed in the hope that they will be useful, but without any warranty. They are provided "AS IS", therefore without warranty of any kind, either expressed or implied. The entire quality and performance of what you do with the contents of this repository are your responsibility. In no event, Soldered (TAVU) will be liable for your damages, losses, including any general, special, incidental or consequential damage arising out of the use or inability to use the contents of this repository.

Have fun!

And thank you from your fellow makers at Soldered Electronics.

About

Arduino Library for the Soldered ADS-B 1090MHz Receiver with ESP32-S3 board, which uses the Aerobits TT-SC1b ADS-B module

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages