Thomas Göttgens
33db9938b0
Define button behaviour and use all of the device flash
2026-04-14 16:54:32 +02:00
copilot-swe-agent[bot] and caveman99
a2189f43a1
Merge branch 'develop' into thinknode-g3
...
Co-authored-by: caveman99 <25002+caveman99@users.noreply.github.com >
2026-04-14 13:35:49 +00:00
github-actions[bot] and caveman99
00fccd87f9
Update protobufs ( #10161 )
...
Co-authored-by: caveman99 <25002+caveman99@users.noreply.github.com >
2026-04-14 15:27:05 +02:00
Andrew Yong
01bd4cfb73
feat(stm32wl): add reboot-to-bootloader support via enter_dfu_mode_request ( #10158 )
v2.7.22.96dd647
2026-04-14 13:46:33 +02:00
Jonathan Bennett
125c1b7f13
Make consoleInit() Reentrant, and initialize it earlier on native ( #10156 )
2026-04-14 06:41:04 -05:00
Thomas Göttgens
847c8055a4
Merge branch 'develop' into thinknode-g3
2026-04-14 12:20:30 +02:00
Thomas Göttgens
d6cf67b6bc
Clarify behavior when no radio instance is present
...
Add comment explaining silent behavior when no radio instance is available.
2026-04-14 12:19:58 +02:00
Thomas Göttgens
3c586c23a3
Split out G3 and M7 to different variants. Completely new PCB design. The G3 stays on 'PRIVATE_HW'
2026-04-14 12:06:11 +02:00
Thomas Göttgens
f70234f0f4
Merge branch 'develop' into thinknode-g3
2026-04-14 10:46:45 +02:00
77f378dd53
Reduce key duplication by enabling hardware RNG ( #8803 )
...
* Reduce key duplication by enabling hardware RNG
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Apply suggestion from @Copilot
Use micros() for worst case random seed for nrf52
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Minor cleanup, remove dead code and clarify comment
* trunk
* Add useRadioEntropy bool, default false.
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz >
2026-04-13 12:05:23 -05:00
Ben Meadors
16dcafa7fb
Merge remote-tracking branch 'origin/master' into develop
2026-04-13 06:28:41 -05:00
renovate[bot]
eeb95d6bff
Update meshtastic-st7789 digest to a787bee ( #10147 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-13 06:26:22 -05:00
Thomas Göttgens
9721ad8531
Merge branch 'develop' into thinknode-g3
2026-04-13 11:25:11 +02:00
Thomas Göttgens
c19e2f0d90
older G3 operational. M7 next.
2026-04-13 11:08:31 +02:00
4ac74edf38
fix(native): implement BinarySemaphorePosix with proper pthread synchronization ( #9895 )
...
* fix(native): implement BinarySemaphorePosix with proper pthread synchronization
The BinarySemaphorePosix class (used on all Linux/portduino/native builds)
had stub implementations: give() was a no-op and take() just called
delay(msec) and returned false. This broke the cooperative thread scheduler
on native platforms — threads could not wake the main loop, radio RX
interrupts were missed, and telemetry never transmitted over the mesh.
Replace the stubs with a proper binary semaphore using pthread_mutex_t +
pthread_cond_t + bool signaled:
- take(msec): pthread_cond_timedwait with CLOCK_REALTIME timeout, consumes
signal atomically (binary semaphore semantics)
- give(): sets signaled=true, signals condition variable
- giveFromISR(): delegates to give(), sets pxHigherPriorityTaskWoken
Tested on Raspberry Pi 3 Model B (ARM64, Debian Bookworm) with Adafruit
LoRa Radio Bonnet (SX1276). Before fix: no radio TX/RX, no telemetry on
mesh. After fix: bidirectional LoRa, MQTT gateway, telemetry all working.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* ARCH_PORTDUINO
* Refactor BinarySemaphorePosix header for ARCH_PORTDUINO
* Change preprocessor directive from ifndef to ifdef
* Gate new Semaphore code to Portduino and fix STM compilation
* Binary Semaphore Posix better error handling
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: Ben Meadors <benmmeadors@gmail.com >
Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz >
2026-04-12 22:41:25 -05:00
renovate[bot]
323830c7cc
Update pnpm/action-setup action to v6 ( #10132 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-12 22:09:25 -04:00
renovate[bot]
a9acd506a8
Update softprops/action-gh-release action to v3 ( #10150 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-12 21:49:14 -04:00
Austin
a1d6c6db62
Fix display method to use const qualifier for previousBuffer pointer ( #10146 )
...
Addresses cppcheck `src/graphics/EInkParallelDisplay.cpp:205: [low:style] Variable 'prev' can be declared as pointer to const [constVariablePointer]`
2026-04-12 19:38:44 -05:00
Jonathan Bennett
69495dcd98
Merge remote-tracking branch 'origin/master' into develop
2026-04-12 17:29:40 -05:00
Austin
0f2d224e74
Switch PlatformIO deps from PIO Registry to tagged GitHub zips ( #10142 )
2026-04-12 17:06:57 -05:00
Thomas Göttgens
cecd409089
rename variant and add guard macros
2026-04-12 17:22:58 +02:00
Thomas Göttgens
4ccbf72c30
Merge branch 'thinknode-g3' of https://github.com/meshtastic/firmware into thinknode-g3
...
# Conflicts:
# src/mesh/wifi/WiFiAPClient.cpp
2026-04-12 17:20:55 +02:00
Thomas Göttgens
6951739df5
ThinkNode G3, ETH support WIP
2026-04-12 17:19:17 +02:00
Austin
381cefa6b2
PPA: Use SFTP method for uploads ( #10138 )
...
* Upload to PPA via SFTP
* PPA-SFTP: Trust Launchpad's SSH Key
* Move SSH key import next to GPG
* Increase dput timeout...
* Use env for inputs (address semgrep gripe)
2026-04-12 07:24:11 -05:00
Austin Lane
a50cbdc95b
Docker: Pull images from Google/AWS during build
...
Use Google / Amazon mirrors, not DockerHub, when pulling images for Docker builds.
Should prevent Docker ratelimiting during CI (Actions) builds.
2026-04-11 22:41:21 -04:00
renovate[bot]
e7c7af40ae
Update meshtastic-st7789 digest to 4d957e7 ( #10134 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-11 20:09:08 -05:00
Catalin Patulea
288d7a3e7b
Revert "Add include directive for mbedtls error handling in build flags" ( #10073 )
...
This reverts commit 391928ed08 .
Since esp32_https_server commit e2c9f98, this is no longer necessary.
Also, the esp32-common.ini '-include mbedtls/error.h' causes a build error
under IDF v5 (https://github.com/meshtastic/firmware/pull/9122#issuecomment-4185767085 ):
<command-line>: fatal error: mbedtls/error.h: No such file or directory
so this change fixes that error.
2026-04-11 06:35:42 -05:00
renovate[bot]
48ae4b6c7a
Update meshtastic-st7789 digest to 7228c49 ( #10131 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-10 21:19:01 -05:00
Austin
ae5019bec6
meshtasticd: Add configs for forlinx-ok3506-s12 (mPWRD-OS) ( #10087 )
...
These configs were generated programatically by Opus 4.6.
See: https://github.com/vidplace7/meshtasticd-40pin
Tested with MeshAdv-Pi, other pinmaps are untested but should work.
2026-04-10 16:49:36 -05:00
Catalin Patulea
4990bf51e3
Delete PointerQueue::dequeuePtrFromISR, unused since commit db766f1 ( #99 ). ( #10090 )
2026-04-10 16:20:25 -05:00
renovate[bot]
3cd3fd3386
Update actions/github-script action to v9 ( #10122 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-10 11:21:51 -05:00
Austin
839cf554b7
meshtasticd: Add configs for ebyte-ecb41-pge (mPWRD-OS) ( #10086 )
...
These configs were generated programatically by Opus 4.6.
See: https://github.com/vidplace7/meshtasticd-40pin
Tested with MeshAdv-Pi, other pinmaps are untested but should work.
2026-04-10 11:21:23 -05:00
Tom
b2c8cbb78d
Enhance traffic management by adjusting position update interval and refining hop exhaustion logic based on channel congestion ( #9921 )
2026-04-10 10:53:04 -05:00
Jonathan Bennett
8061f83704
Modify log output to show milliseconds ( #10115 )
...
Updated timestamp format to include milliseconds.
2026-04-10 07:21:24 -05:00
renovate[bot]
216655f05f
Update meshtastic-st7789 digest to 222554e ( #10121 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-09 19:37:00 -05:00
Tom
a3b49b9028
Add powerlimits to reconfigured radio settings as well as init settings. ( #10025 )
...
* Add powerlimits to reconfigured radio settings as well as init settings.
* Refactor preamble length handling for wide LoRa configurations
* Moved the preamble setting to the main class and made the references static
2026-04-09 16:18:05 -05:00
github-actions[bot] and vidplace7
2c633b6458
Upgrade trunk ( #10096 )
...
Co-authored-by: vidplace7 <1779290+vidplace7@users.noreply.github.com >
2026-04-09 06:28:05 -05:00
Ben Meadors
17945884a5
Merge remote-tracking branch 'origin/master' into develop
2026-04-09 06:21:33 -05:00
renovate[bot]
7fdee353b5
Update meshtastic-esp32_https_server digest to 0c71f38 ( #10081 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-08 21:16:56 -05:00
Ben Meadors
1116f06139
Merge remote-tracking branch 'origin/master' into develop
2026-04-08 13:37:25 -05:00
github-actions[bot] and thebentern
16cf962351
Update protobufs ( #10104 )
...
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
2026-04-08 13:36:09 -05:00
Ben Meadors
12f0a74557
Sync up custom metadata
2026-04-07 08:43:29 -05:00
Jonathan Bennett
2dd9c5eef2
Fix Linux Input enable logic ( #10093 )
2026-04-06 15:02:38 -05:00
github-actions[bot] and thebentern
98963218ad
Automated version bumps ( #10092 )
...
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
2026-04-06 13:34:01 -05:00
github-actions[bot] and vidplace7
6628c9e66e
Upgrade trunk ( #10091 )
...
Co-authored-by: vidplace7 <1779290+vidplace7@users.noreply.github.com >
2026-04-06 07:51:37 -05:00
github-actions[bot] and thebentern
c728cfdaf4
Automated version bumps ( #10092 )
...
Co-authored-by: thebentern <9000580+thebentern@users.noreply.github.com >
2026-04-06 06:39:53 -05:00
Austin
d96770007d
meshtasticd: Add configs for luckfox-lyra-zero-w (mPWRD-OS) ( #10085 )
v2.7.21.1370b23
2026-04-05 15:23:52 -05:00
9322bcdb21
fix: redact MQTT password from log output ( #10064 )
...
MQTT password was logged in cleartext via LOG_INFO when connecting to
the broker, exposing credentials to anyone with log access. Replace
the password format specifier with a static mask.
Co-authored-by: Patrickschell609 <patrickschell609@users.noreply.github.com >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-05 07:54:51 -05:00
Ben Meadors
1370b234eb
Add build flag to exclude web server in MUI build for Wismesh Tap V2
2026-04-05 07:48:24 -05:00
Ben Meadors
9ba44bfbfb
Set T-LoRA pager audio board volume to 75%
2026-04-04 20:05:22 -05:00