Commit graph

2714 commits

Author SHA1 Message Date
ndrpri
aaf31452eb
Merge 6ba0d20b5e into dee3e26ac0 2026-04-20 20:50:19 +00:00
Piero Andreini
6ba0d20b5e fix: correct board name typo in t_eth_elite.json (ELite -> Elite)
Ethernet support uses arduino-esp32 3.x native ETH API — ETHClass2
library has been removed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-20 22:50:13 +02:00
Piero Andreini
c34848af54 remove: drop ETHClass2 lib (replaced by arduino-esp32 3.x native ETH.h)
ETHClass2 was added in the initial T-ETH-Elite bringup but is no longer
referenced anywhere. Ethernet is now handled via the native arduino-esp32
3.x ETH API (ETH.begin / ETH.config) which is part of the framework —
no external library needed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-20 22:36:28 +02:00
Piero Andreini
3eda2d6c8f feat: Native Espressif SDK for W5500 Ethernet on SX1276/SX1262
- Replaced ETHClass2 with esp_eth.h / esp_netif.h
- Both SX1262 and SX1276 variants tested and working
- Ethernet + Radio coexist correctly on native SDK
- Added IP validation in CommonCLI.cpp to prevent boot-time garbage:
  * isValidUnicastIp() — rejects 0.x.x.x and >=224.x.x.x
  * isValidSubnetMask() — rejects non-contiguous masks
  * Applied in loadPrefsInt to zero out corrupted eth_* fields before netif apply
  * This fixes the 254.192.168.254 stale SPIFFS issue
2026-04-20 22:21:10 +02:00
Piero Andreini
b1d7edc1e7 security/fix: Final review corrections for Ethernet runtime config
Security fixes:
- IP validation: bounds checking for octets (0-255)
- ETH.config() return value now checked with distinct logging
- set ip 0.0.0.0 now enables DHCP (was rejected before)

Documentation:
- Fixed typo: 'thevalue' → 'the value'
- Added missing: advert.zerohop command documentation
- Clarified IP configuration behavior (DHCP, ETH_STATIC_IP fallback, reset to DHCP)

All identified issues addressed or documented as out-of-scope.
PR #2260 ready for maintainer review.
2026-04-20 22:21:10 +02:00
Piero Andreini
ce1b760b29 fix: Address Inxsamox86 review feedback
- Add PIN_USER_BTN_ANA=7 globally to platformio.ini
- Remove abs() from millis() comparison (unsigned overflow)
- Add auto declaration to ev variable in PIN_USER_BTN_ANA block

Fixes compilation errors on ESP32-S3 with analog button support
2026-04-20 22:21:10 +02:00
Piero Andreini
4542e6c86a feat: Add Ethernet runtime configuration CLI
- Add ip/gw/subnet/dns get/set commands with SPIFFS persistence
- Implement reconfigureEthernet() method for runtime config
- Fix TCP_CONSOLE_PORT conditional compilation
- Update platformio.ini for consistency (USE_ETHERNET)
- Document Ethernet settings and get bridge.type command
- Fixes #2196 #2197 hardware and console dependencies
2026-04-20 22:21:10 +02:00
Piero Andreini
ea72dd0f97 fix: Add #ifdef PIN_USER_BTN_ANA guard for boards without analog button
- Protect MomentaryButton instantiation with #ifdef PIN_USER_BTN_ANA
- Use dummy pin 0 when PIN_USER_BTN_ANA is not defined
- Allows compilation on boards without analog button support
- Applied to both SX1262 and SX1276 variants
2026-04-20 22:21:10 +02:00
Piero Andreini
b849d1c01b Fix TCPConsole to use runtime NodePrefs password instead of compile-time ADMIN_PASSWORD 2026-04-20 22:21:10 +02:00
Piero Andreini
b2be547c33 Add OTA support via Ethernet for T-ETH-Elite 2026-04-20 22:21:10 +02:00
Piero Andreini
add48e5cbe Fix analog_btn and UITask.cpp ESP32-S3 compilation errors 2026-04-20 22:21:10 +02:00
Piero Andreini
0dabed3c40 Fix UITask.cpp compilation errors on ESP32-S3 with PIN_USER_BTN_ANA 2026-04-20 22:21:10 +02:00
Piero Andreini
d4d98ebbbe Add TCP console for remote management via telnet/netcat 2026-04-20 22:21:10 +02:00
Piero Andreini
e97d6849d2 Add ETHClass2 lib, board definition and ETH companion radio support 2026-04-20 22:21:10 +02:00
Piero Andreini
de00cebbbb Add LilyGo T-ETH-Elite support (SX1262 and SX1276) 2026-04-20 22:21:10 +02:00
Scott Powell
dee3e26ac0 Merge branch 'dev'
# Conflicts:
#	docs/faq.md
2026-04-19 11:35:03 +10:00
Scott Powell
3751785400 * version 1.15.0 2026-04-19 11:27:55 +10:00
Scott Powell
49b37d5622 * minor bounds fix 2026-04-18 21:32:41 +10:00
ripplebiz
35b5548c0c
Merge pull request #2328 from recrof/xiao_c3-companion-fix
fix: remove sensors from xiao c3 companion because of bootloops
2026-04-18 20:44:15 +10:00
Liam Cottle
54a48da6b5
Merge pull request #2306 from petrkr/otaupdate2
SDK3.x: Fix OTA includes, bump Async version
2026-04-18 19:56:56 +12:00
Rastislav Vysoky
0899f66034 fix: remove sensors from xiao c3 companion because of bootloops 2026-04-18 09:42:27 +02:00
Liam Cottle
acdb41fcf9
Merge pull request #2103 from robekl/docs-radio-rxgain
docs: add radio.rxgain command reference
2026-04-18 19:05:43 +12:00
Liam Cottle
352fe5f4ae
Merge pull request #2315 from jirogit/fix/wireless-paper-companion-usb
feat: add USB Companion Radio env for Heltec Wireless Paper
2026-04-18 18:45:38 +12:00
liamcottle
cfe4b0b9a5 bleuart service stay registered first to prevent gatt cache issues on android when already paired 2026-04-18 14:43:47 +12:00
Liam Cottle
77d737beb9
Merge pull request #2323 from txkbaldlaw/updated-companion-dfu-from-mt
Add support for Companion BLE OTA updates on nRF devices
2026-04-18 12:17:16 +12:00
txkbaldlaw
96a16c238a Additional Update to FAQs regarding Companion OTA 2026-04-17 16:17:12 -05:00
txkbaldlaw
4f9764b1b4 Update FAQ to include Companion OTA DFU updates 2026-04-17 10:56:51 -05:00
Scott Powell
d7a3d41843 Merge branch 'default-scope' into dev 2026-04-17 16:30:19 +10:00
Scott Powell
91f3fa0bdf * CLI: 'region put ...' now defaults to flood allowed 2026-04-17 15:11:10 +10:00
Scott Powell
7cdb056cb3 * CLI: 'region default ...' now auto-creates the region 2026-04-17 15:02:04 +10:00
Scott Powell
77d02e844f * bug fix 2026-04-17 14:38:03 +10:00
Scott Powell
d3ba89c8bb * doco: "region default" 2026-04-17 13:49:57 +10:00
txkbaldlaw
b898e7a04e Add DFU to BLE Stack 2026-04-16 16:04:30 -05:00
Scott Powell
df1e12de3e * Repeater, room server: rule change for sendFloodReply() 2026-04-16 13:22:39 +10:00
jirogit
230c9af87b feat: add USB Companion Radio env for Heltec Wireless Paper 2026-04-15 19:43:51 -07:00
Scott Powell
d2fdd6fad4 * companion: FIRMWARE_VER_CODE now bumped to 11 2026-04-15 20:47:17 +10:00
Scott Powell
576e9dfd45 * bug fix 2026-04-15 15:44:22 +10:00
Scott Powell
4131a455a2 * repeater: refactored 'region' CLI commands -> CommonCLI
* room server: added RegionMap, and new CommonCLI wiring, default_scope handling
* sensor: only minimal RegionMap wiring. Still needs work to handle default-scope
2026-04-15 13:32:49 +10:00
Petr Kracik
e6c6282d40 Variants: Enable ElegantOTA on ESP32-C6 devices 2026-04-14 15:40:31 +02:00
Petr Kracik
3a9e1086af SDK3.x: Fix OTA includes, bump Async version 2026-04-14 15:28:11 +02:00
Scott Powell
569cfe177a * repeater: default-scope support 2026-04-14 17:51:34 +10:00
Liam Cottle
9f680d1744
Merge pull request #2302 from recrof/patch-2
xiao nrf52 companion usb: Add OFFLINE_QUEUE_SIZE=256
2026-04-14 18:36:50 +12:00
Rastislav Vysoky
bd05eca9f5
Add OFFLINE_QUEUE_SIZE=256 for xiao nrf52 companion usb 2026-04-13 21:09:56 +02:00
Huw Duddy
49221fc159
Merge pull request #2298 from TheMalkavien/fix/waveshare-rp2040-rx-sensitivity
Fixes #2294 : RX path not enabled on Waveshare RP2040
2026-04-14 01:36:26 +10:00
Scott Powell
efdd2b6a6c * companion: simplified the CMD_GET / CMD_SET _DEFAULT_FLOOD_SCOPE 2026-04-13 23:11:21 +10:00
Scott Powell
d131e8ae35 * companion: RegionMap now used in Datastore
* companion: new CMD_SET_DEFAULT_FLOOD_SCOPE
* support for regional builds with DEFAULT_REGION_SCOPE
2026-04-13 21:06:53 +10:00
Liam Cottle
748f9cfdda
Merge pull request #2072 from robekl/fix-t1000e-pin-comments
Fix T1000-E pin comments
2026-04-13 02:27:19 +12:00
Liam Cottle
7e4d5f723a
Merge pull request #2102 from robekl/docs-gps-output-format
docs: align gps output description with CLI
2026-04-13 01:51:51 +12:00
Liam Cottle
3ff8b17660
Merge pull request #1833 from olanwe/set-wifi-offline-queue-sizes
Set OFFLINE_QUEUE_SIZE=256 for missing WiFi companion environments
2026-04-13 01:41:07 +12:00
liamcottle
7d8d66c3e6 fix compilation error in wifi variants due to not enough ram 2026-04-13 01:03:32 +12:00