# 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
```
