Commit Graph
100 Commits
Author SHA1 Message Date
Ben Meadors 088318512a Duplicate 2025-09-09 11:20:27 -05:00
Ben Meadors ca4b98f2b1 Merge branch 'master' into develop 2025-09-09 08:42:29 -05:00
Ben Meadors d1d16fc25f Make phone queues use a static pointer queue (#7919)
* Make phone queues use a static pointer queue

* Static init

* Compile time constants now

* Instead, lets just use the normal pointerqueue for linux native builds and static for IoT platforms

* Add missing method

* Missing methods

* Update variant.h
2025-09-09 08:21:46 -05:00
Ben MeadorsandCopilot c8afbe68b5 Use char buffer for probeResponse (#7870)
* Use char buffer for probeResponse

* \Update src/gps/GPS.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Revert "\Update src/gps/GPS.cpp"

This reverts commit 54d64e19f710c2971347507bff5e506b2209602f.

* Remove string

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-09 06:34:38 -05:00
Ben Meadors 1643249db7 Revert "Remove board_level from Meshtiny. (#7933)" (#7935)
This reverts commit 2191fe465c.
2025-09-09 05:48:05 -05:00
Ben Meadors 803e96800e ATAK module should be disabled for non-TAK roles (#7928) 2025-09-08 17:21:55 -05:00
Ben Meadors 569a911455 Merge pull request #7915 from meshtastic/master
Master backmerge
2025-09-08 05:58:00 -05:00
Ben Meadors 8356ad97e4 Cleanup file list 2025-09-05 07:18:29 -05:00
Ben Meadors bf51c38975 Don't add heap allocations while debugging the heap 2025-09-05 07:18:03 -05:00
Ben Meadors 3df3c876cc TFTDisplay destructor 2025-09-05 06:22:21 -05:00
Ben Meadors 68f07c5f9d Board extras 2025-09-04 18:39:02 -05:00
Ben Meadors 789c1ab59d Merge branch 'master' into develop 2025-09-03 07:02:05 -05:00
Ben Meadors 655c6b51fe Try-fix Cardkb detection (#7825)
* Try-fix: CardKB detection regression

* Correct macro
2025-09-02 09:50:15 -05:00
Ben Meadors 3b82d55176 Revert "Add gat562_mesh_tracker_pro device. (#7815)" (#7824)
This reverts commit 7d1300ab66.
2025-09-02 06:17:01 -05:00
Ben Meadors a0e14439cb Merge pull request #7785 from meshtastic/master
Backmerge
2025-08-29 13:59:19 -05:00
Ben Meadors 4e03df5ea7 Fix freetext hang (#7781)
* Fixed freetext hangs by adding canned modules back to self-sourced packets and transition to SENDING_ACTIVE state

* Update meshmodule handling
2025-08-29 12:09:22 -05:00
Ben MeadorsandTom Fifield 9b41131af8 Backmerge (#7782)
* Merge pull request #7777 from meshtastic/create-pull-request/bump-version

Bump release version

* Only send Neighbours if we have some to send. (#7493)

* 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.

* Include all the things

* AvOid memleak

* 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

---------

Co-authored-by: Tom Fifield <tom@tomfifield.net>
2025-08-29 10:31:55 -05:00
Ben Meadors 6c7cff7de2 Merge pull request #7777 from meshtastic/create-pull-request/bump-version
Bump release version
2025-08-28 06:04:37 -05:00
Ben Meadors 46f797c40d Merge pull request #7777 from meshtastic/create-pull-request/bump-version
Bump release version
2025-08-28 06:02:24 -05:00
Ben Meadors 8685436cbb Merge pull request #7773 from meshtastic/master
Backmerge
2025-08-27 20:53:55 -05:00
Ben Meadors 834c3c5cc2 Add this back in 2025-08-27 16:24:57 -05:00
Ben Meadors 25a19b49ad This one is not working yet 2025-08-27 15:18:26 -05:00
Ben Meadors a4d96bebfb Drop for now 2025-08-27 14:35:29 -05:00
Ben Meadors 26c38ffc8e Remove debug logging 2025-08-27 11:55:27 -05:00
Ben Meadors 237b8908f7 Chainsaw took too much off the top 2025-08-27 09:54:39 -05:00
Ben Meadors 06bccef462 Reinstitute previous streamapi readStream 2025-08-27 07:17:46 -05:00
Ben Meadors 3120bb8fd7 Fix check 2025-08-27 06:50:53 -05:00
0903ed8232 Mesh solar integrate (#7764)
* Added HELTEC MeshSolar board. (#7499)

* Added HELTEC MeshSolar board.

* Set emergency shutdown pin as high impedance

* Set emergency shutdown pin as high impedance

Set emergency shutdown pin as high impedance

* Update variants/nrf52840/heltec_mesh_solar/variant.h

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update variants/nrf52840/heltec_mesh_solar/variant.h

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update variants/nrf52840/heltec_mesh_solar/variant.h

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update I2C SCL pin definition in variant.h

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Updates

---------

Co-authored-by: Quency-D <55523105+Quency-D@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-08-27 06:02:54 -05:00
Ben Meadorsandtodd-herbert f8ba392a24 Add BaseUI support for L1 EInk (#7751)
* Add BaseUI support for L1 EInk

* Fix Eink offset

* Add joystick

* Updates

* Adjust Seeed Wio Tracker L1 E-Ink variant (#7326)

* Rename variant
Needs the -inkhud suffix to work correctly with the web flasher

* Display driver for ZJY122250_0213BAAMFGN

* Remove dead code from nicheGraphics.h
Remnants of T-Echo's nicheGraphics.h file, which was used as a template.

* Use ZJY122250_0213BAAMFGN driver
Improves display health. We don't need as many full refreshes now.

* Tidying

* board_check = true

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>

* Consolidation

* Add hack for existing InkHUD button functionality

---------

Co-authored-by: todd-herbert <herbert.todd@gmail.com>
2025-08-26 20:29:11 -05:00
Ben Meadors 3dd384dd53 Null check 2025-08-26 19:45:26 -05:00
Ben Meadors 67e3a17b28 Merge pull request #7745 from TN666/add-encrypted-packet-tests
Add more test case for encrypted packet test
2025-08-26 06:23:20 -05:00
Ben Meadors 24204feb71 Merge pull request #7747 from m1nl/esp32-pm-capabability-flags
Setup ESP32 PM-specific capability flags
2025-08-25 19:29:25 -05:00
Ben Meadors 4ace2638e1 Merge pull request #7718 from notmasteryet/err7info
Log more information about ignored packet
2025-08-25 14:29:24 -05:00
Ben Meadors f2ba7d7851 Merge pull request #7744 from meshtastic/master
Backmerge to develop
2025-08-25 06:58:05 -05:00
Ben Meadors 8b42bf7a95 Don't reboot when setting lora config with portduino sim radio (#7716) 2025-08-23 05:47:51 -05:00
Ben Meadorsandwhywilson 093a37a2b0 On screen keyboard (#7705)
* Add on-screen keyboard implementation on Trackball device.

* Update On-Screen Keyboard to new layout.

* The on-screen keyboard dynamically adjusts the key size based on the screen.

* Improve input box display on small screens.

* Optimize the virtual keyboard layout and cursor movement logic, and adjust the keyboard starting position for small and wide screens.

* Optimize the text alignment of numeric keys on ssd1306.

---------

Co-authored-by: whywilson <m.tools@qq.com>
2025-08-21 06:31:27 -05:00
Ben Meadors 1daf5aad1f Revert "Add on-screen keyboard implementation on Trackball device. (#7625)" (#7704)
This reverts commit fe3f14a63e.
2025-08-21 06:29:23 -05:00
Ben Meadors c19f573b49 Fix TLS port bug on default mqtt validation 2025-08-19 20:10:47 -05:00
Ben Meadors 5b62bbe8e6 Disable for now 2025-08-19 11:30:19 -05:00
Ben Meadors 1691e885f2 Display test results 2025-08-19 06:00:29 -05:00
Ben Meadors a02017a5c8 Remove JSON serialization from most NRF52 targets (#7640)
* Remove JSON serialization from most NRF52 targets

* Slin networking base down for NRF52 by removing syslog

* Update platformio.ini
2025-08-15 19:45:41 -05:00
Ben Meadors e1e89a5e62 Don't include OLED fonts for international character sets by default (#7639) 2025-08-15 09:03:21 -05:00
Ben Meadors a7be93449e Spacing 2025-08-15 09:00:09 -05:00
Ben Meadors c8694f9f2d Fix Tracerouter warnings (#7637)
* Static cast to avoid signed comparison

* Another one
2025-08-15 07:03:14 -05:00
Ben Meadors db238ef524 Log when this happened 2025-08-11 19:49:35 -05:00
Ben Meadors 7505fe7a7c Update device-ui deps 2025-08-09 10:38:09 -05:00
Ben Meadors f6857f1bcb Heartbeat has a nonce now 2025-08-09 10:17:08 -05:00
Ben Meadors c1f4f79d4a Revert "128row display (#7511)"
This reverts commit d1f3c3c982.
2025-08-09 06:11:56 -05:00
Ben Meadors 88655ffc44 Move BLE toggle menu option and add confirmation for canned messages in L1 (#7516)
* Move bluetooth to system menu and add confirmation for canned messages

* Cruft

* Handle else

* Warn

* Fixed screen reset
2025-07-31 07:34:41 -05:00
Ben Meadors 7d926da98c Heartbeat response (#7506)
* Heartbeat response

* Move it

* Add debug log for visibility
2025-07-30 07:40:27 -05:00
Ben Meadors cc5d00e211 Core portnums rebroadcast mode whitelist instead of blacklist (#7487) 2025-07-28 12:37:37 -05:00
Ben Meadors 1a8ab2aadc NodeDB count on MyNodeInfo for client progress reporting (#7489) 2025-07-28 12:23:59 -05:00
Ben Meadors 3ecff48722 Set firmware edition (for events) from userprefs (#7488)
* Set firmware edition (for events) from userprefs

* Spaces in the right places
2025-07-28 07:31:33 -05:00
Ben MeadorsandCopilot 28aeb0f09e Validate Serial config console override modes (#7470)
* Validate serial config console override modes

* Update src/modules/SerialModule.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Disable

* Guard serial module

* Guards

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-26 19:55:54 -05:00
a506dc6b65 Fix MQTT config bugs (#7446)
* Fix mqtt config bugs

* Apply suggestion from @Copilot

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Add client notification

* Verbiage

* Update src/mqtt/MQTT.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/mqtt/MQTT.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/mqtt/MQTT.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/mqtt/MQTT.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Remove test that is no longer true

* This test no longer exists

* Fix client notification crap

* Suppress false positive

* Revert "Suppress false positive"

This reverts commit bead96eaee31f11ed631c016eb0424055e923a29.

* Try macro exclusion

* Derp

* Fix

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Jason P <applewiz@mac.com>
2025-07-26 05:38:24 -05:00
Ben Meadors 8aef3c44f4 Text message rate limiting should return routing error instead (#7365)
* Text message rate limiting should return routing error instead

* Proper rooting

* Update PhoneAPI.cpp

* Update PhoneAPI.cpp
2025-07-20 20:12:10 -05:00
Ben Meadors 8345c21eff STM32 doesn't play 2025-07-20 20:02:32 -05:00
Ben Meadors cf574c71d8 Fix build 2025-07-18 09:24:34 -05:00
Ben Meadors 39716ed1ba Fix L1 EInk HWModel (#7346) 2025-07-14 21:14:07 -05:00
Ben Meadors 31d56c16d5 Map report should work over devices which do not have network hardware (with client proxy) (#7341)
* Map report should work over devices which do not have network hardware (with client proxy)

* Fix else
2025-07-14 20:13:34 -05:00
Ben Meadors 86af5f5252 Trunk 2025-07-14 05:44:29 -05:00
Ben Meadors 5ae8021aa6 I'm dumb 2025-07-11 08:28:21 -05:00
Ben Meadors 9798a91e7b Delete ringtone.proto file for factory reset (#7303) 2025-07-11 08:22:50 -05:00
Ben Meadors 354f149338 Make PacketHistory logging less chatty (#7272) 2025-07-08 15:12:44 -05:00
Ben Meadors 415dc4aa47 Try-fix: L76K spamming bad times can crash nodes (#7261)
* Try-fix: Clear GPS buffer when we encounter a bad time in NMEA

* Fix signed int warnings
2025-07-07 19:35:57 -05:00
Ben Meadors 798b1f4d86 Add HWIDs for T1000-E in DFU mode (#7235) 2025-07-05 07:35:20 -05:00
Ben Meadors 409dfe22ae Fix Seeed L1 board to enable consistent PIO flashing (#7211) 2025-07-02 20:58:15 -05:00
Ben Meadors 2ea70927c8 Revert "automated bumps (#7097)"
This reverts commit 4308bbc156.
2025-06-27 11:07:58 -05:00
Ben Meadors 2b97576b18 NRF52 BLE fixes / tweaks (#7152)
* Try-fix: Flaky NRF52 bluetooth pairing for some users

* Safe access for screen pointer
2025-06-27 06:26:34 -05:00
Ben Meadors 18fbc2149d Fix iOS bluetooth crash: Ensure UINT32_MAX is not used (#7147) 2025-06-26 19:23:08 -05:00
Ben Meadors e87c991975 Fixed triple click GPS toggle bungle 2025-06-26 11:19:54 -05:00
Ben Meadors 2ab717cebb Remove bundling of web-ui from ESP32 devices (#7143) 2025-06-26 10:57:33 -05:00
Ben MeadorsandCopilot ad23c065f6 Rate limiting fix and added 2 second rate limiting to text messages (#7139)
* Rate limiting fix and added 1.5 second rate limiting to text messages

* Remove copy-pasta

* Update src/mesh/Default.h

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Two is more reasonable

* Two too

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-26 07:56:34 -05:00
Ben Meadors 7512673b09 Do not beacon Device telemetry by default anymore (#7116)
* Do not beacon Device telemetry by default anymore

* Update

* Old default interval for sensor

* Added userpref

* Addd tracker to default telemetry roles

* Let the macro do its job in router mode
2025-06-25 16:36:33 -05:00
Ben Meadors 91bcf072a0 Tweak interval trottling (#7113) 2025-06-24 05:27:40 -05:00
Ben Meadors 2cf7e51061 Version bump the old fashion way 2025-06-20 20:55:57 -05:00
Ben Meadors 12680ad9cd Update README.md 2025-06-19 20:35:40 -05:00
Ben Meadors fcefd592e2 Update version.properties 2025-06-15 19:27:17 -05:00
Ben Meadors 8f9e569825 Create FUNDING.yml 2025-06-15 07:52:38 -05:00
Ben Meadors b0c5327585 Trunk 2025-06-15 07:40:45 -05:00
Ben Meadors ac52edd11a Add the ability to share ignored contacts (for blacklisting problematic nodes) (#7044) 2025-06-15 07:34:03 -05:00
Ben Meadors cc0fbfbd21 Fixed breaking of inkhud / tft suffix convention 2025-06-13 06:59:05 -05:00
Ben Meadors 68a28a177f Add elecrow panels to BIGDB_16MB 2025-06-11 16:11:32 -05:00
Ben Meadors 60ec05e536 elecrow-adv-35-tft 2025-06-11 10:54:08 -05:00
Ben Meadors 730cd388d6 Fix pio 2025-06-11 08:49:20 -05:00
Ben Meadors 6549b0477c Missed a spot 2025-06-11 06:10:34 -05:00
Ben Meadors 8304cae010 Fix issue with CI not picking up elecrow panels due to confusing env 2025-06-11 06:09:25 -05:00
Ben Meadors 0ad9758cfd Revert "chore(deps): update meshtastic/web to v2.6.4 (#6950)" (#7015)
This reverts commit 76f7207463.
2025-06-10 18:51:54 -05:00
Ben Meadors 7a7166d575 Revert "Add a new screen for heltec_wireless_paper. (#6894)" (#6918)
This reverts commit ba53543354.
2025-05-29 10:17:20 -05:00
Ben Meadors 7849a3d291 Trunk 2025-05-29 06:35:18 -05:00
Ben Meadors 42a80d8aed Coerce user.id to always be derive from the nodenum (#6906)
* Coerce user.id to always be derive from the nodenum

* Additionally null it out on send

* Revert "Additionally null it out on send"

This reverts commit 22a2d687237d9f49024bfb8641043cc8e99b32f0.
2025-05-28 11:30:59 -05:00
Ben Meadors 75a49d3486 Add heap metrics to Local stats (#6887) 2025-05-25 11:08:56 -05:00
Ben Meadors 2e72850d99 Fix is_unmessagable plumbing (#6886) 2025-05-25 07:24:28 -05:00
Ben Meadors beba1b4882 Added map report precision bounds (#6862)
* Added map report precision bounds

* Log warning

* Precision range should be 12-15

* Missed commit

* Update tests

* That method was renamed

* Removed now-defunct test call

* Remove defunct test
2025-05-22 20:33:46 -05:00
Ben MeadorsandCopilot 7cd50d7044 If a contact is add from a QR, it's "verified" manually (#6858)
* If a contact is add from a QR, it's "verified" manually

* Update src/mesh/NodeDB.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-22 07:40:36 -05:00
Ben Meadors 6041357cbb Increase the debt ceiling 2025-05-20 20:31:01 -05:00
Ben Meadors ef9d0d7805 Go 2025-05-14 20:22:01 -05:00
Ben Meadors 60d2cb35e0 Namespace 2025-05-14 18:55:27 -05:00
Ben Meadors b63b73ab84 Fix 2025-05-14 17:16:46 -05:00
Ben Meadors 3901ae8956 Default 2025-05-14 16:44:32 -05:00