Austin
25b8d9b0ca
ARCH_STM32*WL* macro fix ( #7397 )
CI / build-esp32-c3 (push) Blocked by required conditions
CI / build-esp32-c6 (push) Blocked by required conditions
CI / build-nrf52 (push) Blocked by required conditions
CI / build-rpi2040 (push) Blocked by required conditions
CI / build-stm32 (push) Blocked by required conditions
CI / build-debian-src (push) Waiting to run
CI / package-pio-deps-native-tft (push) Waiting to run
CI / test-native (push) Waiting to run
CI / docker-deb-amd64 (push) Waiting to run
CI / docker-deb-amd64-tft (push) Waiting to run
CI / docker-alp-amd64 (push) Waiting to run
CI / docker-alp-amd64-tft (push) Waiting to run
CI / docker-deb-arm64 (push) Waiting to run
CI / docker-deb-armv7 (push) Waiting to run
CI / gather-artifacts (esp32) (push) Blocked by required conditions
CI / gather-artifacts (esp32c3) (push) Blocked by required conditions
CI / gather-artifacts (esp32c6) (push) Blocked by required conditions
CI / gather-artifacts (esp32s3) (push) Blocked by required conditions
CI / gather-artifacts (nrf52840) (push) Blocked by required conditions
CI / gather-artifacts (rp2040) (push) Blocked by required conditions
CI / gather-artifacts (stm32) (push) Blocked by required conditions
CI / release-artifacts (push) Blocked by required conditions
CI / release-firmware (esp32) (push) Blocked by required conditions
CI / release-firmware (esp32c3) (push) Blocked by required conditions
CI / release-firmware (esp32c6) (push) Blocked by required conditions
CI / release-firmware (esp32s3) (push) Blocked by required conditions
CI / release-firmware (nrf52840) (push) Blocked by required conditions
CI / release-firmware (rp2040) (push) Blocked by required conditions
CI / release-firmware (stm32) (push) Blocked by required conditions
CI / publish-firmware (push) Blocked by required conditions
2025-07-20 23:30:52 -04: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
Jonathan Bennett
36b94cf823
Unify the shutdown proceedure ( #7393 )
...
* Unify the shutdown proceedure
* Don't double save nodeDB on shutdown
* Re-tool button shutdown to better correspond to tones
* Beep then save
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-07-20 18:53:40 -05:00
Thomas Göttgens
b851b15a73
fix UDP builds on nRF ( #7394 )
...
* fix UDP builds on nRF
* fix rp2040 too
2025-07-20 23:13:50 +02:00
github-actions[bot]
73347c2542
Update protobufs ( #7395 )
...
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>
2025-07-20 15:03:56 -05:00
Jason P
bc9023399d
Restore High Resolution Hour Hand ( #7392 )
...
* Restore High Resolution Hour Hand
* Drop the int16_t
2025-07-20 13:43:54 -05:00
Thomas Göttgens
a9c9b96eb6
UDP for RAK4631 Eth Gw and the t-eth-elite. Solves #7149 ( #7385 )
...
CI / build-esp32-c3 (push) Blocked by required conditions
CI / build-esp32-c6 (push) Blocked by required conditions
CI / build-nrf52 (push) Blocked by required conditions
CI / build-rpi2040 (push) Blocked by required conditions
CI / build-stm32 (push) Blocked by required conditions
CI / build-debian-src (push) Waiting to run
CI / package-pio-deps-native-tft (push) Waiting to run
CI / test-native (push) Waiting to run
CI / docker-deb-amd64 (push) Waiting to run
CI / docker-deb-amd64-tft (push) Waiting to run
CI / docker-alp-amd64 (push) Waiting to run
CI / docker-alp-amd64-tft (push) Waiting to run
CI / docker-deb-arm64 (push) Waiting to run
CI / docker-deb-armv7 (push) Waiting to run
CI / gather-artifacts (esp32) (push) Blocked by required conditions
CI / gather-artifacts (esp32c3) (push) Blocked by required conditions
CI / gather-artifacts (esp32c6) (push) Blocked by required conditions
CI / gather-artifacts (esp32s3) (push) Blocked by required conditions
CI / gather-artifacts (nrf52840) (push) Blocked by required conditions
CI / gather-artifacts (rp2040) (push) Blocked by required conditions
CI / gather-artifacts (stm32) (push) Blocked by required conditions
CI / release-artifacts (push) Blocked by required conditions
CI / release-firmware (esp32) (push) Blocked by required conditions
CI / release-firmware (esp32c3) (push) Blocked by required conditions
CI / release-firmware (esp32c6) (push) Blocked by required conditions
CI / release-firmware (esp32s3) (push) Blocked by required conditions
CI / release-firmware (nrf52840) (push) Blocked by required conditions
CI / release-firmware (rp2040) (push) Blocked by required conditions
CI / release-firmware (stm32) (push) Blocked by required conditions
CI / publish-firmware (push) Blocked by required conditions
* UDP for RAK4631 Eth Gw and the t-eth-elite. Also enable IP output on Portduino. Solves #7149
* Copilot suggestion
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix portduino build
* initialize local port
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-07-20 06:22:00 -05:00
Jonathan Bennett
91049d0db3
Misc cppcheck fixes ( #7370 )
2025-07-20 06:19:45 -05:00
Ben Meadors
cf574c71d8
Fix build
CI / build-esp32-c6 (push) Blocked by required conditions
CI / build-nrf52 (push) Blocked by required conditions
CI / build-rpi2040 (push) Blocked by required conditions
CI / build-stm32 (push) Blocked by required conditions
CI / build-debian-src (push) Waiting to run
CI / package-pio-deps-native-tft (push) Waiting to run
CI / test-native (push) Waiting to run
CI / docker-deb-amd64 (push) Waiting to run
CI / docker-deb-amd64-tft (push) Waiting to run
CI / docker-alp-amd64 (push) Waiting to run
CI / docker-alp-amd64-tft (push) Waiting to run
CI / docker-deb-arm64 (push) Waiting to run
CI / docker-deb-armv7 (push) Waiting to run
CI / gather-artifacts (esp32) (push) Blocked by required conditions
CI / gather-artifacts (esp32c3) (push) Blocked by required conditions
CI / gather-artifacts (esp32c6) (push) Blocked by required conditions
CI / gather-artifacts (esp32s3) (push) Blocked by required conditions
CI / gather-artifacts (nrf52840) (push) Blocked by required conditions
CI / gather-artifacts (rp2040) (push) Blocked by required conditions
CI / gather-artifacts (stm32) (push) Blocked by required conditions
CI / release-artifacts (push) Blocked by required conditions
CI / release-firmware (esp32) (push) Blocked by required conditions
CI / release-firmware (esp32c3) (push) Blocked by required conditions
CI / release-firmware (esp32c6) (push) Blocked by required conditions
CI / release-firmware (esp32s3) (push) Blocked by required conditions
CI / release-firmware (nrf52840) (push) Blocked by required conditions
CI / release-firmware (rp2040) (push) Blocked by required conditions
CI / release-firmware (stm32) (push) Blocked by required conditions
CI / publish-firmware (push) Blocked by required conditions
Semgrep Full Scan / semgrep-full (push) Has been cancelled
2025-07-18 09:24:34 -05:00
Tom Fifield
abe0a34fc0
Add additional Epoch check for time set ( #7375 )
...
CI / build-esp32-c3 (push) Blocked by required conditions
CI / build-esp32-c6 (push) Blocked by required conditions
CI / build-nrf52 (push) Blocked by required conditions
CI / build-rpi2040 (push) Blocked by required conditions
CI / build-stm32 (push) Blocked by required conditions
CI / build-debian-src (push) Waiting to run
CI / package-pio-deps-native-tft (push) Waiting to run
CI / test-native (push) Waiting to run
CI / docker-deb-amd64 (push) Waiting to run
CI / docker-deb-amd64-tft (push) Waiting to run
CI / docker-alp-amd64 (push) Waiting to run
CI / docker-alp-amd64-tft (push) Waiting to run
CI / docker-deb-arm64 (push) Waiting to run
CI / docker-deb-armv7 (push) Waiting to run
CI / gather-artifacts (esp32) (push) Blocked by required conditions
CI / gather-artifacts (esp32c3) (push) Blocked by required conditions
CI / gather-artifacts (esp32c6) (push) Blocked by required conditions
CI / gather-artifacts (esp32s3) (push) Blocked by required conditions
CI / gather-artifacts (nrf52840) (push) Blocked by required conditions
CI / gather-artifacts (rp2040) (push) Blocked by required conditions
CI / gather-artifacts (stm32) (push) Blocked by required conditions
CI / release-artifacts (push) Blocked by required conditions
CI / release-firmware (esp32) (push) Blocked by required conditions
CI / release-firmware (esp32c3) (push) Blocked by required conditions
CI / release-firmware (esp32c6) (push) Blocked by required conditions
CI / release-firmware (esp32s3) (push) Blocked by required conditions
CI / release-firmware (nrf52840) (push) Blocked by required conditions
CI / release-firmware (rp2040) (push) Blocked by required conditions
CI / release-firmware (stm32) (push) Blocked by required conditions
CI / publish-firmware (push) Blocked by required conditions
We have two perhapsSetRTC functions, which are called to set the time.
The one with 3 parameters had a helpful check to reject an invalid time,
by comparing the time from the source against when the firmware was compiled.
The one with 2 parameters, which is called from the GPS lookForTime did not.
As a result, certain GPS with bad time handling could set a time that was
in the past.
This patch adds the same epoch check code to the other perhapsSetRTC method.
Fixes https://github.com/meshtastic/firmware/issues/7364
2025-07-18 05:49:19 -05:00
Jason P
71b6508ad3
BaseUI Updates ( #7358 )
...
CI / docker-alp-amd64 (push) Has been cancelled
CI / docker-alp-amd64-tft (push) Has been cancelled
CI / docker-deb-arm64 (push) Has been cancelled
CI / docker-deb-armv7 (push) Has been cancelled
CI / check (push) Has been cancelled
CI / build-esp32 (push) Has been cancelled
CI / build-esp32-s3 (push) Has been cancelled
CI / build-esp32-c3 (push) Has been cancelled
CI / build-esp32-c6 (push) Has been cancelled
CI / build-nrf52 (push) Has been cancelled
CI / build-rpi2040 (push) Has been cancelled
CI / build-stm32 (push) Has been cancelled
CI / gather-artifacts (esp32) (push) Has been cancelled
CI / gather-artifacts (esp32c3) (push) Has been cancelled
CI / gather-artifacts (esp32c6) (push) Has been cancelled
CI / gather-artifacts (esp32s3) (push) Has been cancelled
CI / gather-artifacts (nrf52840) (push) Has been cancelled
CI / gather-artifacts (rp2040) (push) Has been cancelled
CI / gather-artifacts (stm32) (push) Has been cancelled
CI / release-artifacts (push) Has been cancelled
CI / release-firmware (esp32) (push) Has been cancelled
CI / release-firmware (esp32c3) (push) Has been cancelled
CI / release-firmware (esp32c6) (push) Has been cancelled
CI / release-firmware (esp32s3) (push) Has been cancelled
CI / release-firmware (nrf52840) (push) Has been cancelled
CI / release-firmware (rp2040) (push) Has been cancelled
CI / release-firmware (stm32) (push) Has been cancelled
CI / publish-firmware (push) Has been cancelled
Nightly / Trunk Check and Upload (push) Has been cancelled
Nightly / Trunk Upgrade (PR) (push) Has been cancelled
* Calculate the length of the right string and use it
* Improve readability of Version Number
* Prevent negative message IDs and proactively favorite DM'd nodes
* Patch up Remove Favorite functionality
* Fix warnings for TFT_MESH_* and hasSupportBrightness
* Fix warning around casting variables
* Correct Favorite Node Behavior to rebuild favorite nodes when updated.
* Resolve bool kb_found issue not working for second discovery keyboards
---------
Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz>
2025-07-16 19:44:23 -05:00
Thomas Göttgens
55fc4fcd90
clean up double i2c init/scan code ( #7359 )
2025-07-17 00:40:29 +02:00
Jonathan Bennett
c3b2b474c6
Drop NodeInfo packets if the is_licensed bit doesn't match owner ( #7361 )
2025-07-16 16:05:34 -05:00
Ben Meadors
39716ed1ba
Fix L1 EInk HWModel ( #7346 )
CI / test-native (push) Waiting to run
CI / docker-deb-amd64 (push) Waiting to run
CI / docker-deb-amd64-tft (push) Waiting to run
CI / docker-alp-amd64 (push) Waiting to run
CI / docker-alp-amd64-tft (push) Waiting to run
CI / docker-deb-arm64 (push) Waiting to run
CI / docker-deb-armv7 (push) Waiting to run
CI / gather-artifacts (esp32) (push) Blocked by required conditions
CI / gather-artifacts (esp32c3) (push) Blocked by required conditions
CI / gather-artifacts (esp32c6) (push) Blocked by required conditions
CI / gather-artifacts (esp32s3) (push) Blocked by required conditions
CI / gather-artifacts (nrf52840) (push) Blocked by required conditions
CI / gather-artifacts (rp2040) (push) Blocked by required conditions
CI / gather-artifacts (stm32) (push) Blocked by required conditions
CI / release-artifacts (push) Blocked by required conditions
CI / release-firmware (esp32) (push) Blocked by required conditions
CI / release-firmware (esp32c3) (push) Blocked by required conditions
CI / release-firmware (esp32c6) (push) Blocked by required conditions
CI / release-firmware (esp32s3) (push) Blocked by required conditions
CI / release-firmware (nrf52840) (push) Blocked by required conditions
CI / release-firmware (rp2040) (push) Blocked by required conditions
CI / release-firmware (stm32) (push) Blocked by required conditions
CI / publish-firmware (push) Blocked by required conditions
Daily Packaging / docker-multiarch (push) Has been cancelled
Daily Packaging / package-ppa (jammy) (push) Has been cancelled
Daily Packaging / package-ppa (noble) (push) Has been cancelled
Daily Packaging / package-ppa (plucky) (push) Has been cancelled
Daily Packaging / package-ppa (questing) (push) Has been cancelled
Daily Packaging / package-obs (push) Has been cancelled
Daily Packaging / hook-copr (push) Has been cancelled
2025-07-14 21:14:07 -05:00
Jason P
625a529f6c
Message frame New Message Options and Clock / TDeck / Brightness Refinements ( #7344 )
...
* Clock updates and some TDeck corrections
* TDeck Brightness Works in TFT Builds
* Remove HAS_TFT from enabling Brightness, disable Brightness for TDeck
* Add default textMessage frame actions and adjust SharedUIDisplay
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-07-14 20:59:22 -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
github-actions[bot]
8f10de5684
[create-pull-request] automated change ( #7338 )
...
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>
2025-07-14 09:46:43 -05:00
Daniel.Cao
e864fcf9a8
feat: add support for RAK Wismesh Tag hardware platform ( #6853 )
...
* add new platform rak_wismeshtag
* Remove RTC and Ethernet definitions from variant.h
* Remove unused EINK and Ethernet definitions from variant.h and platformio.ini
* Add WISMESH_TAG hardware model definition in architecture.h and update build flags in platformio.ini
* Remove unused build flags and dependencies
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: daniel <daniel.cao@rakwireless.com>
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2025-07-14 16:29:42 +02:00
Ben Meadors
86af5f5252
Trunk
2025-07-14 05:44:29 -05:00
Quency-D
daa1d582cb
The screen display of the heltec wireless tracker is abnormal. ( #7337 )
...
The screen of the heltec wireless tracker uses the same power source as the GPS. If the GPS turns off the power during the screen shutdown period and then turns on the power, the screen will not function properly. So initialize the screen every time it starts.
2025-07-14 05:43:25 -05:00
Chloe Bethel
3599ca6845
Add heap info via standard mallinfo() function for STM32 ( #7327 )
...
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-07-14 05:12:38 -05:00
Chloe Bethel
1be4fc5ae9
GPS for STM32WL ( #7297 )
...
* Enable GPS for Wio-E5 variant on Serial2
* Add ability to override GPS serial port using GPS_SERIAL_PORT, and make RAK2560 use it.
* Don't try to send ATAK packets if ATAK is disabled, +4k flash
2025-07-14 05:12:26 -05:00
Thomas Göttgens
ac3e5684d6
get git url part from local repo ( #7331 )
2025-07-14 05:11:26 -05:00
Thomas Göttgens
16d2650236
add pioenv to version string in debug log ( #7328 )
2025-07-13 19:16:14 +02:00
TSAO
2ecbf704d0
Improve OLED UI Responsiveness and Force Redraws for Canned message module ( #7324 )
...
* No delay between UI frame rendering for OLED
* force redraw the display
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Jason P <applewiz@mac.com>
2025-07-13 08:28:05 -05:00
Styne13
5e28ee6d1e
NodeDB.cpp: Fix iOS bluetooth crash by ensuring UINT32_MAX is not used ( #7312 )
...
Signed-off-by: Marcel <6253936+Styne13@users.noreply.github.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-07-13 06:26:35 -05:00
Austin
86be2ac12f
userPrefs: Set default ringtone nag time ( #7314 )
2025-07-12 16:26:25 -05:00
Jonathan Bennett
4342d51f5a
Bump Framework-native and set version string. ( #7317 )
2025-07-12 14:44:58 -05:00
Jonathan Bennett
cb47325f08
Seesaw Rotary ( #7310 )
...
* Initial add of Adafruit seesaw encoder
* Fully wire up seesaw
* Trunk
* Add #include configuration.h back to unbreak logging
* Tryfix the dumb compilation error
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-07-12 12:36:44 -05:00
Jonathan Bennett
1ca0584ba0
Add first config override for Native ( #7306 )
2025-07-11 16:09:59 -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
Austin
e9a551ae90
Load ringtone from userPrefs ( #7298 )
...
* Load ringtone from userPrefs
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-11 08:09:46 -05:00
todd-herbert
1063ef9034
Shorter audio feedback for InkHUD buttons ( #7301 )
2025-07-11 17:30:48 +12:00
Jonathan Bennett
13ac182142
Pick up nodedb.h in Screen.cpp regardless of HAS_SCREEN state
2025-07-10 23:19:58 -05:00
Jonathan Bennett
4bab148e3b
Make the shouldWake function always available, and remove the bool ( #7300 )
2025-07-10 22:51:43 -05:00
Jason P
be75f11156
Update Screen Wake Default Behavior ( #7282 )
...
* feat(display): enable screen wake on received messages
* feat(menu): add Screen Wakeup option in system menu
* feat(ui): update wake on message configuration and refactor save logic
* feat(TextMessageModule): conditionally trigger screen wake on received message
* Refactoring system menu options for notification and screen.
* Fix MUI options in the system menu.
* Build out Reboot/Shutdown Menu and consolidate options within it
* Trunk fixes
* Protobuf ref
* Revert generated files
* Update plumbing for screen_wakeup_menu
* Begin work on crafting a method to stop screen wake for received messages
* SharedUIDisplay.cpp doesn't need ExternalNotificationModule.h
* Stop screen wake if External Notification is enabled
* Removing extra log lines
* Add role and battery state checks for not waking screen. Menu updates to resolve some Back options not being linked
* Resolve some additional merge conflict related issues
* Shouldn't throttle the power menu
* Finalize renames of some menus
* Flip Flop MUI Menu to avoid accidental clicks
* NULL check for powerStatus
* Remove "Wakeup" eNum
* Update src/graphics/Screen.cpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* CoPilot was close this should fix the builds
---------
Co-authored-by: whywilson <m.tools@qq.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-10 19:49:15 -05:00
Jonathan Bennett
6030bf50e0
Unbreak the macro
2025-07-10 11:40:02 -05:00
Jonathan Bennett
5f5698ccc0
Explicitly include meshUtils.h
2025-07-10 10:29:33 -05:00
Jonathan Bennett
74c735d5fb
Gate screen code behind IF_SCREEN()
2025-07-10 10:20:44 -05:00
Jonathan Bennett
107dec22bd
Remove bogus validation check
2025-07-10 10:12:02 -05:00
Jonathan Bennett
0795b21c2b
Key verification flow on BaseUI ( #7240 )
2025-07-10 09:45:36 -05:00
Ben Meadors
354f149338
Make PacketHistory logging less chatty ( #7272 )
2025-07-08 15:12:44 -05:00
Jason P
999e1207a5
Show user which option is currently elected ( #7271 )
2025-07-08 14:38:38 -05:00
Jason P
916587c2a6
Update Bluetooth Toggle to match other variants ( #7269 )
2025-07-08 13:38:07 -05:00
todd-herbert
db4e4e6e53
Heltec Wireless Paper, VM-E213 Hardware Revisions ( #7258 )
...
* Tests to identify display model
* (InkHUD) SSD1682 controller IC
Has a few quirks, gets its own base class
* (InkHUD) E0213A367 Display
For Heltec Wireless Paper V1.1.1, V1.2
For Heltec VM-E213 V1.1
* (InkHUD) Select display model at boot
* (BaseUI) Wrapper to combine multiple GxEPD2 drivers
Workaround for issue of GxEPD2_BW objects not having a shared base class. Allows us to select a driver at runtime.
https://github.com/meshtastic/firmware/issues/6851#issuecomment-2905353447
* (BaseUI) Select E-Ink model at boot
* (InkHUD) SSD1682 deep sleep
* (InkHUD) No deep sleep for SSD1682
* (InkHUD) Fully no-op deep sleep for SSD1682
2025-07-08 13:01:48 -05:00
Jason P
9c08220d24
TFT_MESH Fixes Across Various Devices ( #7247 )
...
* Rename "r,g,b" variables to having a TFT_MESH_ prefix
* Reboot and then user options
* Restore TFT_MESH on any ST7789Spi driver
2025-07-08 06:24:12 -05:00
HarukiToreda
88b299dd41
Modules and favorite screen fix ( #7264 )
...
* T-watch screen misalignment fix
* Trunk fix
* Fix for favorite frame when module screen is enabled
2025-07-08 06:22:57 -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