Meshtastic device firmware
Go to file
Tom Fifield 5f8503c62d
We don't gotTime if time is 2019. (#7772)
There are certain GPS chips that have a hard-coded time in firmware
that they will return before lock. We set our own hard-coded time,
BUILD_EPOCH, that should be newer and use the comparison to not set
a bad time.

In https://github.com/meshtastic/firmware/pull/7261 we introduced
the RTCSetResult and improved it in https://github.com/meshtastic/firmware/pull/7375 .

However, the original try-fix left logic in GPS.cpp that could
still result in broadcasting the bad time.

Further, as part of our fix we cleared the GPS buffer if we didn't
get a good time. The mesh was hurting at the time, so this was a reasonable
approach. However, given time tends to come in when we're trying to get
early lock, this had the potential side effect of throwing away valuable
information to get position lock.

This change reverses the clearBuffer and changes the logic so if time
is not set it will not be broadcast.

Fixes https://github.com/meshtastic/firmware/issues/7771
Fixes https://github.com/meshtastic/firmware/issues/7750
2025-08-29 09:08:33 -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 Disable for now 2025-08-19 11:30:19 -05:00
.trunk Upgrade trunk (#7677) 2025-08-26 06:31:38 -05:00
.vscode Update device-install scripts (#6267) 2025-03-09 06:43:16 -05:00
arch Update caveman99-stm32-Crypto digest to 1aa30eb (#7725) 2025-08-23 06:48:57 -05:00
bin Automated version bumps 2025-08-28 10:33:30 +00:00
boards Mesh solar integrate (#7764) 2025-08-27 06:02:54 -05:00
branding Add customizable boot logo based on resolution (#7146) 2025-07-02 11:53:12 -07:00
data/static
debian Automated version bumps 2025-08-28 10:33:30 +00: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@8985852d75 Update protobufs (#7693) 2025-08-20 05:53:20 -05:00
release
src We don't gotTime if time is 2019. (#7772) 2025-08-29 09:08:33 -05:00
test Add more test case for encrypted packet test 2025-08-25 23:35:03 +08:00
variants Merge pull request #7773 from meshtastic/master 2025-08-27 20:53:55 -05:00
.dockerignore Initial commit of a fuzzer for Meshtastic (#5790) 2025-01-16 18:42:21 -06:00
.env.example
.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
CONTRIBUTING.md
docker-compose.yml
Dockerfile Docker: fix web assets location (#7683) 2025-08-19 14:06:43 -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 a3e0e1b (#7766) 2025-08-27 13:53:34 -05:00
pyocd.yaml
README.md Update README.md 2025-06-19 20:35:40 -05:00
renovate.json Renovate: Always use master as the base. (#7726) 2025-08-23 10:41:57 -05: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 version bumps 2025-08-28 10:33:30 +00: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