Meshtastic device firmware
Go to file
Tom Fifield 4c901033b2
Some checks are pending
CI / setup (check) (push) Waiting to run
CI / setup (esp32) (push) Waiting to run
CI / setup (esp32c3) (push) Waiting to run
CI / setup (esp32c6) (push) Waiting to run
CI / setup (esp32s3) (push) Waiting to run
CI / setup (nrf52840) (push) Waiting to run
CI / setup (rp2040) (push) Waiting to run
CI / setup (rp2350) (push) Waiting to run
CI / setup (stm32) (push) Waiting to run
CI / version (push) Waiting to run
CI / check (push) Blocked by required conditions
CI / build-esp32 (push) Blocked by required conditions
CI / build-esp32s3 (push) Blocked by required conditions
CI / build-esp32c3 (push) Blocked by required conditions
CI / build-esp32c6 (push) Blocked by required conditions
CI / build-nrf52840 (push) Blocked by required conditions
CI / build-rp2040 (push) Blocked by required conditions
CI / build-rp2350 (push) Blocked by required conditions
CI / build-stm32 (push) Blocked by required conditions
CI / build-debian-src (push) Waiting to run
CI / package-pio-deps-native-tft (push) Waiting to run
CI / test-native (push) Waiting to run
CI / docker-deb-amd64 (push) Waiting to run
CI / docker-deb-amd64-tft (push) Waiting to run
CI / docker-alp-amd64 (push) Waiting to run
CI / docker-alp-amd64-tft (push) Waiting to run
CI / docker-deb-arm64 (push) Waiting to run
CI / docker-deb-armv7 (push) Waiting to run
CI / gather-artifacts (esp32) (push) Blocked by required conditions
CI / gather-artifacts (esp32c3) (push) Blocked by required conditions
CI / gather-artifacts (esp32c6) (push) Blocked by required conditions
CI / gather-artifacts (esp32s3) (push) Blocked by required conditions
CI / gather-artifacts (nrf52840) (push) Blocked by required conditions
CI / gather-artifacts (rp2040) (push) Blocked by required conditions
CI / gather-artifacts (rp2350) (push) Blocked by required conditions
CI / gather-artifacts (stm32) (push) Blocked by required conditions
CI / release-artifacts (push) Blocked by required conditions
CI / release-firmware (esp32) (push) Blocked by required conditions
CI / release-firmware (esp32c3) (push) Blocked by required conditions
CI / release-firmware (esp32c6) (push) Blocked by required conditions
CI / release-firmware (esp32s3) (push) Blocked by required conditions
CI / release-firmware (nrf52840) (push) Blocked by required conditions
CI / release-firmware (rp2040) (push) Blocked by required conditions
CI / release-firmware (rp2350) (push) Blocked by required conditions
CI / release-firmware (stm32) (push) Blocked by required conditions
CI / publish-firmware (push) Blocked by required conditions
Workaround Webserver needing to stay up while Wifi is turned off (#7484)
Expertly triaged by @philon- , turning off wifi using the HTTP API
did not work. That was because we only served the HTTP API if Wifi
was deemed to be available, but mid-way through turning it off Wifi
was still available, but the configuration we were checking said it wasn't.

This patch introduces an additional way the system can determine if Wifi
is available, by referring to the WiFi.status(). This means that in that
limbo state where Wifi has been set to be turned off, but the configuration
has not been saved and it is still up, the HTTP API will stay up long enough
to save the configuration.

Fixes https://github.com/meshtastic/firmware/issues/6965
2025-07-30 07:47:00 -05:00
.clusterfuzzlite Initial commit of a fuzzer for Meshtastic (#5790) 2025-01-16 18:42:21 -06:00
.devcontainer Add UDP multicast support on linux. (#6342) 2025-03-20 08:47:39 -05:00
.github Build RP2350 (Pi Pico 2) (#7441) 2025-07-25 22:25:50 +02:00
.trunk Upgrade trunk (#7420) 2025-07-22 06:22:07 -05:00
.vscode Update device-install scripts (#6267) 2025-03-09 06:43:16 -05:00
arch Renovate: Use github-tags for XPowersLib updates (#7411) 2025-07-21 14:04:46 -05:00
bin Build RP2350 (Pi Pico 2) (#7441) 2025-07-25 22:25:50 +02:00
boards T-Deck Pro support (#6936) 2025-07-21 19:33:24 +02:00
branding Add customizable boot logo based on resolution (#7146) 2025-07-02 11:53:12 -07:00
data/static Bundle WebUI (#878) 2021-10-09 17:15:12 +11:00
debian automated bumps (#7383) 2025-07-19 10:41:01 -05:00
extra_scripts implement littlefs for stm32 (#5987) 2025-03-21 16:12:27 +01:00
images No idea why trunk wants to disturb these PNGs but... 2024-10-08 05:34:41 -05:00
meshtestic@dcac7e5673 python3 ref 2024-09-24 15:24:08 -05:00
monitor More trunk junk / remove old workflows (#6153) 2025-02-27 09:43:01 +08:00
protobufs@1ecf94da98 Update protobufs (#7508) 2025-07-30 06:29:03 -05:00
release Cleans up visibility in GPS.h (#5426) 2024-11-23 06:10:09 -06:00
src Workaround Webserver needing to stay up while Wifi is turned off (#7484) 2025-07-30 07:47:00 -05:00
test [7353] Add all telemetry fields to json output (#7363) 2025-07-28 09:23:04 -05:00
variants Santa may be checking his list twice, but we only need this in the platformio.ini (#7490) 2025-07-28 09:47:46 -05:00
.dockerignore Initial commit of a fuzzer for Meshtastic (#5790) 2025-01-16 18:42:21 -06:00
.env.example meshtasticd-docker: simplify, add USB compose (#5662) 2024-12-26 12:59:26 -06:00
.gitattributes update gitattributes for windows (#6289) 2025-03-11 13:05:51 -05:00
.gitignore Add customizable boot logo based on resolution (#7146) 2025-07-02 11:53:12 -07:00
.gitmodules Consume device-ui as a pio library (#6193) 2025-03-05 16:19:59 -06:00
.gitpod.yml add a .yml to setup a Gitpod instance quickly (#4551) 2024-08-23 20:24:23 -05:00
.semgrepignore Fix de/compression buffer overflows in TAK packets (#4317) 2024-07-23 06:16:53 -05:00
alpine.Dockerfile Update Alpine to 3.22 (#6927) 2025-06-08 07:49:24 +10:00
CODE_OF_CONDUCT.md Trunk 2024-11-28 06:26:51 -06:00
CONTRIBUTING.md lol of course trunk fmt 2024-09-04 15:33:28 -07:00
docker-compose.yml meshtasticd-docker: simplify, add USB compose (#5662) 2024-12-26 12:59:26 -06:00
Dockerfile Stop the madness! Run as a user (not root) (#6718) 2025-05-15 06:40:46 -05:00
LICENSE move my bt experiment into its own repo (about to remove ttn) 2020-02-01 08:30:53 -08:00
meshtasticd.spec.rpkg Stop the madness! Run as a user (not root) (#6718) 2025-05-15 06:40:46 -05:00
partition-table.csv - new Bootloader for ESP-IDF 4.2 2022-09-26 22:42:58 +02:00
platformio.ini Update meshtastic/device-ui digest to c75d545 (#7435) 2025-07-23 07:46:34 -05:00
pyocd.yaml Add semihosting support for nrf52 devices (#4137) 2024-06-24 10:27:37 -05:00
README.md Update README.md 2025-06-19 20:35:40 -05:00
renovate.json chore(config): migrate renovate config (#6784) 2025-05-10 11:49:01 -04:00
rpkg.conf rpkg Fedora packaging (#5735) 2025-01-13 12:24:05 +08:00
SECURITY.md Update SECURITY.md (#6757) 2025-05-07 06:28:18 -05:00
suppressions.txt Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
userPrefs.jsonc Set firmware edition (for events) from userprefs (#7488) 2025-07-28 07:31:33 -05:00
version.properties automated bumps (#7383) 2025-07-19 10:41:01 -05:00

Meshtastic Logo

Meshtastic Firmware

GitHub release downloads CI CLA assistant Fiscal Contributors Vercel

meshtastic%2Ffirmware | Trendshift

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

Join our community and help improve Meshtastic! 🚀

Stats

Alt