Post Go back to editing

ADF7242 takes about 5ms to TX 128 bytes

The following registers are configured:

0x107 buffercfg              0x01

0x3AA extpa_msc[7:4]   0xF

0x3C8 irq1_en1             0x08

All other registers keep default, so the data rate should be (256*78 + 32)*100 bps = 2M

And the packet mode is IEEE 802.15.4-2006.

But when i send 128bytes and using spectrum analyzer to find the duration of TX, it cost 5ms so the maximum data rate will be 200*128B = 204 kbps, only ten percent of the data sheet giving.

Anyone could help to explain or show your ideas to solve this issue? If you need other information about the driver, please also let me know, thanks.

  • Hi Spike,

    For IEEE 802.15.4-2006 packet mode, there is only 1 data rate, which is 250 kbps.

    Variable data rates are only available when using GFSK/FSK modulation (Table 22).

    I would recommend that you start with the provided configuration files that come with the evaluation software and driver. If installed, you can find these examples at

    C:\Program Files (x86)\Analog Devices BV\ADF7242\REV2.0A 



  • Hi,

    I tried the reference configuration and the TX speed did be faster than before. But the receiver seems can't demodulate the data correctly, bytes saved in RX buffer are orderless while I can find rx_sfd bit of irq_src1 has been set.

    I config the following registers same as

     C:\Program Files (x86)\Analog Devices BV\ADF7242\REV2.0\Aset_gfsk_2Mbps_packet-rfio2rxtx_afc.txt

    0x13E, 0x04
    0x10C, 0x31
    0x10D, 0x7F
    0x10E, 0xAA
    0x10F, 0x10
    0x30E, 0x4E
    0x30F, 0x20
    0x304, 0x32
    0x305, 0x05
    0x306, 0x03
    0x335, 0x28
    0x389, 0x05
    0x38B, 0xAA
    0x39B, 0x1D
    0x3B4, 0x80
    0x3B6, 0x37
    0x3B7, 0x2A
    0x3B8, 0x1D
    0x3B2, 0x34
    0x3BA, 0x24
    0x3BC, 0x7B
    0x3BF, 0x00
    0x3CB, 0xFF
    0x3CC, 0xFF
    0x3C7, 0x00
    0x3C8, 1<<3    // only one difference, I need IRQ1
    0x3C9, 0x00
    0x3CA, 0x00
    0x3CB, 0xFF
    0x3CC, 0xFF
    0x3C4, 0x07
    0x3D2, 0x1A
    0x3D3, 0x19
    0x3D4, 0x1E
    0x3D5, 0x1E
    0x3D6, 0x1E
    0x3D7, 0x00
    0x3E0, 0xF0
    0x3F3, 0x01
    0x3F7, 0x07
    0x3F8, 0x99
    0x3F9, 0x50

    I also tried 125Kbps FSK mode, and it has a same result.

    Could you help review the configuration? Or there are some extra operations to TX when using FSK mode?

  • Hi Spike,

    For 1 Mbps and 2 Mbps use cases, set 0x3F8 to 0xAB instead of 0x99.



  • It doesn't make a change. Then I also removed the AFC configuration and it doesn't work.

  • Hi Spike,

    I would recommend to test the configuration files using two ADF7242 evaluation boards, one as transmitter, and the other one as the receiver. The provided configuration files and the fix (for 1 Mbps and 2 Mbps) have been tested to work.



  • Hi Edwinu,

    I got two EVAL_ADF7242_PMDZ and proceed the experiment. The transfer time didn't change with the length of bytes I set. So I guess I didn't write length to the TX buffer correctly under FSK mode.

    According to the datasheet, 


    if tx_pkt_base = 0x80, then 0x80 and 0x81 will restore the payload length+2. Suppose my payload length is 20, I've tried to write 22 to 0x80, 22 to 0x81, 00 to 0x80 and 22 to 0x81, all of them don't work.

    What is the correct process to write data to TX buffer under FSK mode?