AnsweredAssumed Answered

Can I use TX2, RX2 channel when AD9361 is in 1x1 mode?

Question asked by allen.yang on May 22, 2017
Latest reply on Jun 1, 2017 by allen.yang



We are using AD9361 chip in 1x1 (1 tx, 1 rx) mode, not 2x2 mode. I am wondering if TX2, RX2 channels can be used for 1x1 mode.


We have a working board which uses TX1, RX1 channel. But the new board uses TX2, RX2 channels for board layout reason (it's easier to use TX2, RX2 to route the traces). I am currently having hard time on making it work.


I checked AD9361 SDK. In ad9361_api.c, there is a function:

int32_t ad9361_set_tx_attenuation (struct ad9361_rf_phy *phy,
                                   uint8_t ch, uint32_t attenuation_mdb)
    int32_t ret;
    int32_t channel;


    if ((phy->pdata->rx2tx2 == 0) && (ch == TX2)) {
        printf("%s : TX2 is an invalid option in 1x1 mode!\n", __func__);
        return -1;


    channel = ad9361_1rx1tx_channel_map(phy, true, ch);
    ret = ad9361_set_tx_atten(phy, attenuation_mdb,
            channel == 0, channel == 1,


    return ret;



It says "TX2 is an invalid option in 1x1 mode!". However, I didn't find the similar statement in AD9361 datasheet. Is it a hardware limitation or a software limitation?


Thanks in advance,