XRP Controller (RP2350): WiFi and Bluetooth both non-functional, everything else works

Hi all, I’m having a hardware issue with my XRP Controller board (RP2350 version) that I haven’t been able to resolve after extensive troubleshooting.

Symptom: Neither WiFi nor Bluetooth work. The XRP-xxxx WiFi access point never appears in my computer’s WiFi list, and attempting to use Bluetooth throws:

Failed to open cyw43 hci controller: 180
Traceback (most recent call last):
  File "<stdin>", line 20, in <module>
  File "/lib/ble/blerepl.py", line 98, in <module>
  File "/lib/ble/blerepl.py", line 93, in background_task
  File "/lib/ble/ble_uart_peripheral.py", line 60, in __init__
OSError: [Errno 22] EINVAL

What works fine: USB connection/programming via xrpcode.wpi.edu, REPL access,motors, only the wireless radio (WiFi + Bluetooth) is affected.

Troubleshooting already completed:

  • Full flash_nuke + clean reflash across MicroPython v1.25.0, v1.26.0, v1.26.1, v1.27.0, v1.28.0, v1.29.0 (official SparkFun XRP Controller builds)
  • Fresh XRPLib library install
  • Fresh batteries, tested fully off USB power
  • Isolated the fault: importing XRPLib.motor alone works fine; the failure is specific to the radio/webserver/bluetooth initialization path

Any help will be greatly appriciated.
Thank you.
Tanmay - AI3

Hi Tanmay,

The cyw43 error means that the microcode on the radio chip is not initializing correctly. Usually hitting the reset button while it is connected to the USB clears that up. But, if you continue to get that error I would contact Sparkfun to get a replacement board.