Sample using nrf_802154_receive_at

Hello,

is there any example using the IEEE 802.15.4 driver?

I was able to send and receive a some packets by using nrf_802154_receive and nrf_802154_transmit_raw, and now I would like to synchronize transmission and reception by using nrf_802154_receive_at and nrf_802154_transmit_raw_at. Unfortunately these functions don't even compile because the macro NRF_802154_DELAYED_TRX_ENABLED is not defined.

Where can I find an example that shows how to use those functions?

Best regards

Parents Reply Children
  • Hi Edvin,

    Sorry for the missing information.

    I'm using NCS 2.5 with the following:

    CONFIG_NRF_802154_RADIO_DRIVER=y
    CONFIG_NRF_802154_SOURCE_HAL_NORDIC=y
    and I'm using the functions defined in nrf_802154.h
    I'm not referring to any example. My question is: where do I find any example for the functions nrf_802154_receive_at and nrf_802154_transmit_raw_at?
    Best regards,
    Giuseppe
  • Hello,

    Sorry. I don't think we have any raw 802.15.4 samples. Only Openthread and Zigbee samples, which are drivers that utilize the 802.15.4 driver.

    The NRF_802154_DELAYED_TRX_ENABLED is defined if CONFIG_NRF_802154_SL_OPENSOURCE is not defined. Is it defined in your build? You can check the outcome of all your configuration files in the build folder:

    build\zephyr\include\generated\autoconf.h.

    Best regards,

    Edvni

  • Yes, CONFIG_NRF_802154_SL_OPENSOURCE is defined. I tired to set CONFIG_NRF_802154_SL_OPENSOURCE=n but since it remain defined it doesn't work. Is this an issue? Should it be

    #if CONFIG_NRF_802154_SL_OPENSOURCE

    instead of

    #ifdef CONFIG_NRF_802154_SL_OPENSOURCE

    Is there any other documentation (apart from API reference which is quite short)?

  • Ok, I need to run this by our Thread and Zigbee team. Is there a particular reason why you intend to use nrf_802154_receive_at() in particular? Perhaps you can describe the use case, and what you want to do with the application?

    Best regards,

    Edvin

  • I want to develop my own protocol on top of IEEE 802.15.4. Thread and Zigbee do not suit my needs. In order to optimize power consumption, I need to synchronize transmission and reception. I managed to do that by using nrf_802154_transmit_raw, nrf_802154_transmit_raw and nrf_802154_sleep, but I suppose that by using nrf_802154_receive_at and nrf_802154_transmit_raw_at it can be more efficient.

    Best regards,

    Giuseppe

Related