Post Go back to editing

ADF7030 Calibration Procedure

Category: Software
Product Number: ADF7030

I am trying to write some firmware to control the ADF7030 from an ARM based microcontroller in a custom application. I am trying to recreate the Offline Calibration procedure and noticed that in the design package example code the procedure is different from the one described in the Software Development User Manual.


Additionally I can’t find any information regarding applying the firmware module/patch. Looking at the example code, the firmware module is split into blocks and written starting at 0x2000112C which is outside the BBRAM, but the OfflineCalibrations.cfg file provided is one contiguous chunk with no address to write to specified.

What I have tried so far:

Applying OfflineCalibrations.cfg like a configuration profile

Applying OfflineCalibrations.cfg to 0x2000112C

Applying the three calibration blocks from the example code to 0x2000112C, 0x20002BA0, and 0x20002FA0 respectively

In all cases after the CMD_CFG_DEV command is issued, the devices remains in the PHY_OFF with the status byte having TRANSISTION_STATUS set to 2 (idle in state) and the CMD_READY bit unset. Sending commands anyway does not force transitions.

For context SPI clock is 4MHz.

Top Replies

  • Hi TAA, 

    Have you installed the ADF7030-1 Device Driver? It includes the OfflineCalibrations.cfg and the adf703x_OfflineCalibration.c example code.

    The provided dat files with addresses are for IEEE 802.15.4g-2012 (shown below).


    After sending the CMD_CFG_DEG, you should issue the CMD_PHY_ON to change the status of the machine.

    For Offline Calibration, you can refer to the code example, but here is a snippet.

         /* Setup custom defined power-up and power-down function pointers */

             Enable PHY Radio...

         /* Route PHY Radio irq pins to desired GPIO */

             Issue CFG_DEV Command...

             Issue PHY_ON Command...

        /* Transfers Offline calibration patch to the PHY Radio */

        /* Change the default Offline calibration selfcheck CRC configuration */

        /* Enabling the automatic Offline calibration patch inject sequence if selfcheck is succesfull */

        /* Initiate Offline calibration selfcheck */

        /* ---> Calibration finished, should be PHY_ON idle now */