Skip to content

mchadwick-iqt/satcom-modem-interface

 
 

Repository files navigation

SATCOM Modem Interface

SATCOM Modem Interface MCU for the SATCOM Relay

This repo contains the source code for the SATCOM Modem Interface components of the SATCOM Relay project. See the Relay repo for:

  • BOM
  • Wiring Diagram
  • RockBlock to Feather Adapter PCB

Arduino Environment Setup

MCU

Arduino Libraries for this Repo

  • IridiumSBDi2c by SparkFun Electronics (datasheet)
  • ArduinoJson by Benoit Blanchon

Operations

High-level "loop" Operations

  • sleep
  • wake on interrupt
  • receive message on SERCOM1 pins
  • save to SD card queue
  • send messages in queue over Iridium

SD Card Queueing

The MessageLog class implements a LIFO queue/stack with push(String) and pop() methods for storing and retrieving messages. Each MessageLog instance operates on a single underlying file, the name of which is passed in the constructor.

As messages are received they are push()ed onto the unsentMessageLog queue. When ready to send messages over Iridium, they are pop()ped from the unsentMessageLog queue, sent, and push()ed onto the sendMessageLog queue.

About

Modem Interface MCU for the SATCOM Relay

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 100.0%