Multi-protocol support for NRF52840 Feather express in Arduino IDE

Please tell us which board you are using.
For CircuitPython issues, ask in the Adafruit CircuitPython forum.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Post Reply
User avatar
tom_anderson
 
Posts: 1
Joined: Sat Jan 04, 2025 3:14 am

Multi-protocol support for NRF52840 Feather express in Arduino IDE

Post by tom_anderson »

Hi Staff

I have been using an NRF52840 feather express (PID: 4062) with the Arduino IDE.

For my project, I want to rapidly switch between ESB and BLE with the nrf52840 to act as a “middle-man” between a few NRF transceivers (ESB) and an iOS device (BLE). Simply put, it would receive a BLE message and pass it on to the NRF network, then receive a response from the NRF network and pass it on via BLE. Each of the NRF transceivers would only be sending a maximum of 450 bytes per second. I would like to avoid intermittently sending data in large blocks, since I want to use it to smoothly plot some sensor data in real-time (around 20fps minimum).

I am able to get the nrf52840 to communicate with other NRF transceivers via ESB just fine with this library ( https://github.com/TMRh20/nrf_to_nrf ) and I am able to communicate to my iOS device just fine using the Adafruit BLEuart example and the Bluefruit connect App. What is causing me grief is getting the nrf52840 to switch between ESB and BLE modes.

I’ve seen some posts on Nordic’s DevZone where they use MPSL (multi-protocol service layer) or “timeslot API” to rapidly switch between BLE and ESB through some low-level libraries in the NRF SDK:
https://devzone.nordicsemi.com/f/nordic ... sible-pair

Is there any support for a multi-protocol application like this using the Arduino IDE or will I have to migrate to the NRF SDK and get a J-link?

Thanks
Tom Anderson

Post Reply
Please be positive and constructive with your questions and comments.

Return to “Feather - Adafruit's lightweight platform”