# microReticulum Firmware Migration Plan ## Objective Migrate this project from the current submodule: - `external/microReticulum` to: - `external/microReticulum_Firmware` so this repo consumes existing T-Beam SUPREME integration instead of duplicating it. ## Current State - `.gitmodules` currently declares `external/microReticulum`. - `.gitmodules` now also declares `external/microReticulum_Firmware`: - URL: `https://github.com/attermann/microReticulum_Firmware` - Current commit: `5dc607fc7227c46ccb19244e456782fbb7775eae` - Exercises under `exercises/` are self-contained and currently compile independently. ## Planned Migration Steps 1. Add the new submodule at `external/microReticulum_Firmware`. 2. Keep `external/microReticulum` temporarily for side-by-side validation. 3. Inventory reusable components from `microReticulum_Firmware`: - board init / PMU power sequencing - LoRa interface setup - SD/RTC/GPS integration glue 4. Refactor local firmware entry points to call upstream components where possible. 5. Update exercise docs to distinguish: - hardware smoke tests (local exercises) - integration paths (from `microReticulum_Firmware`) 6. After parity validation, remove or archive `external/microReticulum`. Step-2 inventory output: - `docs/microreticulum_firmware_step2_adoption_matrix.md` ## Validation Checklist - Build passes for all key exercises. - SD/RTC/GPS startup behavior remains stable. - LoRa send/receive smoke tests still pass. - Fieldtest beacon path compiles and boots. ## Submodule Commands Used ```bash git submodule add https://github.com/attermann/microReticulum_Firmware external/microReticulum_Firmware git submodule update --init --recursive ```