Meshtastic device firmware
Go to file
Jeremiah K 56e67cb434
Fix position exchange throttling issue (#7079)
* Fix position exchange throttling race condition

Separate tracking of position broadcasts vs replies to fix exchange position functionality.

Previously, allocReply() would refuse to send position replies if any position packet
(broadcast or reply) was sent within the last 3 minutes. This caused the exchange
position feature to fail when a device had recently sent a position broadcast.

Changes:
- Add lastSentReply member to track position reply timestamps separately
- Update allocReply() to only throttle based on previous replies, not broadcasts
- This allows position exchange to work even after recent position broadcasts

The fix maintains the 3-minute throttling for replies to prevent spam while allowing
legitimate position exchange functionality to work properly.

* Remove unused lastSentToMesh variable

Variable was no longer used after separating reply throttling logic.
2025-06-19 18:20:20 -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 Run daily packaging earlier (PPA) (#7057) 2025-06-16 07:52:20 -05:00
.trunk Upgrade trunk (#7060) 2025-06-18 06:20:10 -05:00
.vscode Update device-install scripts (#6267) 2025-03-09 06:43:16 -05:00
arch chore(deps): update platform-native digest to 681ee02 (#7022) 2025-06-12 05:55:51 -05:00
bin automated bumps (#7050) 2025-06-16 06:11:10 -05:00
boards Trunk 2025-06-15 07:40:45 -05:00
data/static Bundle WebUI (#878) 2021-10-09 17:15:12 +11:00
debian automated bumps (#7050) 2025-06-16 06:11:10 -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@c758376d04 [create-pull-request] automated change (#7043) 2025-06-15 06:45:00 -05:00
release Cleans up visibility in GPS.h (#5426) 2024-11-23 06:10:09 -06:00
src Fix position exchange throttling issue (#7079) 2025-06-19 18:20:20 -05:00
test Added map report precision bounds (#6862) 2025-05-22 20:33:46 -05:00
variants trunk fmt 2025-06-16 16:16:14 -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 ignore platformio core files when building in place 2025-01-22 14:11:58 +01: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 chore(deps): update meshtastic/device-ui digest to 301f11e (#7042) 2025-06-15 06:14:53 -05:00
pyocd.yaml Add semihosting support for nrf52 devices (#4137) 2024-06-24 10:27:37 -05:00
README.md update readme add logo image (#6088) 2025-02-18 15:56:13 -06: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 Cpp-check warnings cleanup (#3014) 2023-12-14 07:35:46 -06:00
userPrefs.jsonc Validate short and long names so whitespace or empty names cannot be used (#6993) 2025-06-12 19:58:15 -05:00
version.properties automated bumps (#7050) 2025-06-16 06:11:10 -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