Commit Graph
10148 Commits
Author SHA1 Message Date
ford-jones a31fdf01ce Decouple protobuf changes 2025-09-11 22:23:42 +12:00
ford-jones 1594421214 Rebase protos 2025-09-11 21:49:25 +12:00
ford-jones 02cb306bb1 Merge branch 'develop' into 7943-mute-target 2025-09-11 19:59:38 +12:00
ford-jones 6b7ad9c4e1 Added mute state to nodedb entries 2025-09-11 17:32:12 +12:00
ford-jones fa1ccf4779 Create node-mute toggle functions 2025-09-11 17:30:59 +12:00
ford-jones 67ecb60bcd Added mute state to channel settings 2025-09-11 14:18:00 +12:00
ford-jones 9da92626e5 Create channel-mute toggle function 2025-09-11 14:16:48 +12:00
AustinandGitHub 6f7149e9a2 PPA: Enable Ubuntu 25.10 (questing) (#7940) 2025-09-10 07:01:04 +10:00
AustinandGitHub 95dc61f57b Debian: Correctly generate changelog entries (#7945) 2025-09-10 06:59:43 +10:00
AustinandGitHub 0aa48c9c22 Use sh in debhelper scripts (#7941) 2025-09-10 06:57:36 +10:00
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 MeadorsandGitHub 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
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 MeadorsandGitHub 1643249db7 Revert "Remove board_level from Meshtiny. (#7933)" (#7935)
This reverts commit 2191fe465c.
2025-09-09 05:48:05 -05:00
WilsonandGitHub 2191fe465c Remove board_level from Meshtiny. (#7933) 2025-09-09 14:20:24 +08:00
Ben MeadorsandGitHub 803e96800e ATAK module should be disabled for non-TAK roles (#7928) 2025-09-08 17:21:55 -05:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
6c69780615 chore(deps): update meshtastic/device-ui digest to 3677476 (#7925)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-08 16:52:21 -05:00
Tom FifieldandBen Meadors d5bb566276 Only log good times. (It's not always a good time then) (#7904)
Further to https://github.com/meshtastic/firmware/pull/7897 ,
there was another log line that was triggering indiscriminantly on
GPS_INTERVAL_THRESHOLD .

Rather than logging a bad time 4000 times, let's just log one good time
when it is set.
2025-09-08 05:59:37 -05:00
Ben MeadorsandGitHub 569a911455 Merge pull request #7915 from meshtastic/master
Master backmerge
2025-09-08 05:58:00 -05:00
ManuelandGitHub 39ff880506 reorganize 8MB partition for MUI devices (#7860)
* reorganize 8MB partition for MUI devices

* update device-install scripts to MUI 8MB partition scheme
2025-09-08 05:56:47 -05:00
Tom FifieldandGitHub c5b95f5a4b Disable web server on Picomputer (#7907)
Meshtastic no longer fits on the flash of the Picomputer.

Since this is a handheld, portable device, it's unlikely that people are
connecting to it via the webserver. So, disable the webserver and it fits
again:

```
Checking size .pio/build/picomputer-s3-tft/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [===       ]  32.4% (used 106056 bytes from 327680 bytes)
Flash: [==========]  99.1% (used 3313913 bytes from 3342336 bytes)
```

Fixes: https://github.com/meshtastic/firmware/issues/7906
2025-09-08 05:56:19 -05:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
209157c9dd chore(deps): update meshtastic/device-ui digest to 233d18e (#7890)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-08 05:55:44 -05:00
Tom FifieldandGitHub 15f4aebcd5 Fix build error in rak_wismesh_tap_v2 (#7905)
In the logs was:
"No screen resolution defined in build_flags. Please define DISPLAY_SIZE."

set according to similar devices.
2025-09-08 05:54:08 -05:00
Tom FifieldandGitHub 2354c52b16 Only log good times. (It's not always a good time then) (#7904)
Further to https://github.com/meshtastic/firmware/pull/7897 ,
there was another log line that was triggering indiscriminantly on
GPS_INTERVAL_THRESHOLD .

Rather than logging a bad time 4000 times, let's just log one good time
when it is set.
2025-09-08 05:53:49 -05:00
ManuelandGitHub fb59d68edd fix uninitialized kbchar (#7889) 2025-09-08 05:45:11 -05:00
Tom FifieldandGitHub 227d0fa7dc Merge pull request #7862 from meshtastic/master
Backmerge from Master into develop
2025-09-08 11:23:22 +10:00
7b854fb5ca Update protobufs (#7903)
Co-authored-by: fifieldt <1287116+fifieldt@users.noreply.github.com>
2025-09-08 11:12:52 +10:00
Tom FifieldGitHubgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>thebentern
7c1eff54fb Update protobufs (#7901)
* Update protobufs

* Update protobufs (#7831)

Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>
2025-09-08 11:05:19 +10:00
Tom FifieldandGitHub f8b160595f Fix merge conflict with test changes (#7902)
https://github.com/meshtastic/firmware/pull/7862/commits/289f90bdbec72096ce9fb99eaf5587827245126a

merged a commit that relied on

https://github.com/meshtastic/firmware/commit/5b9db81819f45b625683047c3b78bfece8d23b2e

but the latter commit was not merged.

This does manual wrangling to make sure the same file that exists on develop
right now ends up on master.
2025-09-08 11:02:29 +10:00
Tom FifieldGitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>Marco Veneziano
c92fa6aa8a chore(deps): update meshtastic/device-ui digest to a04bc94 (#7857) (#7900)
* chore(deps): update meshtastic/device-ui digest to a04bc94 (#7857)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Fix INA3221 higher current wrong readings (#7607)

* chore(deps): update meshtastic/device-ui digest to 10f0244 (#7840)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* use branch of ina3221 library with fixes

* using commit hash instead of branch name

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Marco Veneziano <macvenez@gmail.com>
2025-09-08 10:31:33 +10:00
Tom FifieldandGitHub 77acbc6814 Add EPOCH_BUILD to latest setup step. (#7894)
Previously this was in setup-base. However, setup-base is no longer
used by the setup job.

Fixes https://github.com/meshtastic/gh-action-firmware/issues/10
Fixes https://github.com/meshtastic/firmware/issues/7888
2025-09-07 19:29:40 -05:00
Tom FifieldandGitHub 81cb1e427f Guard bad time warning logs using GPS_DEBUG (#7897)
In 2.7.7 / 2.7.8 we introduced some new checks for time accuracy.

In combination, these result in a spamming of the logs when a bad time is found

When the GPS is active, we're calling the GPS thread every 0.2secs.

So this log could be printed 4,500 times in a no-lock scenario :)

Reserve this experience for developers using GPS_DEBUG.

Fixes https://github.com/meshtastic/firmware/issues/7896
2025-09-07 19:29:26 -05:00
Tom FifieldandGitHub f6ba9604a7 Trunk fix (#7898) 2025-09-08 09:46:26 +10:00
Dmitry DubininandGitHub 9c6544ebfa Fix excluded modules configuration handling (#7838)
* Fix excluded modules configuration handling

- Add excluded_modules flags in getDeviceMetadata() for MQTT, PAXCOUNTER, STOREFORWARD, RANGETEST, NEIGHBORINFO
- Add conditional compilation guards in AdminModule for RANGETEST, AUDIO, PAXCOUNTER, STOREFORWARD, EXTNOTIF, DETECTIONSENSOR, AMBIENTLIGHTING
- Add skip logic in PhoneAPI for excluded modules during config enumeration
- Add conditional has_* flags in NodeDB only for included modules

Fixes issue where excluded modules still appeared in client applications and sometimes caused PAYLOADVARIANT_NOT_SET errors.

* Fix excluded modules issues and refactor code

- Restore original PAXCOUNTER logic: only exclude on non-ESP32 platforms due to memory constraints
- Fix has_store_forward flag to be conditionally compiled based on MESHTASTIC_EXCLUDE_STOREFORWARD
- Refactor PhoneAPI module config skipping logic to use helper function skipExcludedModuleConfig()
- Reduce code duplication in PhoneAPI by extracting common skip logic

This addresses the three issues identified in the code review:
1. PAXCOUNTER memory impact on non-ESP32 devices
2. Unconditional has_store_forward flag setting
3. Duplicated state management logic across multiple #else blocks

* Fix ambient lighting module exclusion in PhoneAPI and AdminModule

- Add conditional compilation guards for ambient lighting in PhoneAPI.cpp
- Replace old HAS_RGB_LED logic with MESHTASTIC_EXCLUDE_AMBIENTLIGHTING check in AdminModule.cpp
- Ensure ambient lighting module is properly excluded when MESHTASTIC_EXCLUDE_AMBIENTLIGHTING=1
2025-09-08 07:15:27 +10:00
Jason PandGitHub b6eeccadeb Show GPS Date properly in drawCommonHeader (#7887)
* Commit good code that is sustainable

* Fix new build errors
2025-09-07 15:34:07 -04:00
HarukiToredaandBen Meadors 37d14f942e Reverting changes made by PR #7520 and adjusting ADC (#7878)
* ADC value adjustment for T114
2025-09-06 06:26:08 -05:00
GUVWAFandGitHub 4594ae474e Upon receiving ACK/reply directly, only update next-hop if we’re the *sole* relayer (#7859) 2025-09-06 06:23:43 -05:00
Jeremiah KandGitHub f26e657577 Fix esptool detection and baud rate issues in Windows batch scripts (#7856)
- Fix esptool detection to use 'version' subcommand instead of no arguments
- Fix device-update.bat to use 115200 bps for flashing, 1200 bps only for reset
- Add missing closing quotes in debug messages

Replace magic numbers with named constants for better maintainability

- Add RESET_BAUD=1200 constant for reset baud rate
- Add UPDATE_OFFSET=0x10000 constant for update flash offset
- Use constants instead of hardcoded values throughout script

Extract magic numbers to constants in shell scripts for consistency

- Add FLASH_BAUD, RESET_BAUD, UPDATE_OFFSET constants to device-update.sh
- Add RESET_BAUD, FIRMWARE_OFFSET constants to device-install.sh
- Replace hardcoded values with named constants throughout
- Maintain consistency with batch script improvements

Fix Python path quoting and remove unreachable code

- Quote Python interpreter paths to handle spaces in paths like 'C:\Program Files\Python\python.exe'
- Remove unreachable GOTO statements after EXIT /B commands
- Improve robustness when custom Python interpreters are specified

Fix esptool detection for pipx installations

- Change from checking ERRORLEVEL GEQ 2 to EQU 9009
- Pipx-installed esptool returns exit code 2 when showing help (normal)
- Only treat Windows 'command not found' error (9009) as truly not found
- Add debug output to show actual exit codes for troubleshooting
2025-09-06 06:20:57 -05:00
HarukiToredaandGitHub e7b7479589 Reverting changes made by PR #7520 and adjusting ADC (#7878)
* ADC value adjustment for T114
2025-09-06 19:14:26 +10:00
Jason PandGitHub e1634076f2 Fix date display to be upper right bound (#7876) 2025-09-05 22:21:33 -05:00
HarukiToredaandGitHub d6df664102 Phone GPS display on Position Screen for BaseUI (#7875)
* Phone GPS display on Position Screen

This is a PR to show when a phone shares GPS location with the node so you can reliably know what coordinate is being shared with the Mesh.
2025-09-05 22:06:58 -05:00
Jason PandGitHub 50a5b36498 BaseUI Updates (#7787)
* Account for low resolution wide screen OLEDs

* Allow picking of Device Role and new Display Formatter for Device Role

* Add remainder of client roles to display formatter

* Don't update the role unless you pick a value

* Mascots are fun

* Fix warnings during compile time

* Improve some menus

* Mascots need to work everywhere

* Update Chirpy image

* Fix Trunk

* Update protobufs

* Add date to Clock screen

* Analog clocks love dates too

* Finalize date moves for analog clock
2025-09-05 21:44:32 -04:00
GUVWAFandBen Meadors a25bfd264c Only stop retransmissions when receiving implicit ACK over LoRa (#7872)
* Only stop retransmissions when receiving implicit ACK over LoRa

* trunk fmt
2025-09-05 12:00:23 -05:00
GUVWAFandGitHub 4d6fe936ae Only stop retransmissions when receiving implicit ACK over LoRa (#7872)
* Only stop retransmissions when receiving implicit ACK over LoRa

* trunk fmt
2025-09-05 11:01:25 -05:00
ManuelandGitHub ec9f3fa6ea T-Lora Pager: fix keyboard and improve rotary wheel haptic (#7869)
* update RotaryEncoder: use interrupts

* increase rotary encoder processing interval

* remove disabling peripherals during LS
2025-09-05 07:42:51 -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
f825e61b89 Add a new GPS model CM121. (#7852)
* Add a new GPS model CM121.

* Add CM121 to Unicore.

* Trunk fixes, remove unneded NMEA lines

---------

Co-authored-by: Tom Fifield <tom@tomfifield.net>
2025-09-05 19:29:53 +10:00