Initial public release of WII5 Buoy firmware

Firmware for an autonomous wave-measurement buoy (ATmega2560-based
WII5 v2 board). Reads wave motion from a Sparton AHRS-M1/M2 IMU,
samples GPS and battery state, and reports back over Iridium SBD
satellite telemetry. Originally developed 2012-2024.

This is the first public release. Code, documentation, and field-tested
operating modes (Capture, Sleep, Position, ManualTest, SelfTest,
LowBattery) are licensed under Apache 2.0 — see LICENSE and NOTICE.

See README.md for an overview and build instructions, CONTRIBUTING.md
for how to contribute, and DEPLOYMENTS.md for the field-deployment log.
This commit is contained in:
2026-05-07 16:00:21 +10:00
commit 295abb37ee
122 changed files with 38142 additions and 0 deletions
+32
View File
@@ -0,0 +1,32 @@
#!/bin/bash
# SPDX-License-Identifier: Apache-2.0
# Copyright (c) 2012-2024 Scott Penrose <scottp@dd.com.au> and WII5 Buoy contributors
#
# This file is part of WII5 Buoy firmware.
# See LICENSE for full terms.
# Verify a single test sketch under test/<TEST>/<TEST>.ino.
# Configure with env vars:
: "${WII5_ARDUINO_BIN:=arduino}"
: "${WII5_BUILD_DIR:?set to your Arduino build dir}"
: "${WII5_FIRMWARE_REPO:?path to firmware-archive git repo}"
set -e
TEST=$1
[ -z "$TEST" ] && { echo "Usage: $0 <test-name>"; exit 1; }
echo "Building test/$TEST"
# TODO: Inject WII5_SOFTWARE_VERSION via --pref compiler.cpp.extra_flags
"$WII5_ARDUINO_BIN" \
--verify "test/$TEST/$TEST.ino" \
--board WII:avr:wii5_v2_2560_3V:cpu=atmega25603V3_11MHz230400
sleep 1
cp "$WII5_BUILD_DIR/$TEST.ino.hex" "$WII5_FIRMWARE_REPO/"
pushd "$WII5_FIRMWARE_REPO/"
git add "$TEST.ino.hex"
git commit -am "Auto build for TEST = $TEST"
git push
popd