Firmware - Info about mcps layer

I have downloaded the dw3000 api here:

https://www.qorvo.com/products/d/da007992

And in the “deca_interface.h” file, where can I find information about these (below), I am trying to understand this" int interface_init(struct dwchip_s *p);"

“”"
/* MCPS */
struct mcps802154_llhw *llhw;
struct mcps802154_ops *mcps_ops;
struct dw3000_calibration_data *calib_data;
struct dwt_mcps_runtime_s *mcps_runtime;
struct dwt_mcps_rx_s *rx;
“”"

Hi, the MCPS layer is the interface between the driver and the higher level stack (for instance Qorvo FiRa + 802.15.4z binary library).

This interface not is especially documented because it is mainly used by the Qorvo library, but the function names are self explanatory. You can take a look at the DW3000 implementation in dw3000_device.c. If you just want to use the driver without the library, you need to implement only the structures which are used.

Thanks you for the reply!

Bonus question, the pre-compiled library is for m4 only, any plan to make a pre-compiled version for m33 as well?

Hi,
We will release soon the M33 compiled version, I don’t have yet the ETA.

Do you have any indication of how soon, like 6 months? 12 months? I know how software development work, so I won’t use it to hold against you if you ever provide a time frame :slight_smile:

Extra bonus question. Maybe the answer is already in the source code, but I can’t find it. Per document, the minimum RCTU is 1200 (1 ms). Does this mean MAC layer can do up to 1000 SS-TWR per second. Therefor, up to 500 DS-TWR per second?