mirror of
https://github.com/liquidraver/ZephCore.git
synced 2026-08-29 01:28:22 +00:00
logo thiccification and docs chores
This commit is contained in:
+4
-2
@@ -73,8 +73,10 @@ rtt_*.txt
|
||||
# JLink scripts and outputs
|
||||
*.jlink
|
||||
|
||||
# Documentation that was moved/deleted
|
||||
/docs/
|
||||
# Internal working docs: per-topic audit indexes, handovers, handoffs, and
|
||||
# other local-only scratch notes (see the HANDOVER_*/*_AUDIT_INDEX rules below,
|
||||
# kept for pre-2026-08-24 history/muscle memory even though this covers them).
|
||||
/devdocs/
|
||||
|
||||
# Temporary/scratch files
|
||||
*.tmp
|
||||
|
||||
@@ -31,6 +31,7 @@ compatible licenses:
|
||||
patches are applied to, and remain part of, the separately-licensed Zephyr
|
||||
source tree fetched via `west update`; they are not distributed as
|
||||
standalone files under this project's MIT license.
|
||||
- `img/kite-network-logo-*.svg` (at the repository root, one level above this
|
||||
file) — ZephCore logo, by recrof (https://github.com/recrof). Licensed under
|
||||
the WTFPL.
|
||||
- `img/kite-network-logo-bright.svg`, `img/kite-network-logo-dark.svg`,
|
||||
`img/kite-network-logo-thick-bright.svg`, `img/kite-network-logo-thick-dark.svg`
|
||||
— ZephCore logo, by recrof (https://github.com/recrof). Licensed under the
|
||||
WTFPL.
|
||||
@@ -1,4 +1,4 @@
|
||||
<h1>ZephCore — MeshCore for Zephyr RTOS <img src="img/kite-network-logo-bright.svg" alt="ZephCore logo" width="85" align="middle"></h1>
|
||||
<h1>ZephCore — MeshCore for Zephyr RTOS <img src="img/kite-network-logo-thick-bright.svg" alt="ZephCore logo" width="85" align="middle"></h1>
|
||||
|
||||
A port of [MeshCore](https://github.com/meshcore-dev/MeshCore/) LoRa mesh firmware from Arduino to [Zephyr RTOS](https://zephyrproject.org/). Aiming for full protocol compatibility with the original Arduino firmware and the MeshCore mobile apps.
|
||||
|
||||
@@ -15,63 +15,20 @@ Other benefits:
|
||||
|
||||
## Supported Boards
|
||||
|
||||
### nRF52840
|
||||
nRF52840, ESP32, nRF54L15, MG24, and STM32WL boards, covering SX126x, LR1110,
|
||||
LR2021, and SX127x radios. ZephCore also runs as a **native Linux process** on
|
||||
SBCs (Femtofox / Luckfox Pico Mini, Raspberry Pi + RAK6421 HAT) with a real
|
||||
SX1262 on SPI/GPIO and the companion app connecting over TCP — see
|
||||
[LINUX_NATIVE.md](docs/LINUX_NATIVE.md).
|
||||
|
||||
| Board | Radio | Extras |
|
||||
|-------|-------|--------|
|
||||
| **Wio Tracker L1** | SX1262 | GPS (L76KB), OLED (SH1106), joystick, buzzer, QSPI flash |
|
||||
| **Seeed T1000-E** | LR1110 | GPS (AG3335), LEDs, button |
|
||||
| **RAK4631** / **RAK WisMesh Pocket** | SX1262 | Same `rak4631` build. GPS (u-blox MAX-7Q), optional WisBlock OLED (SSD1306), I2C sensors (SHTC3, LPS22HB, BME680) |
|
||||
| **RAK3401 1W** | SX1262 + SKY66122 (30 dBm) | GPS (u-blox MAX-7Q, optional), I2C sensors |
|
||||
| **RAK WisMesh Tag** | SX1262 | GPS (AT6558R), accelerometer, buzzer |
|
||||
| **ThinkNode M1** | SX1262 | GPS, e-paper display (SSD1681), QSPI flash, buzzer, RGB LEDs |
|
||||
| **ThinkNode M3** | LR1110 | GPS, buzzer, two buttons, RGB LEDs |
|
||||
| **ThinkNode M6** | SX1262 | GPS (L76K), QSPI flash, RGB LEDs |
|
||||
| **LilyGo T-Echo** | SX1262 (TCXO 1.8V) | GPS (L76K), 1.54" e-paper (SSD1681), BME280, QSPI flash, touch-button backlight |
|
||||
| **Heltec T114** | SX1262 | 1.14" TFT (ST7789V); screenless build via `no_display.conf` |
|
||||
| **Heltec Mesh Node T096** | SX1262 + KCT8103L PA/FEM | UC6580 GNSS, ST7735S 160×80 TFT, button, LED, battery ADC |
|
||||
| **Ikoka Nano 30dBm** | SX1262 (E22-900M30S, 30 dBm PA) | RGB LEDs |
|
||||
| **GAT562 30S Mesh Kit** | SX1262 (30 dBm / 1 W PA) | RAK4631 core module. OLED (SSD1306), 5-way joystick, buzzer, GPS, BME280 pad, 2×18650 + solar |
|
||||
| **SenseCAP Solar** | SX1262 | GPS (L76K), QSPI flash, battery monitor |
|
||||
| **XIAO nRF52840 + Wio-SX1262** | SX1262 | Bare XIAO + Wio-SX1262 expansion |
|
||||
| **ProMicro SX1262** | SX1262 (E22-900M30S) | GPS, battery ADC, button, LED |
|
||||
| **muzi works R1 Neo** | SX1262 | GPS, RTC, buzzer, button, LEDs, soft power-off |
|
||||
|
||||
### ESP32
|
||||
|
||||
| Board | MCU | Radio | Extras |
|
||||
|-------|-----|-------|--------|
|
||||
| **XIAO ESP32-C3** | ESP32-C3 | SX1262 | BLE 5.0 |
|
||||
| **XIAO ESP32-C6** | ESP32-C6 | SX1262 | BLE 5.0, Wi-Fi 6 |
|
||||
| **XIAO ESP32-S3** | ESP32-S3 | SX1262 | BLE 5.0, 8MB flash, 8MB PSRAM |
|
||||
| **Station G2** | ESP32-S3 | SX1262 + PA (~20 dB gain) | OLED (SH1106), GPS, 16MB flash, 8MB PSRAM |
|
||||
| **LilyGo TLoRa C6** | ESP32-C6 | SX1262 | BLE 5.0, Wi-Fi 6 |
|
||||
| **LilyGo T3S3** | ESP32-S3 | SX1262 | OLED (SSD1306), button, TX LED, battery ADC, 4MB flash, 2MB PSRAM. **SX1262 variant only** — the SX1276/SX1280/LR1121 versions of this board are not supported |
|
||||
| **Heltec V3** | ESP32-S3 | SX1262 | OLED (SSD1306), 8MB flash |
|
||||
| **Heltec V4.2** | ESP32-S3 | SX1262 + GC1109 PA | OLED (SSD1306), 16MB flash, 2MB PSRAM |
|
||||
| **Heltec V4.3** | ESP32-S3 | SX1262 + KCT8103L PA | OLED (SSD1306), 16MB flash, 2MB PSRAM |
|
||||
| **Heltec Wireless Tracker V1.1** | ESP32-S3 | SX1262 | ST7735R 160×80 TFT, UC6580 GPS |
|
||||
| **Heltec Wireless Tracker V2** | ESP32-S3FN8 | SX1262 + KCT8103L PA/FEM | ST7735R 160x80 TFT, UC6580 GNSS, battery ADC |
|
||||
| **ThinkNode M9** | ESP32-S3 | LR1110 | ST7789 320x240 TFT, CC1167Q GPS, PCF8563 RTC, buzzer, 16MB flash, 8MB PSRAM |
|
||||
| **LilyGo T-Beam v1.2** | ESP32 (PICO-D4) | SX1262 | AXP2101 PMU, GNSS, USB-UART CLI |
|
||||
| **TTGO LoRa32** | ESP32 (PICO-D4) | **SX1276** (loramac-node backend) | SX127x reference board — **source-only, no published firmware** |
|
||||
|
||||
### Other
|
||||
|
||||
| Board | MCU | Radio | Extras |
|
||||
|-------|-----|-------|--------|
|
||||
| **XIAO nRF54L15 + Wio-SX1262** | nRF54L15 | SX1262 | FLPR multicore, RRAM storage |
|
||||
| **XIAO MG24 + Wio-SX1262** | EFR32MG24 | SX1262 | BLE (SiLabs blob) |
|
||||
| **Seeed LoRa-E5 mini** | STM32WL (STM32WLE5JC) | Integrated sub-GHz (SX1262-class) | No BLE/USB — companion + CLI over USART1 |
|
||||
|
||||
ZephCore also runs as a **native Linux process** on SBCs (Femtofox / Luckfox Pico Mini, Raspberry Pi + RAK6421 HAT) with a real SX1262 on SPI/GPIO and the companion app connecting over TCP — see [LINUX_NATIVE.md](zephcore/LINUX_NATIVE.md).
|
||||
|
||||
For exact `west build -b` board strings, flash methods, and special setup, see the [supported boards list](zephcore/boards/supported_boards.md) and the [Board Porting Guide](zephcore/boards/example_board/README.md).
|
||||
For the full board list with exact `west build -b` strings, radios, and
|
||||
hardware notes, see the [supported boards list](docs/supported_boards.md) and
|
||||
the [Board Porting Guide](zephcore/boards/example_board/README.md).
|
||||
|
||||
## Device Roles
|
||||
|
||||
- **Companion** (default) -- connects to MeshCore mobile apps via BLE. Contacts, channels, offline message queue.
|
||||
- **Repeater** -- forwards packets, configured via USB serial CLI. See the [Repeater CLI Command Reference](zephcore/Repeater_CLI_commands.md) for all available commands.
|
||||
- **Companion** (default) -- connects to MeshCore mobile apps via BLE/USB. Contacts, channels, offline message queue.
|
||||
- **Repeater** -- forwards packets, configured via USB serial CLI. See the [Repeater CLI Command Reference](docs/Repeater_CLI_commands.md) for all available commands.
|
||||
- **Room Server** -- store-and-forward shared message room (a "BBS"). Clients log in with an admin or guest password and post messages; the server pushes each new post to every other logged-in client. No BLE; configured via the same USB serial CLI as the repeater.
|
||||
- **Observer** (ESP32 only) -- listen-only node that publishes received LoRa packets to MQTT over WiFi STA. Configured at runtime via serial CLI.
|
||||
|
||||
@@ -193,7 +150,6 @@ The old `txdelay`, `rxdelay`, and `direct.txdelay` commands are still accepted f
|
||||
## Power Saving
|
||||
|
||||
- **LoRa RX duty cycle**: chip-autonomous receive windowing (sniff mode) reduces LoRa RX current from ~10-15mA to ~3-5mA. Off by default; toggle at runtime with `set rxduty on/off` (SX126x only — unsupported on LR1110 due to a mid-preamble lock issue, and on SX127x). Window timing is auto-sized per SF/BW/preamble from the SX126x datasheet constraints.
|
||||
- **Adaptive Power Control (APC)**: compiled in by default but disabled at runtime. Enable per-node with `set tx apc` -- automatically reduces TX power when echo SNR shows excess margin, ramping back up if echoes drop. See [apc.md](zephcore/apc.md).
|
||||
- **Production by default**: No logging, no asserts, reboot-on-fatal. Add `debug.conf` to enable logging.
|
||||
- **GPIO-gated GPS**: Powered on only during fix acquisition
|
||||
|
||||
@@ -263,7 +219,7 @@ zephcore/
|
||||
|
||||
## License
|
||||
|
||||
MIT License — see [`zephcore/LICENSE`](zephcore/LICENSE). Same license as the
|
||||
MIT License — see [`LICENSE`](LICENSE). Same license as the
|
||||
upstream MeshCore project, which this work relies heavily on (see the
|
||||
[official meshcore repo](https://github.com/meshcore-dev/MeshCore/)).
|
||||
|
||||
|
||||
@@ -84,4 +84,4 @@ adverts take tens of minutes to accumulate after a reboot, so an operator
|
||||
syncing right after login always wins.
|
||||
|
||||
For the design details (consensus algorithm, security model, why the limits
|
||||
are what they are), see [ARCHITECTURE.md](zephcore/ARCHITECTURE.md) section 4.9.
|
||||
are what they are), see [ARCHITECTURE.md](ARCHITECTURE.md) section 4.9.
|
||||
@@ -19,10 +19,12 @@ sensecap_solar
|
||||
xiao_nrf52840
|
||||
lilygo_techo
|
||||
promicro_sx1262
|
||||
promicro_lr2021
|
||||
heltec_t114
|
||||
heltec_t096
|
||||
gat562_30s
|
||||
muziworks_r1neo
|
||||
lilygo_timpulse_plus
|
||||
```
|
||||
|
||||
> **RAK WisMesh Pocket** (WisBlock pocket): use `-b rak4631` — same board string and firmware as **RAK4631**.
|
||||
@@ -32,6 +34,10 @@ muziworks_r1neo
|
||||
> **SenseCAP MeshTracker X1** (`meshtracker_x1`): nRF52840 + LR2021, AG3335M dual-band L1+L5 GNSS, SPA06 barometer, DRV2605L vibration, YSN8900 RTC, 8 MB QSPI flash (`/ext`), RGB LED, buzzer. Untested on hardware — first ZephCore board to use a real LR2021. The RTC is treated as an RX8900 second-source; boot-time discovery validates that before trusting it.
|
||||
>
|
||||
> **Heltec Mesh Node T096** (`heltec_t096`): nRF52840 with SX1262 + KCT8103L PA/FEM, UC6580 GNSS, and ST7735S 160x80 TFT companion display. The external SPI flash footprint is documented in the board notes but left disabled until the device parameters are confirmed.
|
||||
>
|
||||
> **LilyGo T-Impulse Plus** (`lilygo_timpulse_plus`): nRF52840 wristband/tracker with SX1262 (GPIO antenna switch, not DIO2), SSD1315 64x32 OLED, u-blox MIA-M10Q GPS, 4 MB QSPI flash (`/ext`), touch button, haptic motor. Builds and ships in releases, but several parameters are inferred from vendor sources and not bench-verified (TCXO voltage, battery divider ratio, OLED offsets) — see the board README. Early hardware testing also showed occasional spontaneous reboots, untriaged.
|
||||
>
|
||||
> **ProMicro LR2021** (`promicro_lr2021`): nRF52840 SuperMini + Semtech LR2021, the first ZephCore board bring-up for that radio. Source-only — **not in `build.sh`, the release workflow, or the Mesh America catalog**, so no release carries a binary for it. The bring-up module was destroyed by an accidental 5V feed (LR2021 VBAT max ~3.7V); build it yourself if you want to continue testing on a fresh module.
|
||||
|
||||
## ESP32
|
||||
|
||||
@@ -129,4 +135,4 @@ me25ls02/nrf54l15/cpuapp
|
||||
|
||||
Not `west build -b` boards — `EXTRA_CONF_FILE` presets on top of `native_sim`
|
||||
for SBCs (Femtofox / Luckfox Pico Mini, Raspberry Pi + RAK6421 HAT). See
|
||||
[LINUX_NATIVE.md](../LINUX_NATIVE.md) for build commands and wiring.
|
||||
[LINUX_NATIVE.md](LINUX_NATIVE.md) for build commands and wiring.
|
||||
@@ -0,0 +1 @@
|
||||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="27.295432425256188 18.5 401.2045675747438 466" width="445" height="505"><style>.a{fill:none;stroke:#7698bb;stroke-linecap:round;stroke-linejoin:round;stroke-width:10}.b{fill:#dfefff}.c{fill:none;stroke:#c9e4ff;stroke-linecap:round;stroke-linejoin:round;stroke-width:10}</style><path fill-rule="evenodd" class="a" d="m104.7 378.1l34.9 10.7z"/><path class="b" d="m113.1 383c-2.7 4.5-8.5 6.1-13 3.4-4.6-2.6-6.1-8.4-3.5-12.9 2.6-4.6 8.4-6.1 13-3.5 4.5 2.6 6.1 8.4 3.5 13z"/><path class="b" d="m147.4 393.5c-2.6 4.6-8.4 6.1-13 3.5-4.5-2.6-6.1-8.4-3.5-13 2.7-4.5 8.5-6.1 13-3.4 4.6 2.6 6.1 8.4 3.5 12.9z"/><path fill-rule="evenodd" class="a" d="m178.7 327.2l24.9 26.7z"/><path class="b" d="m183.5 335.6c-4.5 2.6-10.3 1-12.9-3.5-2.7-4.6-1.1-10.4 3.4-13 4.6-2.6 10.4-1.1 13 3.5 2.6 4.5 1.1 10.3-3.5 13z"/><path class="b" d="m208 361.9c-4.6 2.6-10.4 1.1-13-3.5-2.6-4.5-1.1-10.3 3.5-13 4.5-2.6 10.3-1 12.9 3.5 2.7 4.6 1.1 10.4-3.4 13z"/><path fill-rule="evenodd" class="a" d="m148 332.8l8.2 35.6z"/><path class="b" d="m148 342.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m156 377.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path fill-rule="evenodd" class="a" d="m91.8 412.4l16.8 32.4z"/><path class="b" d="m94.1 421.8c-5.1 1.3-10.2-1.8-11.5-6.9-1.4-5.1 1.7-10.2 6.8-11.5 5.1-1.4 10.2 1.7 11.6 6.8 1.3 5.1-1.8 10.2-6.9 11.6z"/><path class="b" d="m110.6 453.6c-5.1 1.4-10.2-1.7-11.6-6.8-1.3-5.1 1.8-10.2 6.9-11.6 5.1-1.3 10.2 1.8 11.5 6.9 1.4 5.1-1.7 10.2-6.8 11.5z"/><path fill-rule="evenodd" class="a" d="m48.2 422.7l17.9 31.8z"/><path class="b" d="m50.9 432c-5 1.4-10.3-1.4-11.8-6.5-1.5-5 1.4-10.3 6.4-11.8 5.1-1.5 10.4 1.4 11.8 6.5 1.5 5-1.4 10.3-6.4 11.8z"/><path class="b" d="m68.5 463.3c-5.1 1.5-10.4-1.4-11.8-6.5-1.5-5 1.4-10.3 6.4-11.8 5-1.4 10.3 1.4 11.8 6.5 1.5 5-1.4 10.3-6.4 11.8z"/><path class="b" d="m37 484.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="c" d="m206 307q-1.5 40.5-42 42-40.5 1.5-42 42-1.5 40.5-42 42c-27 1-42 15-43 42"/><path class="a" d="m399 28l-84 57m84-57l-74 110m74-110l-24 98m-150-53l100 65m-100-65l90 12m-90-12l30 77m60-65l10 53m50-12l-50 12m50-12l44 77m-94-65l-70 102m70-102l15 67m-15-67l94 65m-94-65l-70 12m70-12m-70 12l-43 52m43-52v90m-43-38l43 38m164-37m-79 2l-37 57m37-57l-85 35m0 0l48 22m-48-22l-49.1 67.1m97.1-45.1m37-57l79-2"/><path class="c" d="m225 73l-13 129-6 105 213-104-20-175z"/><path class="b" d="m399 37.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m225 82.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m419 212.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m206 316.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m315 94.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m375 135.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m325 147.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m255 159.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m212 211.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m340 214.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m255 249.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m303 271.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m37 484.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/></svg>
|
||||
|
After Width: | Height: | Size: 4.1 KiB |
@@ -0,0 +1 @@
|
||||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="27.295432425256188 18.5 401.2045675747438 466" width="445" height="505"><style>.a{fill:none;stroke:#a6c7e9;stroke-linecap:round;stroke-linejoin:round;stroke-width:10}.b{fill:#4f6881}.c{fill:none;stroke:#4f6881;stroke-linecap:round;stroke-linejoin:round;stroke-width:10}</style><path fill-rule="evenodd" class="a" d="m104.7 378.1l34.9 10.7z"/><path class="b" d="m113.1 383c-2.7 4.5-8.5 6.1-13 3.4-4.6-2.6-6.1-8.4-3.5-12.9 2.6-4.6 8.4-6.1 13-3.5 4.5 2.6 6.1 8.4 3.5 13z"/><path class="b" d="m147.4 393.5c-2.6 4.6-8.4 6.1-13 3.5-4.5-2.6-6.1-8.4-3.5-13 2.7-4.5 8.5-6.1 13-3.4 4.6 2.6 6.1 8.4 3.5 12.9z"/><path fill-rule="evenodd" class="a" d="m178.7 327.2l24.9 26.7z"/><path class="b" d="m183.5 335.6c-4.5 2.6-10.3 1-12.9-3.5-2.7-4.6-1.1-10.4 3.4-13 4.6-2.6 10.4-1.1 13 3.5 2.6 4.5 1.1 10.3-3.5 13z"/><path class="b" d="m208 361.9c-4.6 2.6-10.4 1.1-13-3.5-2.6-4.5-1.1-10.3 3.5-13 4.5-2.6 10.3-1 12.9 3.5 2.7 4.6 1.1 10.4-3.4 13z"/><path fill-rule="evenodd" class="a" d="m148 332.8l8.2 35.6z"/><path class="b" d="m148 342.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m156 377.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path fill-rule="evenodd" class="a" d="m91.8 412.4l16.8 32.4z"/><path class="b" d="m94.1 421.8c-5.1 1.3-10.2-1.8-11.5-6.9-1.4-5.1 1.7-10.2 6.8-11.5 5.1-1.4 10.2 1.7 11.6 6.8 1.3 5.1-1.8 10.2-6.9 11.6z"/><path class="b" d="m110.6 453.6c-5.1 1.4-10.2-1.7-11.6-6.8-1.3-5.1 1.8-10.2 6.9-11.6 5.1-1.3 10.2 1.8 11.5 6.9 1.4 5.1-1.7 10.2-6.8 11.5z"/><path fill-rule="evenodd" class="a" d="m48.2 422.7l17.9 31.8z"/><path class="b" d="m50.9 432c-5 1.4-10.3-1.4-11.8-6.5-1.5-5 1.4-10.3 6.4-11.8 5.1-1.5 10.4 1.4 11.8 6.5 1.5 5-1.4 10.3-6.4 11.8z"/><path class="b" d="m68.5 463.3c-5.1 1.5-10.4-1.4-11.8-6.5-1.5-5 1.4-10.3 6.4-11.8 5-1.4 10.3 1.4 11.8 6.5 1.5 5-1.4 10.3-6.4 11.8z"/><path class="b" d="m37 484.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="c" d="m206 307q-1.5 40.5-42 42-40.5 1.5-42 42-1.5 40.5-42 42c-27 1-42 15-43 42"/><path class="a" d="m399 28l-84 57m84-57l-74 110m74-110l-24 98m-150-53l100 65m-100-65l90 12m-90-12l30 77m60-65l10 53m50-12l-50 12m50-12l44 77m-94-65l-70 102m70-102l15 67m-15-67l94 65m-94-65l-70 12m70-12m-70 12l-43 52m43-52v90m-43-38l43 38m164-37m-79 2l-37 57m37-57l-85 35m0 0l48 22m-48-22l-49.1 67.1m97.1-45.1m37-57l79-2"/><path class="c" d="m225 73l-13 129-6 105 213-104-20-175z"/><path class="b" d="m399 37.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m225 82.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m419 212.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m206 316.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m315 94.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m375 135.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m325 147.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m255 159.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m212 211.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m340 214.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m255 249.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m303 271.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/><path class="b" d="m37 484.5c-5.3 0-9.5-4.2-9.5-9.5 0-5.3 4.2-9.5 9.5-9.5 5.3 0 9.5 4.2 9.5 9.5 0 5.3-4.2 9.5-9.5 9.5z"/></svg>
|
||||
|
After Width: | Height: | Size: 4.1 KiB |
@@ -59,7 +59,7 @@ Quiet sites end up *more* sensitive than the old fixed default (fewer stomped pa
|
||||
off until the false alarms stop. CAD also now uses 4 detection symbols everywhere, which improves detection
|
||||
of an in-progress packet's payload (not just its preamble). Full guide, including the honest limitation
|
||||
that the "missed detection" side isn't locally observable, is in
|
||||
**[ADAPTIVE_CAD.md](https://github.com/liquidraver/ZephCore/blob/master/zephcore/ADAPTIVE_CAD.md)**.
|
||||
**[ADAPTIVE_CAD.md](https://github.com/liquidraver/ZephCore/blob/master/docs/ADAPTIVE_CAD.md)**.
|
||||
(SX127x boards have no hardware CAD and keep their RSSI-based gate.)
|
||||
|
||||
### New: V-Contact — admin your companion from the chat app, no cable
|
||||
|
||||
@@ -161,7 +161,7 @@ that empty slot. Unused slots are now skipped, so those messages are simply igno
|
||||
|
||||
If your node keeps finding the channel busy and can never transmit, it now says so after four seconds and
|
||||
flags it as an error. Before, a node that could hear everyone but never got heard back looked completely
|
||||
idle, with nothing in the log to explain it.
|
||||
idle, with nothing in the log to explain it. (in debug logs)
|
||||
|
||||
All roles, all boards.
|
||||
|
||||
@@ -232,12 +232,6 @@ instead of once. Now it does it once, halving the time it spends unable to hear
|
||||
|
||||
LR2021 boards only.
|
||||
|
||||
## An LR1110 too old to reach the mesh now says so
|
||||
|
||||
An LR1110 running firmware older than 0x0303 cannot be moved off the public LoRa channel. It transmits
|
||||
and receives perfectly well, but nobody on your mesh can see it. That now appears in the log instead of
|
||||
looking like a broken radio.
|
||||
|
||||
## New setting: switch the antenna amplifier's receive gain off
|
||||
|
||||
Some boards carry an extra amplifier chip between the radio and the antenna. It boosts what the node
|
||||
@@ -249,13 +243,6 @@ amplifier draws. Transmitting is untouched: every packet the node sends still go
|
||||
amplifier at full strength. `set radio.fem.rxgain 1` puts it back, and `get radio.fem.rxgain` shows where
|
||||
it stands. The node keeps the setting across reboots.
|
||||
|
||||
> [!WARNING]
|
||||
> **This costs range, and a lot of it.** With the receive side off the node goes substantially deafer —
|
||||
> on a Wireless Tracker V2 the measured noise floor moves by about 23 dB between the two settings. Distant
|
||||
> and weak neighbours simply stop being heard, while the node's own transmissions carry exactly as far as
|
||||
> before, so from the outside it still looks perfectly healthy. Only worth doing on a battery-powered node
|
||||
> where you already know every neighbour is close and strong.
|
||||
|
||||
Supported on the **Heltec T096**, **Wireless Tracker V2**, **WiFi LoRa 32 V4** and **WiFi LoRa 32 V4.3**.
|
||||
Everything else replies `Error: unsupported` — either the board has no such amplifier, or its amplifier is
|
||||
switched on by a line the radio driver cannot reach. The **RAK3401 1 W** is in that second group.
|
||||
@@ -280,7 +267,7 @@ LR1110 it never could, so the adaptive channel-busy detection had nothing to wor
|
||||
calibrated. And the check that stops a node transmitting over a packet it is already receiving was
|
||||
answering "not receiving" almost always, which quietly disabled it.
|
||||
|
||||
**LR1110 boards** (T1000-E, ThinkNode M9, Wio-SX1262 variants and others). If you switched `rxduty` off
|
||||
**LR1110 boards** (T1000-E, ThinkNode M9, Wio variants and others). If you switched `rxduty` off
|
||||
because the node seemed unreliable, it is worth switching back on.
|
||||
|
||||
## Contacts survive a power cut, and the flash lasts longer
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user