Commit graph

918 commits

Author SHA1 Message Date
Ryan Gregg
3c1a0941aa Fix POE boot failure on RAK4631 Ethernet builds
Drive WB_IO2 (slot power switch) HIGH via early constructor before the
Arduino framework initializes. Without this, the board brownouts on
POE-only power because the slot MOSFET isn't enabled early enough for
the RAK13800 POE module to deliver power to the baseboard.

Also remove the W5100S hardware reset pulse from Ethernet init — the
chip comes out of power-on reset cleanly, and toggling reset kills
the PHY link which breaks POE power delivery.
2026-03-20 17:56:04 -07:00
Ryan Gregg
eba2446747 Merge upstream/dev into rak-ethernet
Resolve conflicts: keep both Ethernet CLI and SenseCAP power-off
button code in repeater, keep both Ethernet docs and power management
CLI docs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 11:07:09 -07:00
Scott Powell
bb8dc5b55b Merge branch 'main' into dev 2026-03-12 18:14:56 +11:00
ripplebiz
792f299986
Merge pull request #1873 from Specter242/codex/sensecap-solar-led-poweroff-parity
sensecap solar: add poweroff/shutdown support and nrf52 PM parity
2026-03-12 18:13:14 +11:00
Ryan Gregg
3e9ceba24a Updates based on PR review feedback from liamcottle 2026-03-10 22:35:31 -07:00
Ryan Gregg
aea64e1f19 Address PR review feedback for Ethernet support
- Add #pragma once to SerialEthernetInterface.h
- Rename TCP_PORT to ETH_TCP_PORT with #ifndef guard
- Fix typos: "initalizing" → "initializing"
- Fix #elif without condition → #else for STM32 block
- Replace infinite loop on ETH init failure with halt()
- Remove heartbeat Serial.print(".") output
- Remove dead beginETH() call (ETH_ENABLED, not RAK_ETH_ENABLE)
- Comment out MESH_DEBUG and ETH_DEBUG_LOGGING build flags

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 20:43:59 -07:00
Ryan Gregg
70b51bd096 Add native Ethernet support for RAK4631 repeater, room server, and companion
Add W5100S Ethernet adapter support for RAK4631-based firmware, enabling
TCP CLI access on port 23 as an alternative to BLE/Serial connections.

- New SerialEthernetInterface for nRF52 with DHCP, reconnection handling,
  and shared WB_IO2 power pin management with GPS module
- Ethernet build targets for repeater, room server, and companion firmware
- Prevent GPS from toggling WB_IO2 when Ethernet module is active
- CI build check for all three ETH firmware targets

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 20:43:59 -07:00
MGJ
011c5ba102 Add support for the GAT562 Mesh Tracker Pro device 2026-03-09 14:25:24 +08:00
MGJ
dc48126baf Add support for the GAT562 Mesh Tracker Pro device 2026-03-09 13:13:41 +08:00
Confi
5188221584 sensecap_solar: fix LED definitions (white=11, blue=12) 2026-03-07 09:59:30 +01:00
Liam Cottle
76524c703f
Merge pull request #1589 from marnick-hartgers/gps_sencecap_solar_p1
Added gps support for Sensecap p1 solar
2026-03-07 21:31:38 +13:00
Liam Cottle
aad56bb334
Merge pull request #1936 from Quency-D/dev-heltec-tracker-v2
Update Heltec Tracker v2 to version KCT8103L.
2026-03-07 17:59:19 +13:00
Liam Cottle
bd47d8d86b
Merge pull request #1391 from R6DJO/fix_t1000-e_temp
T1000-E: Negative temperature values incorrectly displayed due to char signedness
2026-03-07 16:49:54 +13:00
Liam Cottle
ca476488bb
Merge pull request #1364 from weebl2000/pass-rtc_clock-to-locationprovider
Pass rtc_clock to MicroNMEALocationProvider in all variants
2026-03-07 16:41:29 +13:00
Quency-D
7a8370fa69
Fixed a bug in the LORA_TX_POWER comment. 2026-03-06 16:04:47 +08:00
Quency-D
cdca79540f Update Heltec Tracker v2 to version KCT8103L. 2026-03-06 14:19:07 +08:00
Wessel Nieboer
67d22401b1
Pass rtc_clock to all MicroNMEALocationProvider instances
Enable GPS time synchronization across all variants by passing
&rtc_clock to MicroNMEALocationProvider. When GPS gets a valid
fix, the RTC clock is now updated automatically every 30 minutes.

Updated 16 variants: rak4631, lilygo_tbeam_SX1262, rak_wismesh_tag,
lilygo_tbeam_supreme_SX1262, thinknode_m3, heltec_v4, thinknode_m1,
lilygo_tbeam_SX1276, meshadventurer, nano_g2_ultra, heltec_v3,
promicro, xiao_c3, heltec_tracker_v2, keepteen_lt1, heltec_mesh_solar.
2026-03-03 15:45:07 +01:00
Wessel Nieboer
c0c9c17cf5
and buildscript 2026-03-03 15:37:33 +01:00
Wessel Nieboer
780720c117
and board! 2026-03-03 15:37:33 +01:00
Wessel Nieboer
90fcd1043f
Fix ikoka handheld build
The extends was wrong.
2026-03-03 15:37:32 +01:00
Liam Cottle
ba3d9e264e
Merge pull request #1836 from weebl2000/fix-rak3401-sky66122-11-fem
Fix RAK3401 SKY66122-11 FEM control: enable CSD/CPS for proper PA/LNA operation
2026-03-03 23:51:42 +13:00
Liam Cottle
67779aded8
Merge pull request #1600 from weebl2000/heltec_deep_sleep_lna
Hold GC1109 PA_POWER during deep sleep for LNA RX wake
2026-03-03 23:20:22 +13:00
Wessel Nieboer
59d9770ab9
Add GPS support Heltec Wireless Tracker v1.x
Pin mapping verified against HTIT-Tracker V0.5 schematic:
- GPIO35 (GPS_EN): N-ch MOSFET drives P-ch high-side switch, active HIGH
- GPIO36 (GPS_RST): hardware reset, active LOW
- GPIO33/34: UART TX/RX

Delegates power management to MicroNMEALocationProvider begin()/stop()
which independently controls GPS power via GPS_EN and shares VEXT with
the display through RefCountedDigitalPin.
2026-02-28 19:09:28 +01:00
Wessel Nieboer
49d8313501
Fix pin mapping & TX switch (it's DIO2) 2026-02-28 19:09:06 +01:00
Wessel Nieboer
5a5568ed56
Drive CTX low first 2026-02-28 19:09:06 +01:00
Wessel Nieboer
ac2aa03b09
Add SX126X_REGISTER_PATCH for RAK3401 2026-02-28 19:09:06 +01:00
Wessel Nieboer
70f1ad4aeb
Fix RAK3401 SKY66122-11 FEM control: enable CSD/CPS for proper PA and LNA operation
The RAK13302 1W module uses a Skyworks SKY66122-11 front-end module with
three digital control pins (CSD, CTX, CPS) that must be actively driven
by the host MCU. The previous code only managed CTX (GPIO 31) — toggling
it for TX/RX — but never initialized CSD (GPIO 24) or CPS (GPIO 21),
leaving them floating with no pull-up/pull-down resistors on the PCB.

With floating CSD and CPS, the SKY66122 was in an undefined operating
mode:
- The 30 dB TX PA may not have been reliably engaging
- The 16 dB RX LNA was never reliably active, degrading receive
sensitivity
2026-02-28 19:09:06 +01:00
Wessel Nieboer
2bb6f636a4
Add 1ms delay after powering PA (cold-boot) 2026-02-28 19:05:31 +01:00
Wessel Nieboer
329e408197
Hold GC1109 PA_POWER during deep sleep for LNA RX wake
The GC1109 FEM needs its VFEM_Ctrl pin held HIGH during deep sleep
to keep the LNA active, enabling proper RX sensitivity for
wake-on-packet. Without this, the LNA is unpowered during sleep
and RX wake sensitivity is degraded by ~17dB.

Release RTC holds in begin() after configuring GPIO registers
(not before) to ensure glitch-free pin transitions on wake.

Trade-off: ~6.5mA additional sleep current for significantly
improved wake-on-packet range.
2026-02-28 19:05:31 +01:00
Liam Cottle
eee42c5099
Merge pull request #1569 from IoTThinks/MCdev-Fixed-Incorrect-Release-of-RefCountedDigitalPin
Fixed RefCountedDigitalPin.h and SSD1306Display for Heltec v4
2026-02-28 17:35:17 +13:00
Specter242
e08dcbdd03 sensecap solar: stabilize wake pin and add button hold poweroff 2026-02-27 22:51:19 -05:00
Specter242
e323755990 sensecap solar: add poweroff command and board power/LED parity 2026-02-27 22:12:12 -05:00
Scott Powell
f4748a7f9d * misc 2026-02-24 21:30:04 +11:00
callum5892
9f4eeeeceb Added build flags for M5Stack Unit C6L
Enabled USB-CDC on boot for M5Stack_Unit_C6L_companion_radio_usb to fix serial connection issues
2026-02-23 17:31:18 +00:00
ripplebiz
9c318561da
Merge pull request #1792 from ElectroMW/feature/t-beam-supreme-improvements
T-Beam Supreme - Make full use of board's 8MB Flash and add Companion WiFi target
2026-02-23 12:38:56 +11:00
Sam Koucha
5a885bffe4 Make full use of board's 8MB Flash and add companion WiFI target 2026-02-22 18:14:39 +00:00
Sander van Grieken
3dc14976a0 add companion usb build target for Heltec Wireless Tracker 2026-02-22 17:57:36 +01:00
Kevin Le
13d0dff918 Reverted to use GPIO 17, 18 as I2C for Heltec v4 repeater 2026-02-18 22:38:24 +07:00
Kevin Le
44b80d00c2 Disabled periph_power for Heltec v4's display 2026-02-18 22:32:01 +07:00
Kevin Le
f6603fe7a5 Set back PIN_VEXT_EN_ACTIVE=HIGH 2026-02-18 22:32:01 +07:00
3DPGG
3e53df5082 Fix LilyGo_TLora_V2_1_1_6_terminal_chat build
This change addresses two issues. The first is that the
LilyGo_TLora_V2_1_1_6_terminal_chat build would try to compile
simple_repeater/MyMesh.cpp. All other examples of terminal chat
targets are instead building simple_secure_chat/main.cpp . This
change would align this build to the rest of the builds.

The second issue, found during the course of investigating the
first, stems from simple_repeater/MyMesh.cpp using the
MAX_NEIGHBOURS #define to control whether the neighbor list is kept.
Repeaters that keep this list must define this value, and if the
value is not defined, then all neighbor-related functionality is
compiled out. However, the code that replies to
REQ_TYPE_GET_NEIGHBOURS did not properly check for this #define,
and thus any target that compiles simple_repeater/MyMesh.cpp
without defining MAX_NEIGHBOURS would get an undefined variable
compilation error.

As a practical matter though, there are no targets that compile
simple_repeater/MyMesh.cpp AND do not define MAX_NEIGHBOURS,
except this build due to the first issue. As a result, the
second issue is addressed only as a matter of completeness. The
expected behavior with this change is that such a repeater would
send a valid reply indicating zero known neighbors.
2026-02-16 18:10:29 -08:00
recrof
cafc212bb2 fix M5Stack Unit M6L build errors 2026-02-15 11:25:27 +01:00
ripplebiz
2220eca4f3
Merge pull request #1669 from Azuresword/fix/wio-tracker-l1-grove-sensor-v2
Fix WioTrackerL1 BLE companion: route sensors to Grove I2C bus (Wire1)
2026-02-15 15:55:25 +11:00
Liam Cottle
5ccae4bddc
Merge pull request #1671 from recrof/rak3112-fix
fix: usb and ui for rak 3112
2026-02-12 11:39:27 +13:00
Rastislav Vysoky
beff18c53b fix usb and build for rak 3112 2026-02-11 09:34:41 +01:00
dylan
f720338c03 Fix WioTrackerL1 BLE companion: route sensors to Grove I2C bus (Wire1)
Sensors connected via the Grove I2C connector (D18/D17) were not detected
because the firmware scanned the OLED I2C bus (Wire, D14/D15) by default.
Adding ENV_PIN_SDA/SCL flags directs EnvironmentSensorManager to use Wire1,
matching the physical Grove connector pinout.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 14:12:48 +08:00
ripplebiz
e33d93dc7f
Merge pull request #1611 from weebl2000/semtech-patch-tracker-v2
Enable register patch heltec tracker v2
2026-02-11 14:04:58 +11:00
Snayler
810fd561d2
Enable TX LED for LilyGo LoRa32 V2.1_1.6
Working on my device, green TX LED starts blinking every time I transmit
2026-02-09 23:20:29 +00:00
ripplebiz
3f33455b4d
Merge pull request #1570 from Quency-D/fix-heltec-power-consumption
Fix heltec-v4 power consumption
2026-02-09 16:49:49 +11:00
ripplebiz
248c3107b4
Merge pull request #1605 from ViezeVingertjes/kiss-modem-spec-compliance
Kiss modem spec compliance
2026-02-09 16:45:20 +11:00