Meshtastic device firmware
Go to file
Tom Fifield 04393e144c
Only send Neighbours if we have some to send.
The original intent of NeighborInfo was that when a NeighbourInfo
was sent all of the nodes that saw it would reply with NeighbourInfo.
So, NeighbourInfo was sent even if there were no hop-zero nodes in
the NodeDB.

Since 2023, when this was implemented, our understanding of running city-wide
meshes has improved substantially. We have taken steps to reduce the impact
of NeighborInfo over LoRa.

This change aligns with those ideas: we will now only send NeighborInfo
if we have some neighbors to contribute.

The impact of this change is that a node must first see another directly
connected node in another packet type before NeighborInfo is sent. This means
that a node with no neighbors is no longer able to trigger other nodes
to broadcast NeighborInfo. It will, however, receive the regular periodic
broadcast of NeighborInfo, and will be able to send NeighborInfo if it
has at least 1 neighbor.
2025-07-29 10:54:40 +10: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
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
meshtestic@dcac7e5673
monitor More trunk junk / remove old workflows (#6153) 2025-02-27 09:43:01 +08:00
protobufs@9bac2886f9 Update protobufs (#7473) 2025-07-26 16:21:49 -05:00
release Cleans up visibility in GPS.h (#5426) 2024-11-23 06:10:09 -06:00
src Only send Neighbours if we have some to send. 2025-07-29 10:54:40 +10:00
test Validate Serial config console override modes (#7470) 2025-07-26 19:55:54 -05:00
variants Rename Platformio.ini to platformio.ini (#7468) 2025-07-26 05:13:02 -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
.semgrepignore
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
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
meshtasticd.spec.rpkg Stop the madness! Run as a user (not root) (#6718) 2025-05-15 06:40:46 -05:00
partition-table.csv
platformio.ini Update meshtastic/device-ui digest to c75d545 (#7435) 2025-07-23 07:46:34 -05:00
pyocd.yaml
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 userPrefs: Set default ringtone nag time (#7314) 2025-07-12 16:26:25 -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