Can the XIAO nRF52840 do BLE Mesh?

I bought a few of these boards planning on using them with the nRF SDK, not realizing that they were incompatible due to the pins requred for J-link programming not being exposed. They could still be useful if I can program them to form a BLE mesh using Arduino, but I don’t see any example programs and Google yields nothing useful.


Work Fine…
GL :slight_smile:

1 Like

How is that working? I thought J-Link required SWDIO and SWDCLK pins for programming?

Edit - I think I found the expansion board you’re showing there, but how does it access those two pins?

The Secret is in the POGO pins… :slight_smile:

Even on the dev board, they terminate into the two row of pins you see connected to the adapter board for the jlink plus.
Debugging in Platform IO and vscode works well. Haven’t got Arduino Debug to go though.
GL :slight_smile:

Hi Issac - i was looking at these as Mesh Relay + Friends for our project powered via Solar Panel and a rechargeable battery pack - BUT … i read on the Nordic Web Site that the nRF52840 has MESH compatability issues the version below in BOLD is compatible but the second version is not - i cant find the oard version on the SEEED web site but watch out for this - also Nordic don’t actually explain what limited compatibility means!!

If you work it our can you paste an answer back here - thanks - RB

|nRF52840_xxAA|PCA10056|S140 v6.0.0/v6.1.0/v6.1.1/v7.0.1/v7.2.0
S113 v7.0.1/v7.2.0

|nRF52840_xxAA ([limited compatibility]|PCA10059|S140 v6.0.0/v6.1.0/v6.1.1/v7.0.1/v7.2.0
S113 v7.0.1/v7.2.0

Source: ITS HERE

Ah I see - thanks! I’ve ordered some of those boards and we’ll see how it goes :slight_smile:

A lot of the stuff in the InfoCenter from Nordic seems to be out of date as they’ve switched to the nRF Connect SDK, I don’t know how much that changes things.

Yes, the XIAO nRF52840 can support Bluetooth Low Energy (BLE) Mesh networking. The nRF52840 is a powerful SoC (System-on-Chip) that is capable of supporting BLE Mesh and other wireless networking protocols.

It is possible to program nRF5 boards to form a BLE mesh network using the Arduino IDE. Here are the general steps you can follow:

  1. Install the Arduino IDE: If you have not already done so, download and install the Arduino IDE from the official Arduino website.
  2. Install the nRF5 Board Support Package: In order to program the nRF5 boards with the Arduino IDE, you will need to install the appropriate board support package (BSP). You can find instructions for installing the BSP in the official Arduino nRF5 Core documentation.
  3. Set up the BLE Mesh library: The BLE Mesh library provides a set of APIs for creating and managing mesh networks. You can find instructions for installing and using the library in the official Arduino BLE Mesh library documentation.
  4. Write your mesh application: Once you have installed the necessary software, you can write your application code. You can find example programs in the official Arduino BLE Mesh library documentation.

Note that since the nRF5 boards you have do not expose the pins required for J-Link programming, you will need to use a different method for uploading your program to the board. One option is to use a bootloader, such as the one provided by the Adafruit nRF52 Bootloader. Another option is to use a SWD (Serial Wire Debug) programmer, such as the Segger J-Link or the ST-LINK/V2.

I hope this helps! Let me know if you have any further questions.

1 Like