Commit Graph

5600 Commits

Author SHA1 Message Date
todd-herbert
5195815df0
Parse own short name in LogoApplet (#6913) 2025-05-29 06:21:09 -05:00
HarukiToreda
303006e1df Indents indents indents 2025-05-29 02:31:09 -04:00
HarukiToreda
69a08cb69d GPS compass now supports portrait and square displays 2025-05-29 01:57:59 -04:00
HarukiToreda
ac0547ca3e Support for Comapass on square and portrait screens 2025-05-29 01:44:06 -04:00
HarukiToreda
a66f381a5d Compact lines for Device focus screen 2025-05-28 23:22:11 -04:00
HarukiToreda
fda6de2f51 Favorite Node Info screens 2025-05-28 21:41:44 -04:00
Jonathan Bennett
8a997eb529
Merge branch 'master' into unify-tft 2025-05-28 13:49:43 -05:00
Ben Meadors
42a80d8aed
Coerce user.id to always be derive from the nodenum (#6906)
Some checks are pending
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
* 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 22a2d68723.
2025-05-28 11:30:59 -05:00
github-actions[bot]
da69d88790
[create-pull-request] automated change (#6909)
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>
2025-05-28 06:20:51 -05:00
HarukiToreda
051e7331f2 Fix for shutdown banner 2025-05-28 03:04:19 -04:00
Jonathan Bennett
ec2efa55fc
Merge branch 'master' into unify-tft 2025-05-27 21:08:54 -05:00
Thomas Göttgens
96c18d9908
Add LINK32 (Lilygo) Board with Light+Environment sensors (#6899)
Some checks are pending
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
* Add LINK32 (Lilygo) Board with Light+Environment sensors
TODO: replace PRIVATE_HW with actual HWID

* Add LINK32 (Lilygo) Board with Light+Environment sensors
TODO: replace PRIVATE_HW with actual HWID

* Update to real HWID and trunk fmt
2025-05-27 18:11:32 -05:00
GUVWAF
8908805894
Don't cancel sending ReTx for relayer if we're ROUTER(_LATE)/REPEATER (#6904)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-05-27 18:10:14 -05:00
Jonathan Bennett
03b59ae39a
Key verification implementation (#6892)
* Very rough start on key verification routine

* KeyVerification mostly working

* Actually working

* Properly hide KeyVerification behind PKI enabled defines

* Change to avoid admin.admin

* Update src/modules/KeyVerificationModule.cpp

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-05-27 17:18:18 -05:00
Jonathan Bennett
cc2dd66ce2
Merge branch 'master' into unify-tft 2025-05-27 15:53:19 -05:00
github-actions[bot]
158c88ddef
[create-pull-request] automated change (#6905)
Co-authored-by: jp-bennett <5630967+jp-bennett@users.noreply.github.com>
2025-05-27 15:41:35 -05:00
HarukiToreda
bdd03bc853 Fix to but that takes you to message selection screen 2025-05-26 23:45:53 -04:00
HarukiToreda
aaf9f4011f Bluetooth dissable icon 2025-05-26 23:45:28 -04:00
HarukiToreda
7c9ec46d8f move destination option to top of canned message screen 2025-05-26 18:53:14 -04:00
HarukiToreda
4fdc5f094a More cleanup 2025-05-26 18:46:15 -04:00
HarukiToreda
4935e91454 More cannedmessage cleanup 2025-05-26 18:01:16 -04:00
HarukiToreda
6aff2179d1 Revert "Virtual keyboard fix"
This reverts commit dbfa703cfa.
2025-05-26 04:37:58 -04:00
HarukiToreda
3741b78a32 Revert "bug fix"
This reverts commit 3108de207e.
2025-05-26 04:37:41 -04:00
HarukiToreda
3108de207e bug fix 2025-05-26 03:23:08 -04:00
HarukiToreda
dbfa703cfa Virtual keyboard fix 2025-05-26 03:00:38 -04:00
HarukiToreda
7c4714afbb Unified navigation inputs for cannedmessages 2025-05-26 01:35:34 -04:00
Jonathan Bennett
0d37804db5 Trigger a reboot when moving between Display Types 2025-05-25 17:11:12 -05:00
todd-herbert
f223b8a55d
Add missing parsing of UTF-8 chars (#6889) 2025-05-25 13:12:52 -05:00
Ben Meadors
75a49d3486
Add heap metrics to Local stats (#6887) 2025-05-25 11:08:56 -05:00
Michael Cullen
7d95b487ef
Add PCT2075 Temperature Sensor (#6829)
Some checks are pending
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
This is an I2C temperature sensor. It is intended to be a drop-in
compatible sensor for the LM75, however it is more accurate.

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-05-25 07:29:02 -05:00
Ben Meadors
2e72850d99
Fix is_unmessagable plumbing (#6886) 2025-05-25 07:24:28 -05:00
Manuel
8179af3968
Merge branch 'master' into unify-tft 2025-05-25 14:13:22 +02:00
github-actions[bot]
c47bdd11f9
[create-pull-request] automated change (#6885)
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>
2025-05-25 06:56:21 -05:00
Andrew Yong
e29588d2e2
feat(RadioInterface): Tx power gain calculation rework (#6796)
- Rename REGULATORY_GAIN_LORA to TX_GAIN_LORA
- Move gain-based Tx power clamping from RadioInterface::applyModemConfig() to RadioInterface::limitPower()
  - User-configured Tx power now matches the Tx power out of the device connector
- Re-order [LoRa Chip]Interface.cpp limitPower() to take place before the final Tx power clamping so we clamp based on the pre-PA Tx power rather than user-configured Tx power

Tested on XIAO BLE variant.

Signed-off-by: Andrew Yong <me@ndoo.sg>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-05-25 06:26:31 -05:00
Chiho Sin
9b69c2a9af
graphics: Add GDEY0213B74 E-Ink display driver (#6879)
Implement the GDEY0213B74 driver with configuration methods for scanning, waveform, update sequence, and polling for refresh completion. This driver supports both fast and full update types for the 2.13 inch E-Ink display.

Signed-off-by: ChihoSin chihosin@icloud.com

Signed-off-by: ChihoSin chihosin@icloud.com
2025-05-25 06:08:41 -05:00
HarukiToreda
e974a58d18 Cannedmessagemodule.h cleanup 2025-05-24 20:46:33 -04:00
HarukiToreda
b2663d4b19 Fixed Ack and Nack messages 2025-05-24 20:38:47 -04:00
HarukiToreda
bed25406c1 Facelist to cannedmessage screen 2025-05-24 14:16:28 -04:00
mverch67
bf21481bef fix compilation errors (for targets which have no telemetry) 2025-05-24 18:01:47 +02:00
HarukiToreda
b5f74cead1 Fixed invertion to tittles 2025-05-24 04:37:10 -04:00
HarukiToreda
13421b32b5 Inverted on default header 2025-05-24 04:12:15 -04:00
HarukiToreda
295ed2a8cf Increased cycling time for NodeInfo screens to 3 secs 2025-05-24 04:09:35 -04:00
HarukiToreda
8f717d58e7 Scroll navigation bar to next page when too long 2025-05-24 03:52:49 -04:00
HarukiToreda
06a65bd80e Nodeinfo screens for favorites feature 2025-05-24 03:45:00 -04:00
HarukiToreda
10f1567b96 Bluetooth dissabled indicator 2025-05-23 21:08:25 -04:00
HarukiToreda
4a55f6468a Emote code cleanup 2025-05-23 02:57:20 -04:00
HarukiToreda
9e3cf441a1 Encoder fix 2025-05-22 23:50:41 -04:00
Ben Meadors
beba1b4882
Added map report precision bounds (#6862)
Some checks failed
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
Nightly / Trunk Check and Upload (push) Has been cancelled
Nightly / Trunk Upgrade (PR) (push) Has been cancelled
* 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
todd-herbert
ba1ef45024
InkHUD Extended ASCII (#6768)
* Custom AdafruitGFX fonts with extended ASCII encodings

* AppletFont handles re-encoding of UTF-8 text

* Manual parsing of text which may contain non-ASCII chars

* Display emoji reactions, even when unprintable
Important to indicate to users that a message has been received, even if meaning is unclear.

* Superstitious shrink_to_fit
I don't think these help, but they're not hurting!

* Use Windows-1252 fonts by default

* Spelling

* Tidy up nicheGraphics.h

* Documentation

* Fix inverted logic
Slipped in during a last minute renaming while tidying up to push..
2025-05-22 18:16:53 -05:00
HarukiToreda
c59f16db42 Eink adjustment 2025-05-22 13:33:24 -04:00
Ben Meadors
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
HarukiToreda
d98612a2ca Added select as the rotary encoder button press 2025-05-22 01:42:08 -04:00
HarukiToreda
9d9fb2d74c Navigation bar should no longer hide on Eink displays 2025-05-22 01:09:11 -04:00
HarukiToreda
351dff14e8 No more blinking icons for Eink 2025-05-22 00:25:54 -04:00
HarukiToreda
2432d0616b Added destination change on Cannedmessage screen and dismiss text message frame on reply. 2025-05-22 00:14:28 -04:00
HarukiToreda
b35fb886e4 Node selection optimization for encoder and fix for ACK messages. 2025-05-21 21:13:46 -04:00
HarukiToreda
53d5801790 Compiling error fixes 2025-05-21 14:33:39 -04:00
HarukiToreda
93aa88129c Re-arranged Lora Screen 2025-05-20 23:08:32 -04:00
HarukiToreda
f1d4e5fa48 Save on shutdown added to buttonthead 2025-05-20 22:40:53 -04:00
Jonathan Bennett
41c1b29d70
Add basic handling for is_manually_validated (#6856) 2025-05-20 21:29:29 -05:00
HarukiToreda
25b2a75dfe Lora Screen Refactored 2025-05-20 22:11:43 -04:00
Ben Meadors
6041357cbb Increase the debt ceiling 2025-05-20 20:31:01 -05:00
github-actions[bot]
cf3f35d566
[create-pull-request] automated change (#6857)
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>
2025-05-20 19:51:03 -05:00
Jonathan Bennett
3e3a55a971
Merge branch 'master' into unify-tft 2025-05-20 13:36:20 -05:00
Jonathan Bennett
e0f878872f
Hostmetrics user string (#6850) 2025-05-20 13:04:05 -05:00
Jonathan Bennett
021f872507 Gate more modules behind config.display.displaymode 2025-05-19 21:53:58 -05:00
HarukiToreda
ec50801726 Merge remote-tracking branch 'upstream/master' into StandaloneAddons 2025-05-19 20:00:03 -04:00
HarukiToreda
6db585051e Save on reboot and shutdown 2025-05-19 19:56:32 -04:00
HarukiToreda
aca5159170 Adding date to GPS screen 2025-05-19 19:43:28 -04:00
Jonathan Bennett
3fe44755d0
Merge branch 'master' into unify-tft 2025-05-19 09:40:41 -05:00
HarukiToreda
16994c8725
Fix for ICM-20948 not initializing (#6827)
* Fix for ICM-20948 not initializing

* trunk fix
2025-05-19 06:49:38 -05:00
Jonathan Bennett
9aff65e313 One of the classic blunders 2025-05-18 23:01:46 -05:00
mverch67
660a7058c8 fix rotation 2025-05-18 22:08:44 -05:00
Jonathan Bennett
584ac8bdc9 Default to MUI display for devices that support it 2025-05-18 20:03:42 -05:00
Jonathan Bennett
d7697e6dec Trunk 2025-05-18 19:58:37 -05:00
Jonathan Bennett
7411dd4f0c guard against a few more null screen pointers 2025-05-18 19:57:49 -05:00
Jonathan Bennett
61ebce5241 Get t-deck working with both UIs for tft build 2025-05-18 19:46:48 -05:00
Jonathan Bennett
f1440a27d7 Check for null screen 2025-05-17 22:03:23 -05:00
Jonathan Bennett
212005bfe9 More checking for null screen 2025-05-17 20:07:33 -05:00
Jonathan Bennett
afc5d1fdeb Get MUI and legacy screen co-existing on Portduino 2025-05-17 18:43:07 -05:00
Jonathan Bennett
e7352cada4 First attempt at honoring config.display.displaymode 2025-05-17 16:24:53 -05:00
Jonathan Bennett
61d918751e Unify the native display config between legacy display and MUI 2025-05-17 15:07:46 -05:00
Jonathan Bennett
61e4eb12e6
Use the _init_zero macro correctly for HostMetrics (#6837) 2025-05-17 14:02:39 -05:00
github-actions[bot]
5b312ab917
[create-pull-request] automated change (#6836)
Co-authored-by: jp-bennett <5630967+jp-bennett@users.noreply.github.com>
2025-05-17 12:29:18 -05:00
github-actions[bot]
a50a94150a
[create-pull-request] automated change (#6834)
Co-authored-by: jp-bennett <5630967+jp-bennett@users.noreply.github.com>
2025-05-17 10:44:02 -05:00
HarukiToreda
a8294b983a Fix for Magnetic compass. 2025-05-16 02:14:50 -04:00
Jonathan Bennett
066609a718
Remove incomplete compass boot calibration (#6825)
The made it in from testing unintentionally.
2025-05-16 12:29:08 +10:00
HarukiToreda
2a6944fe12 Merge remote-tracking branch 'upstream/master' into StandaloneAddons 2025-05-15 21:18:01 -04:00
HarukiToreda
512183c39f Line added to text message screen 2025-05-15 12:15:03 -04:00
HarukiToreda
18d11d28d4 Line added to non-inverted header 2025-05-15 12:14:24 -04:00
Jonathan Bennett
1ef4caea05
Host metrics (#6817)
* Add std::string exec() function to PortduinoGlue for future work

* MVP for HostMetrics module.

* Fix compilation for other targets

* Remove extra debug calls

* Big numbers don't do well as INTs.

* Add HostMetrics to config.yaml
2025-05-15 09:23:37 -05:00
Austin
7d8f9c7f6d
Stop the madness! Run as a user (not root) (#6718)
* Stop the madness! Run as a user (not root)

* Trigger fsdir migration for < 2.6.9

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-05-15 06:40:46 -05:00
Tom Fifield
6bba17d463
Add suppport for Quectel L80 (#6803)
* Add suppport for Quectel L80

Another PMTK family chip, requires only a modification to the
probe code.

* Update support for L80 based on testing.
2025-05-15 19:26:41 +10:00
github-actions[bot]
ed6de5095e
[create-pull-request] automated change (#6815)
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>
2025-05-14 17:54:21 -05:00
Ben Meadors
7cffd9ba70
Added new map report opt-in for compliance and limit map report (and default) to one hour (#6813)
* Added new map report opt-in for compliance and limit map report (and default) to one hour

* Trunk
2025-05-14 15:31:28 -05:00
Ben Meadors
fc64bea698
Unmessagable implementation and defaults (#6811)
* Unmessagable implementation and defaults

* Router and router late are unmessagable by default

* Update src/modules/AdminModule.cpp

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

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-14 15:28:09 -05:00
github-actions[bot]
a51a6b8c47
[create-pull-request] automated change (#6812)
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>
2025-05-14 14:41:37 -05:00
github-actions[bot]
bc313da064
[create-pull-request] automated change (#6810)
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com>
2025-05-14 13:48:14 -05:00
Austin
f16402dec1
MQTT userprefs (#6802) 2025-05-14 13:39:46 -05:00
todd-herbert
feafd2bc0c
Protect T-Echo's touch button against phantom presses in OLED UI (#6735)
* Guard T-Echo touch button during LoRa TX

* Guard for T-Echo only

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2025-05-14 06:33:51 -05:00