Difference between dwm_mbox_put() and dwm_nvm_usr_data_set() in dwm-simple

I was wondering as per the title what the difference is between dwm_mbox_put() and dwm_nvm_usr_data_set() functions in dwm-simple. Where does “mailbox data” get stored? I see “user data” gets stored in non-volatile memory. Can I access this data over BLE (using either function)?

I see in dwm-simple.c the case statement as follows:

case DWM_EVT_USR_DATA_SENT:
printf(“iot sent\n”);
break;

This leads me to believe there is a case where user data can be sent over BLE, but I am unsure. Any help is much appreciated.

Hi Cormac,

The DWM_EVT_USR_DATA_SENT is an event which is raised when data is sent over UWB, in the dedicated payload field. This can be used to uplink data from the network (Anchors/Tag) to the cloud, through the gateway. It is not related with BLE.

With PANS, it is not possible to send custom data over BLE.

The nvm_data_set can be use to store data in the non volatile memory, so the data is preserved when resetting the node.

I don’t think the mbox api is meant to be used by user, where did you find reference to it ? Please see the list of API available in the user application in the dwm1001_fimware_api_guide:

Thanks
Yves

Hi Yves,

Thanks for the response! It was very helpful. I found mbox functions in the dwm.h header file located in the dwm-simple folder. They are not listed in the API guide however.

Thanks,
Cormac