This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

How to use radio without softdevice correctly?

Hello,

I want to use radio to send and receive data periodly. So I refer TimeSlot API in 'devzone.nordicsemi.com/.../setting-up-the-timeslot-api',and also refer the radio demo without softdevice in '\examples\peripheral\radio\'.

I found the softdevice redundant, so I want to use timer and the compare event to create the period, and use SWI and EGU to decide when to send data. However, I found that two nodes can send and receive data with API successfully, but data cannot be sent normally with radio demo.

I think the data was not really sent because of the incorrect setting before it was sent,. Because if I want to wait NRF_RADIO->EVENTS_END turn to 1,the process was blocked at the 11th timeslot, but if I don't wait and instantly use 'nrf_balloc_free(&m_sync_pkt_pool, (void*) NRF_RADIO->PACKETPTR);', I cannot receive any packet in the other node.

Could someone tell me how to set the RADIO configuration correctly, so that nodes can send periodically and be in receiving state at other time?

My code is as follows, where ‘ble_node’ program uses TimeSlot API and 'peripheral' program uses radio without softdevice.

Thanks very much!

Parents Reply Children
No Data
Related