Steve Calvário
f2cdab84c4
Merge branch 'liquidraver:master' into t114
2026-05-15 19:54:47 +01:00
Steve Calvário
6dc86cc443
Init T114 without screen
2026-05-15 19:04:14 +01:00
liquidraver
3441caf8b0
new rx busy latch
v20260514.205836
2026-05-14 22:24:48 +02:00
liquidraver
a6d095bc16
edit default prefs
2026-05-12 22:07:02 +02:00
liquidraver
a3bfb1e4a3
fix pubic channel anomaly v2
v20260511.125830
2026-05-11 14:42:47 +02:00
liquidraver
1bb04dd968
refactor atomicwrites, add atomic contacts save to QSPI capable devices
v20260511.112139
2026-05-11 13:02:55 +02:00
liquidraver
e78e197dee
sx1262 fixes
...
- calibrate_image: revert to datasheet band table. Narrow ±2 MHz
window had truncation bug placing 433/869 MHz operating freq
outside their own calibration windows. DS §9.2.1 confirms cal
is range-validity, not point-precision
- reset_agc: K_FOREVER mutex → K_MSEC(50). Was holding dispatcher
thread up to ~3 s if a long TX/RX held the SPI lock. Now bails
with WARN log; caller retries next maintenance interval.
2026-05-11 11:26:33 +02:00
liquidraver
2ee0fffa69
sync with vanilla
2026-05-08 10:13:42 +02:00
liquidraver
6919c3511c
rx_boost state is undefined at boot (minor fix)
...
every LBT-retried flood packet loses its priority (fixed)
witching between LBT and non-LBT mode (or any cad.mode change) could silently skip full reconfiguration and leave the radio in the wrong mode (fixed)
2026-05-08 09:50:52 +02:00
liquidraver
66f7b8508f
add/fix promicro_sx1262 build
2026-05-07 22:35:30 +02:00
liquidraver
147ac462b3
fix deleting public channel could wipe all other channels on reboot
2026-05-07 21:43:48 +02:00
liquidraver
2a8cc88262
fix fast path LBT CAD mode
v20260507.103840
2026-05-07 11:37:09 +02:00
liquidraver
98fcddb502
add formatter tools
2026-05-06 21:56:23 +02:00
liquidraver
65f31ced7d
no permanent gps disable on repeaters
v20260506.102120
2026-05-06 10:11:09 +02:00
liquidraver
43a31e190d
fix CAD IRQ status clear
2026-05-06 10:07:44 +02:00
liquidraver
6bc3ba7405
disable default duty cycling + SX driver fixes
2026-05-05 21:56:00 +02:00
liquidraver and Claude Opus 4.7
5e7adfb130
normalize source-file line endings to LF
...
Add .gitattributes rules so .c/.h/.cpp/.hpp are always stored as LF
(prevents EOL drift from editors with autocrlf-true defaults), and
renormalize the 30 source files that had drifted to CRLF in the index.
Pure mechanical change — `git diff --ignore-cr-at-eol` is empty.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
v20260505.131914
2026-05-05 14:56:44 +02:00
liquidraver
28e12c7eef
initial companion jitter lowering
2026-05-05 14:52:12 +02:00
liquidraver
e8f14442bf
ramp time to 800us and duty cycle to 13/3
2026-05-05 14:52:05 +02:00
liquidraver
ee2990fd16
hwconfig failsafe and duty cycle 10/6->10/4 (tests showed better reception)
2026-05-05 10:46:58 +02:00
liquidraver
9a1569c511
make rx duty cycle tuning more easy
2026-05-04 15:09:26 +02:00
liquidraver
1a956aa86a
remove hot path RX, re-done the math, solves nothing, eats battery
v20260502.112307
2026-05-02 12:13:29 +02:00
liquidraver
9282ac8c9c
stay in full RX after TX for 3 seconds
...
agc reset on every lora_recv_duty_cycle entry
v20260501.191026
2026-05-01 20:46:12 +02:00
liquidraver
624fc3306c
tune duty cycling
2026-05-01 08:58:55 +02:00
liquidraver
a81f27aea4
implement "isradioready" for early returns in rx duty cycling
2026-04-30 21:54:59 +02:00
liquidraver
7c31045bd4
fix hang near noisefloorcalibrate
2026-04-30 21:35:06 +02:00
liquidraver
961fc1ec80
sx1262 driver fixes
...
-Removed broken §15.3 implicit-header workaround (wrong addresses, wrong bit, wrong condition)
-Initialize data->rx_boost_enabled from config->rx_boosted (DTS) instead of hard-coded false
-Re-apply RX gain after the first SetRx in lora_recv_async to match restart_rx / recv_duty_cycle
-Re-issue CalibrateImage(operating_freq) after Calibrate(ALL) to keep image-rejection band correct on EU868 / 433 MHz / 779 MHz
-rx_cb_gen converted from uint32_t to atomic_t — atomic_set/get/inc at all 13 sites; local snapshot is now atomic_val_t
2026-04-30 21:18:50 +02:00
liquidraver
8a7dacf55d
increase sx1262 power to 140mA
2026-04-30 20:52:21 +02:00
liquidraver
f947b6b5b1
increase preamble like vanilla
v20260430.112448
2026-04-30 12:58:33 +02:00
liquidraver
9938d0e6ca
fix a race condition in sx driver
2026-04-30 12:56:42 +02:00
liquidraver
e930d6cc9c
more small security fixes
2026-04-30 09:53:03 +02:00
liquidraver
62232bf609
small ble fixes
2026-04-30 09:23:56 +02:00
liquidraver
0e01fb2bb0
small security fix
2026-04-29 21:01:01 +02:00
liquidraver
5dc07d78ba
force unscoped send on magic scope word: "none" even if there is a default scope
2026-04-29 13:17:04 +02:00
liquidraver
b84830b3b3
(greatly) improve our BLE
v20260429.104549
2026-04-29 12:09:21 +02:00
liquidraver
4506280162
fix(sx126x): recover and re-arm duty-cycle RX after BUSY timeout
2026-04-29 11:11:32 +02:00
liquidraver
c187dac4b4
fix(sx126x): honor tx-enable-gpios when dio2-tx-enable is set
2026-04-29 10:40:13 +02:00
liquidraver
3da236adb2
Merge branch 'dev' of https://github.com/liquidraver/zephcore into dev
2026-04-29 09:26:49 +02:00
liquidraver
0f1fa8f185
do a full display reset after splashscreen
2026-04-29 09:26:39 +02:00
InvisibleSymbol
360b3b578d
fix(rak4631): dont touch sx1262 power-enable pin
...
Upstream Zephyr DTS
[rak4631_nrf52840.dts:124](https://github.com/zephyrproject-rtos/zephyr/blob/c6f781a4988fbb5cc3420f74e36add5ef65dbb94/boards/rakwireless/rak4631/rak4631_nrf52840.dts#L124 )
declares P1.05 as `rx-enable-gpios = <&gpio1 5 GPIO_ACTIVE_LOW>`.
MeshCore treats the same pin as `SX126X_POWER_EN`
([variants/rak4631/variant.h:155](https://github.com/meshcore-dev/MeshCore/blob/1a7b3614a8439894714a58af55ab7f501e6bb928/variants/rak4631/variant.h#L155 ))
and only ever drives it HIGH (= module on,
[RAK4631Board.cpp:51](https://github.com/meshcore-dev/MeshCore/blob/1a7b3614a8439894714a58af55ab7f501e6bb928/variants/rak4631/RAK4631Board.cpp#L51 )).
Our driver toggles it per direction at
[sx126x.c:474-475](https://github.com/zephyrproject-rtos/zephyr/blob/684c9e8f32e4373a21098559f748f06915f950c9/drivers/lora/native/sx126x/sx126x.c#L474-L475 )
— RX state sets it electrically LOW.
This resulted in degraded rx performance.
2026-04-29 09:26:39 +02:00
liquidraver
51f7b5e7e4
do a full display reset after splashscreen
2026-04-29 09:16:18 +02:00
liquidraver
16ea239234
Merge pull request #18 from InvisibleSymbol/fix-rak4631-rx
...
fix(rak4631): dont touch sx1262 power-enable pin
2026-04-29 08:53:49 +02:00
InvisibleSymbol
b1c358c574
fix(rak4631): dont touch sx1262 power-enable pin
...
Upstream Zephyr DTS
[rak4631_nrf52840.dts:124](https://github.com/zephyrproject-rtos/zephyr/blob/c6f781a4988fbb5cc3420f74e36add5ef65dbb94/boards/rakwireless/rak4631/rak4631_nrf52840.dts#L124 )
declares P1.05 as `rx-enable-gpios = <&gpio1 5 GPIO_ACTIVE_LOW>`.
MeshCore treats the same pin as `SX126X_POWER_EN`
([variants/rak4631/variant.h:155](https://github.com/meshcore-dev/MeshCore/blob/1a7b3614a8439894714a58af55ab7f501e6bb928/variants/rak4631/variant.h#L155 ))
and only ever drives it HIGH (= module on,
[RAK4631Board.cpp:51](https://github.com/meshcore-dev/MeshCore/blob/1a7b3614a8439894714a58af55ab7f501e6bb928/variants/rak4631/RAK4631Board.cpp#L51 )).
Our driver toggles it per direction at
[sx126x.c:474-475](https://github.com/zephyrproject-rtos/zephyr/blob/684c9e8f32e4373a21098559f748f06915f950c9/drivers/lora/native/sx126x/sx126x.c#L474-L475 )
— RX state sets it electrically LOW.
This resulted in degraded rx performance.
2026-04-28 21:47:41 +02:00
liquidraver
067e53b474
fix RX duty cycling logic
v20260428.134456
2026-04-28 15:31:03 +02:00
liquidraver
1092c49a7d
port vanilla duty cycling logic
v20260428.125718
2026-04-28 14:43:12 +02:00
liquidraver
b57df41753
micro-tweak: skip APC math when APC is off
2026-04-28 14:18:10 +02:00
liquidraver
e18d017b2c
refactor repeater prefs changes
v20260428.120305
2026-04-28 13:49:08 +02:00
liquidraver
bf9ad0ef40
tune delay knobs
2026-04-28 13:49:08 +02:00
liquidraver
7ecf647af8
runtime guard agc reset if rx duty cycle is enabled
2026-04-28 13:49:08 +02:00
liquidraver
85c60e613b
make our sx driver more aligned with radiolib's logics
2026-04-28 13:49:08 +02:00