--- title: "WII5Firmware" source: pka-assess --- # WII5Firmware ## Purpose Firmware for an autonomous WII5 wave-measurement buoy on a custom ATmega2560 v2 board. Reads wave motion from a Sparton AHRS, samples GPS and battery, and reports over Iridium SBD. Runs a mode dispatcher (Capture, Position, Sleep, Manual/Self Test, Low Battery) coordinated by `WII5Controller`. ## Type C++ Arduino sketch for AVR (arduino-cli, not PlatformIO). `#embedded` `#firmware` `#iot` ## Dependencies - **External:** Sparton AHRS-M1/M2, Iridium 9602/9603 SBD, u-blox NEO-6M/7M, DS18B20, TinyGPSPlus, IridiumSBD, RTClib, TimeLib, OneWire, DallasTemperature, SDBlock, RadioHead, LowPower, AvgStd, CRC32, MemoryFree, PushButton, elapsedMillis ## Notable Apache-2.0 licensed. Lineage explicitly described as "WII5 = WII3 WDT + WII1 Buoy Combined". Build scripts in `tools/` are env-var parameterised; copy to `*.local.sh` for local defaults. LED blink-pattern table in README is field-diagnostic protocol — preserve meanings. Field deployments tracked in `DEPLOYMENTS.md`.