mirror of
https://github.com/meshtastic/firmware.git
synced 2026-09-16 00:10:11 -04:00
4aa73bf4eab829fc802ad706917ee8d6f3d8ccea
TRANSPORT_BLE_ADV and BLE_BROADCAST were hand-written into the generated nanopb headers because nanopb was not available here. They are now produced by the generator, so a future regen extends them rather than silently reverting them. Toolchain: nixpkgs supplies protoc and PyPI the generator, pinned to 0.4.9.1 - the version the checked-in headers name, not the 0.4.9 bin/regen-protos.sh's message says. Two shims under nanopb-0.4.9/generator-bin/ pair them so that script runs unmodified; the directory is already gitignored. Validated before trusting it: a regen against the unmodified submodule changed only the two files carrying the hand-edits and left every other generated file byte-identical. config.pb.h then came back from the real regen identical to what had been written by hand, which is a decent check on both. Two things surfaced that are worth knowing. The submodule pointer is behind the protobufs the checked-in headers were generated from - regenerating at the pinned commit *removes* doc comments that are in the tree - so this bumps it to the commit carrying the enum change. And the remaining churn in mesh.pb.h is hyphens becoming em-dashes in an unrelated comment block, which is drift the submodule bump brings in rather than anything this change does. The bump points at a protobufs commit that exists only locally (spike/ble-mesh-transport). That has to land upstream before this branch is pushable by anyone else. heltec-v3 builds; test_ble_mesh 13/13. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Overview
This repository contains the official device firmware for Meshtastic, an open-source LoRa mesh networking project designed for long-range, low-power communication without relying on internet or cellular infrastructure. The firmware supports various hardware platforms, including ESP32, nRF52, RP2040/RP2350, and Linux-based devices.
Meshtastic enables text messaging, location sharing, and telemetry over a decentralized mesh network, making it ideal for outdoor adventures, emergency preparedness, and remote operations.
Get Started
- 🔧 Building Instructions - Learn how to compile the firmware from source.
- ⚡ Flashing Instructions - Install or update the firmware on your device.
Join our community and help improve Meshtastic! 🚀
Stats
Languages
C++
72.7%
C
23.1%
Python
2.1%
Shell
1.5%
Batchfile
0.2%
Other
0.2%
