Posts: 2
Registered: ‎06-02-2015

RAIL issues while receiving packets

Hello together,
I'm working with the EFR32FG SoC (Developmentboard: BRD4250B) and have troubles to receive packets. Currently, 10 additional Bytes are received (before my actual payload). I'm using the simple-trx example. In this example a pattern: 0x0F 0x16 0x11... etc. is send. I made a breakpoint on the RAILCb_RxPacketReceived function and began to read out the receive Buffer. However instead of reading values like 0x0F, 0x16 I found out that the first 10 Bytes of the array contain garbage and after these 10 Bytes my data can be found.

I tried multiple radio configurations (868 MHz, 2.4 GHz presets as well as custom configurations). The problem stayed the same. In order to locate the issue, i manually read out the Rx-FIFO inside the RAILCb_AllocateMemory. Doing this way, i was able to read out the data I expected without leading 10 Bytes of garbage.
Therefore, I want to know, why are 10 Bytes added via the library at the beginning and what does these 10 Bytes mean or do i do something wrong? Furthermore, is it possible to go around the RAILCb_AllocateMemory callbacks and to read out the fifo manually on the RAILCb_RxPacketReceived callback? What do i have to do for that (simply deactivating those memory allocation related callbacks)?
However, to understand my problem, you will find the example project (and also the changes i made to receive data correctly) in the attachments.
Thank you in advance

Posts: 320
Registered: ‎02-14-2014

Re: RAIL issues while receiving packets

Hi Björn,


RAILCb_RxPacketReceived returns to you the memory handle for where the received packet and its appended information was stored. This handle will be the same as something returned by the RAILCb_AllocateMemory() API. This handle will hold a RAIL_RxPacketInfo_t structure starting at offset 0 in the buffer. This structure starts with the appended information before the payload data.


typedef struct RAIL_RxPacketInfo {

uint16_t dataLength;
uint8_t dataPtr[];


You can find this information and further details in the RAIL API document in the SDK install folder at


Please note also , that this sample app demonstrates the packet based data management method, but the RAIL provides also a FIFO based method. See details at


Silicon Labs