microReticulumTbeam/exercises/08_SystemStartup
2026-02-16 18:18:32 -08:00
..
lib exercises: add Exercise 08 SystemStartup scaffold with early SPI deselect and SD/OLED startup orchestration 2026-02-16 18:18:32 -08:00
src exercises: add Exercise 08 SystemStartup scaffold with early SPI deselect and SD/OLED startup orchestration 2026-02-16 18:18:32 -08:00
platformio.ini exercises: add Exercise 08 SystemStartup scaffold with early SPI deselect and SD/OLED startup orchestration 2026-02-16 18:18:32 -08:00
README.md exercises: add Exercise 08 SystemStartup scaffold with early SPI deselect and SD/OLED startup orchestration 2026-02-16 18:18:32 -08:00

Exercise 08: SystemStartup Package Scaffold

This exercise starts a reusable SystemStartup package that is intended to be shared by future exercises and field firmware.

Current package responsibilities:

  1. Initialize OLED and show boot/status messages.
  2. Initialize SD startup watcher.
  3. Keep SD monitoring active in loop() with a single call.

Current integration pattern:

#include "SystemStartup.h"

static SystemStartup g_systemStartup(Serial);

void setup() {
  Serial.begin(115200);
  g_systemStartup.begin();
}

void loop() {
  g_systemStartup.update();
  delay(10);
}

This is the foundation for adding more startup subsystems (RTC sync/check, etc.) behind the same begin()/update() API.

Build

source /home/jlpoole/rnsenv/bin/activate
pio run -e node_a

Upload

source /home/jlpoole/rnsenv/bin/activate
pio run -e node_a -t upload --upload-port /dev/ttyACM0