Commit graph

930 commits

Author SHA1 Message Date
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
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
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
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
49b37d5622 * minor bounds fix 2026-04-18 21:32:41 +10: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
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
txkbaldlaw
b898e7a04e Add DFU to BLE Stack 2026-04-16 16:04:30 -05: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
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
Scott Powell
6a939ed8f8 * RegionMap: new 'default' region 2026-04-12 22:06:10 +10:00
Liam Cottle
a9de5bfc0c
Merge pull request #1612 from weebl2000/default-button-low
Default button polarity to active-LOW across all firmware types
2026-04-12 23:30:28 +12:00
Liam Cottle
612aa66fc8
Merge pull request #2075 from pcmoore/working-ina3221
RFE: allow for INA3221 macro overrides in platform.io files
2026-04-12 22:49:17 +12:00
Wessel Nieboer
0a13ac7fc7
Default button polarity to active-LOW across all firmware types
Nearly all LoRa boards use a boot button that pulls to ground when
pressed.
2026-04-04 13:19:13 +02:00
KPrivitt
27f732653b
Added RAK12035 Soil Moisture and Temperature Sensor (#2223)
Some checks failed
PR Build Check / build (Heltec_v3_companion_radio_ble) (push) Has been cancelled
PR Build Check / build (Heltec_v3_repeater) (push) Has been cancelled
PR Build Check / build (Heltec_v3_room_server) (push) Has been cancelled
PR Build Check / build (LilyGo_Tlora_C6_repeater_) (push) Has been cancelled
PR Build Check / build (PicoW_repeater) (push) Has been cancelled
PR Build Check / build (RAK_4631_companion_radio_ble) (push) Has been cancelled
PR Build Check / build (RAK_4631_repeater) (push) Has been cancelled
PR Build Check / build (RAK_4631_room_server) (push) Has been cancelled
PR Build Check / build (wio-e5-mini_repeater) (push) Has been cancelled
2026-04-03 22:54:24 +13:00
Quency-D
2cbe0c0398 Fixed the initialization error of the BME680 sensor. 2026-04-02 10:24:17 +08:00
Liam Cottle
b934daa990
Merge pull request #2007 from khudson/r1neo
Some checks are pending
PR Build Check / build (Heltec_v3_companion_radio_ble) (push) Waiting to run
PR Build Check / build (Heltec_v3_repeater) (push) Waiting to run
PR Build Check / build (Heltec_v3_room_server) (push) Waiting to run
PR Build Check / build (LilyGo_Tlora_C6_repeater_) (push) Waiting to run
PR Build Check / build (PicoW_repeater) (push) Waiting to run
PR Build Check / build (RAK_4631_companion_radio_ble) (push) Waiting to run
PR Build Check / build (RAK_4631_repeater) (push) Waiting to run
PR Build Check / build (RAK_4631_room_server) (push) Waiting to run
PR Build Check / build (wio-e5-mini_repeater) (push) Waiting to run
Muzi Works R1 Neo support
2026-04-02 00:36:44 +13:00
Brian Widdas
811ac1cd02 Add missing methods in ESPNOWRadio()
ESP-NOW radios (ie, Generic_ESPNOW_* variants) do not compile due to
missing methods

Changes in January 2026 (019bbf74) to add additional stats (receive errors)
to CMD_GET_STATS was not implemented in the ESPNOWRadio() class

Changes in March 2026 (9a95e25e) to add setRxBoostedGainMode to all devices
rather than just SX1262/SX1268 were not applied to the ESPNowRadio() driver

Specifically, this change adds the following to ESPNOWRadio()
* getPacketsRecvErrors()    - always returns 0
* getRxBoostedGainMode()    - always returns false
* setRxBoostedGainMode()    - does nothing
2026-03-30 04:25:08 +01:00
Wessel Nieboer
728b586c3a
Address comments 2026-03-23 14:31:08 +01:00
Wessel Nieboer
741392889d
Fix memcp compare length off by one
Co-authored-by: ViezeVingertjes <michael.overhorst@gmail.com>
2026-03-23 14:31:08 +01:00
Wessel Nieboer
0aa0ec1f16
Add get/set dutycycle command
We translate to af internally, it's easier to store and doesn't break
stored prefs. Made get/set af command show deprecated, but it still
works fine.
2026-03-23 14:31:07 +01:00
liamcottle
1d61df72c3 add define for reserved group data type 2026-03-23 23:09:35 +13:00
liamcottle
ed326255d5 add support for direct paths when sending group data 2026-03-23 21:46:21 +13:00
Liam Cottle
91aed048e9
Merge pull request #1928 from dz0ny/feat/grp-data-upstream
feat: Add support for PAYLOAD_TYPE_GRP_DATA
2026-03-23 21:41:51 +13:00
Rastislav Vysoky
285fc685c5 allow to set lower LoRa frequency 2026-03-22 13:54:42 +01:00
Wessel Nieboer
ff5aad71a6
Make radio.rxgain true by default after upgrades 2026-03-22 08:35:32 +01:00
Quency-D
f6cfed66b3 add heltec_mesh_node_t096 board. 2026-03-20 15:56:09 +08:00
Paul Moore
913a27da20 EnvironmentSensorManager: allow for INA3221 macro overrides
Allow for platformio.ini files to override the default values for the
following INA3221 related macros:

  TELEM_INA3221_ADDRESS
  TELEM_INA3221_SHUNT_VALUE
  TELEM_INA3221_NUM_CHANNELS

Signed-off-by: Paul Moore <paul@paul-moore.com>
2026-03-19 21:55:13 -04:00
Janez T
ae9fcb3c0b fix: Rename grp dev type
ref: #1928
2026-03-19 09:35:02 +01:00
Janez T
2f68769185 fix: Widen grp data type
ref: #1928
2026-03-19 09:25:42 +01:00
Janez T
1fb26e7623 fix: Drop grp data timestamp
ref: #1928
2026-03-19 09:22:12 +01:00
Janez T
f25d7a882a fix: Align channel data framing
ref: #1928
2026-03-18 20:14:22 +01:00
Janez T
a21b83b127 fix: address comments
ref:
2026-03-18 20:09:11 +01:00
Janez T
9b84278607 feat: Add support for PAYLOAD_TYPE_GRP_DATA
Docs changes are to reflect how it is currently in fw

This adds ability to send datagram data to everyone in channel
2026-03-18 20:08:52 +01:00
João Brázio
83b7a95679
Merge pull request #2 from weebl2000/2026/remote-lna
Make sure LR1110 builds
2026-03-16 09:55:00 +00:00
João Brázio
92bef49c55
Merge branch 'dev' into 2026/remote-lna 2026-03-16 09:40:10 +00:00
João Brázio
274e00df50
Merge remote-tracking branch 'upstream/dev' into 2026/remote-lna 2026-03-16 09:37:55 +00:00
Wessel Nieboer
0e62240119
Set AUTO_OFF_MILLIS to 0 for E213, E290 2026-03-15 15:51:31 +01:00
Wessel Nieboer
696323c11b
Fix Heltec E213 and E290 e-ink board builds 2026-03-15 15:51:25 +01:00
Wessel Nieboer
9af332b6e6
Make sure LR1110 builds 2026-03-13 13:48:36 +01:00