ZBOSS NCP Serial Protocol

17 days ago
  •  Damien Kastner

Hello,


I am using the nRF52 series SoC from Nordic Semiconductor and work on a solution that communicates directly to the NCP running on the SoC without the ZBOSS NCP Host library.

Using the Zigbee R22 that Nordic was using in older NCS versions (ZBOSS Stack 3.x.x.x), I was able to communicate with the NCP following the ZBOSS NCP Serial Protocol, version 1.5 (https://cloud.dsr-corporation.com/s/BAn4LtRWbJjFiAm?dir=/&openfile=true) that is publicly available.

But now, I see that quite some changes have been made and I would like to know where I could find a more recent version of that Serial Protocol that is used by the NCP using Stack version 4.x.x.x.


Thank you in advance.

Replies (5)

RE: ZBOSS NCP Serial Protocol

Thank you for the provided information.


We would recommend you to first analyze the host side. If you require assistance with this matter or if you believe there is an issue with NCP protocol, please contact Nordic support team.


We appreciate your input and bringing this to our attention.


Best, The DSR IoT Team

SIGNATURE:Official DSR Account

RE: ZBOSS NCP Serial Protocol

Hello,


Here is the info:

  • Nordic SDK version: NCS v2.9.2
  • SoC chip: nRF52840 (using nRF52840 DK)
  • The host application is a custom software that interfaces with the NCP directly over serial (using ZBOSS NCP Serial Protocol). That means the ZBOSS library is not used on the host side, only the NCP.
  • The Zigbee NCP sample (firmware) comes from the ncs-zigbee add-on v1.2.1, which pulls NCS v2.9.2.


After flashing my DK with the NCP sample, I send a version request from the host side. This is what I get:


Current NCP versions:

FW: 0.2.9.2 (this is set in my code when building the NCP sample)

Stack: 4.2.2.0

Protocol: 0.0.0.0


Raw data:

2025-12-18 09:17:43,498 [INFO]: Opened /dev/ttyUSB1 serial port

2025-12-18 09:17:43,500 [DEBUG]: TX: b'DE:AD:0C:00:06:C0:7C:DC:5A:00:00:01:00:00'

2025-12-18 09:17:43,512 [DEBUG]: RX: b'DE:AD:05:00:06:01:8F'

2025-12-18 09:17:43,513 [DEBUG]: RX: b'DE:AD:1A:00:06:C8:E7:DB:49:00:01:01:00:00:00:00:02:09:02:00:00:02:02:04:00:00:00:00'

2025-12-18 09:17:43,513 [DEBUG]: TX: b'DE:AD:05:00:06:21:11'


Best regards.

RE: ZBOSS NCP Serial Protocol

Hello Damien,


In order for us to better assist you, please provide the following information:

  • Nordic SDK version
  • SoC chip
  • Host application/SoC FW are from Nordic SDK or from ZBOSS stack?
  • Which sample was used for testing?


Best, The DSR IoT Team

SIGNATURE:Official DSR Account

RE: ZBOSS NCP Serial Protocol

Hello,


Thanks for the link :)


I noticed something strange. As said, I am using the nordic SoC, and the latest NCP sample I can build from is using ZBOSS Stack version 4.2.2.0.

Once I communicate with the NCP from the host, I get this frame for APSDE Data Indication:

RX: b'DE:AD:42:00:06:CC:27:23:CB:00:02:06:03:16:1E:00:40:2F:87:00:00:00:00:01:01:00:00:04:01:E9:2F:87:00:00:C0:D3:00:00:18:03:01:04:00:00:42:04:45:4C:4B:4F:05:00:00:42:0D:45:6C:6B:6F:44:69:6D:6D:65:72:5A:48:41'


I underlined the Frame Type (0x02), the Command ID (0x0306) and the Param Length (0x16).


But in both ZBOSS Serial Protocol documents (v1.5 and v1.6), the Param Length is always supposed to be fixed at 21 bytes (0x15).

My question is, why is the stack sending APSDE data indication with a Param Length of 22 bytes and not 21, and why is it not specified in the Protocol documentation?


Best regards,

Damien

RE: ZBOSS NCP Serial Protocol

Hello Damien,

Thank you for contacting us.

Yes, you are correct, some changes have been made since the shared version (1.5). The updated version (1.6) can be accessed via the following link: https://cloud.dsr-corporation.com/s/ySxxtMfgNNMrnTs

Passw: DDyGs4DcE3

Expiration date: 03/11/2026


Let me know if there’s anything else we can do for you.


Best, The DSR IoT Team

SIGNATURE:Official DSR Account