Crate umsh_bsp_sensecap_solar

Crate umsh_bsp_sensecap_solar 

Source
Expand description

Board support for the SenseCAP Solar Node P1 / P1-Pro (nRF52840 + SX1262).

Composes umsh-bsp-nrf52840 with the Solar Node’s pinout and on-board peripherals. This is the fourth nRF52840 + SX1262-class board, after the T-Echo, Wio Tracker L1, and T1000-E; the radio path is byte-for-byte the Wio Tracker L1 configuration (external RXEN, DIO2-as-RF-switch, DIO3 TCXO at 1.8 V) on a different pin map. The Platform bundle is therefore a verbatim copy of the Wio Tracker’s.

The same crate is intended to cover both the P1 and the P1-Pro, which are believed to differ only in GNSS module and battery pack.

Initial scope is bringup only:

  • USB-CDC handles (over the nRF native USB peripheral, chip BSP)
  • two user LEDs and two buttons for identification (Phase 1)
  • calibrated battery measurement (Phase 2)
  • SX1262 LoRa radio + external RXEN pin (Phase 3)

Future expansion (device-node behavior, low-battery System OFF + LPCOMP solar recovery, GNSS) is welcome but is not yet implemented.

See docs/hardware/sensecap-solar-node-p1-pro-hardware.md for the firmware-derived hardware reference.

§Pin map (nRF52840, from the Meshtastic seeed_solar_node variant)

The BSP and firmware hard-code the P0_xx / P1_xx embassy-nrf pins directly; the Arduino logical numbers below appear only for cross-referencing the vendor sources.

FunctionLogicalnRF pinNotes
GNSS standby/wake0P0.02polarity unverified
Radio DIO11P0.03
Radio RESET2P0.28
Radio BUSY3P0.29
Radio CS4P0.04
Radio RXEN5P0.05drive LOW at boot, then rf_switch_rx
GNSS UART TX (MCU→L76K)6P1.11NMEA 9600
GNSS UART RX (L76K→MCU)7P1.12
Radio SPI SCK8P1.13
Radio SPI MISO9P1.14
Radio SPI MOSI10P1.15
LED_A (“User LED”)11P0.15white, active-high (confirmed 2026-07-23)
LED_B (“Breathing”/TX LED)12P0.19blue, active-high (confirmed); heartbeat LED
PWR button (USER_BUTTON)13P1.01active-low, internal pull-up (confirmed); hold → System OFF. A press from System OFF reaches the bootloader, not the application
Grove SDA14P0.09NFC pin — NFCT off / UICR NFCPINS cleared for GPIO
Grove SCL15P0.10NFC pin, ditto
Battery ADC16P0.31/AIN7Phase 2
GNSS RESET (candidate)17P1.03never driven — input only until characterized
GNSS ENABLE18P1.05likely active-high; held inactive in bringup
Battery divider enable (n)19P0.14active-low per MeshCore, verify (Phase 2)
USR button (USER_BUTTON_2)20P1.07active-low, pull-up (confirmed); soft — pressing it does NOT cut the MCU rail. The only button that powers the node on
QSPI flash (P25Q16H)21–26see hw docreserved, unused (NV store is internal NVMC)