Commit Graph
25 Commits
Author SHA1 Message Date
agessamanandClaude Opus 4.8 643a1ba41b build.sh: put the published build number in observer asset filenames
Stamp FIRMWARE_BUILD_NUMBER into FIRMWARE_VERSION_STRING (the output
filename), so production assets become <env>-v1.16.0.N-<hash>.bin and the
web flasher's Version dropdown (parsed from the asset name by the /releases
Worker) shows the true published build instead of the bare base version.

The build-number suffix is computed once, up front, and now feeds BOTH the
filename and the embedded -DFIRMWARE_VERSION (byte-for-byte unchanged, it
already carried .N). Local builds without the counter still produce
3-segment names, so OTA and every filename parser stay backward-compatible.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-22 11:29:54 -07:00
agessaman 125ddac184 feat(ota): add partition-table signature handling for OTA updates
Implemented functionality to generate and compare partition-table
signatures during OTA updates. This enhancement ensures that the
target build's partition layout matches the device's actual layout,
improving the reliability of OTA updates and preventing issues
related to partition changes.
2026-06-23 15:38:10 -07:00
agessaman 730eb37dbd feat(ota): implement build number suffix for firmware versioning
Enhanced the firmware versioning system by appending a build number
suffix when available, allowing for better tracking of published builds.
This change improves the OTA update process by providing clearer
versioning information in the embedded firmware string.
2026-06-23 12:55:07 -07:00
agessaman 004d308ea9 feat(ota): implement pull-based OTA from manifest for observer builds
Added functionality to support pull-based OTA updates by fetching firmware
from a manifest. The new `otaFromManifest` method allows the system to
check for available updates and flash the firmware if necessary. This
enhancement improves the update process for observer builds using the
MQTT bridge, ensuring a more seamless firmware management experience.
2026-06-21 11:57:05 -07:00
agessaman b45373a31f Update firmware build date format and enhance MQTT timestamp handling to always emit UTC with "+00:00" offset. Adjusted buffer sizes for timestamps in MQTTMessageBuilder and MQTTBridge to accommodate new format. 2026-06-06 20:29:52 -07:00
agessaman bf8a3a7a41 Refactor build script to improve project configuration handling and artifact management. Cache project config JSON for environment platform checks, streamline binary merging for ESP32, and ensure all generated artifacts are copied to the output folder. Enhance error handling during binary generation processes. 2026-03-21 08:20:41 -07:00
taco 5df139f3d6 update build.sh to support RP2040 and STM32 2026-02-13 12:43:04 +11:00
Thane Gill 3ff1394dd2 build.sh: add list and -l to list firmwares available to build. 2026-02-08 14:49:57 -08:00
liquidraver a48b185189 DISABLE_DEBUG=1 env variable to build.sh 2026-01-13 12:48:53 +01:00
Devin Carraway d0caa3be04 Fix the sample RAK repeater build target name
The actual target doesn't capitalize the 'r' in repeater.
2025-10-31 22:11:24 -07:00
haxwithaxe 006af52776 Added more polished build.sh usage 2025-10-17 14:20:55 -04:00
Scott Powell 3335b49d9f Merge branch 'main' into dev
# Conflicts:
#	variants/heltec_vision_master_e290/platformio.ini
2025-09-28 19:21:48 +10:00
liamcottle 58ed14d971 build script should check for firmware type suffix 2025-09-28 15:00:45 +13:00
liamcottle e49eef5588 allow building multiple specific targets at same time 2025-09-26 22:59:20 +12:00
liamcottle 3fbdaf7ce6 don't overwrite existing platformio build flags in build script 2025-09-26 22:46:38 +12:00
Wesley Ellis 19fb7aae63 Use python3 not python in build.sh
Since the bin/uf2conv/uf2conf.py script uses python3, use python3 as the command instead of python.
On my ubuntu 24.04 machine, I don't have a python command in my path by default
2025-09-16 18:15:14 -04:00
kelsey hudson 022bfc4f4b Ikoka Stick: Use new UI, make repeater & room server work
* Enable the new UI on the BLE and USB Companion roles.
* Fix compilation issues with the repeater and room server roles.
* Remove ESP32-related alternate pinout cruft from the NRF build tree.
* build.sh: add build-matching-firmwares command to allow e.g. building
  all roles for a given variant by passing the variant name.
2025-08-16 15:09:42 -07:00
recrof 4f2aaa47d3 detect if we have nrf52 by probing for *.zip and *.hex output files 2025-04-27 10:24:38 +02:00
Scott Powell a9dde51a9b * build.sh: .uf2 step also for Faketec/ProMicro targets 2025-03-19 20:22:46 +11:00
Rastislav Vysoky 477f2e1d81 fix: added t114 and t-echo boards to uf2conv release workflow 2025-03-07 13:17:46 +01:00
Scott Powell 7832548714 * now suppressing 'cp' errors 2025-03-05 19:20:28 +11:00
Scott Powell 7b92e045a6 * build script change, for companion radio targets 2025-03-04 14:06:03 +11:00
liamcottle d48bc3a2f1 also build uf2 for t1000e 2025-03-03 21:13:55 +13:00
liamcottle 8a360bcc30 merge bins for esp32 boards 2025-03-03 18:51:27 +13:00
liamcottle 13bc6e4178 setup automated firmware builds with github actions 2025-03-03 17:58:15 +13:00