How to test tx power and connection testing with Zigbee on nrf5340.

Hi all,

We are developing a home gateway, in which we will run Zigbee on nRF5340 as a coordinator.


1,

How do we output Tx Power for hardware testing? nRF5SDK had the following radio test example. The nRFconnect SDK has a similar example?

https://infocenter.nordicsemi.com/index.jsp?topic=%2Fsdk_nrf5_v17.0.2%2Fnrf_radio_test_example.html

2,

In its mass production, we want to test the tx power and test the connectivity of Zigbee.


For example, if it is Thread, it seems to me that we could check the transmit output by increasing the number of packets transmitted in diagnostic mode; can we do a similar test with Zigbee?

https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/openthread/cli/README.html#testing-diagnostic-module

In answer to question 1, even if the nRFconnect SDK also had a radio test example, we want to use the same FW to also test the Zigbee connection, so simple radio tests cannot be used.

Do you have any workable solutions? Do we have to change the FW according to the test?

Tx Power is necessary to check the antenna and that it does not emit illegal output, while connectivity is necessary to ensure that the product operates correctly.

Best Regards,

Yukio Oyama

Parents Reply Children
  • Hello Sigurd-san,

    Thanks for the radio test example in nRF connect SDK. Sorry I wasn't aware of that one.

    It seems possible to know the RSSI using diagnostic clusters, but this does not seem to be my requirement, as I want to control the tx power level and transmitted timing.

    Your idea of reprogramming the radio test example and Zigbee in separate Hex files rather than combining them is understandable.

    We consider that a simpler test is acceptable and that the transmit output test is performed within the Zigbee protocol. In other words, if the number of transmissions increases, it would be possible to test the behaviour within the protocol.

    Can you think of such a Zigbee operation? For example, issuing a large number of pings. 

    I have not come up with a good idea to increase the transmission on the Zigbee protocol, but I have an additional question to operate the transmission waveform on the Zigbee protocol.

    It seems that channel can be changed in CONFIG_ZIGBEE_CHANNEL in Kconfig, but I don't know how to change Tx Power Level. Is it in Kconfig? Or is there another way? Looking at the sample operation, the default value of TxPower seems to be 3 dBm, correct?

    Best Regards,

    Yukio Oyama

  • OYAMA YUKIO said:
    Can you think of such a Zigbee operation? For example, issuing a large number of pings. 

    You can try to use the zigbee shell sends pings, and implement something like this.

    OYAMA YUKIO said:
    It seems that channel can be changed in CONFIG_ZIGBEE_CHANNEL in Kconfig, but I don't know how to change Tx Power Level. Is it in Kconfig? Or is there another way? Looking at the sample operation, the default value of TxPower seems to be 3 dBm, correct?

    https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/kconfig/index.html#CONFIG_NET_CONFIG_IEEE802154_RADIO_TX_POWER

  • Hello Sigurd-san,

    Thanks for the ping sample. I will give it a try.

    Thanks for the Zigbee Power settings.

    However, in addition to CONFIG_NET_CONFIG_IEEE802154_RADIO_TX_POWER, there is also CONFIG_NET_L2_IEEE802154_RADIO_DFLT_TX_POWER. What is the relationship between these?


    We are also working on Thread, which has CONFIG_OPENTHREAD_DEFAULT_TX_POWER; what is the relationship between these plus the three Kconfig settings in Thread?

    Best Regards,

    Yukio Oyama

  • OYAMA YUKIO said:
    However, in addition to CONFIG_NET_CONFIG_IEEE802154_RADIO_TX_POWER, there is also CONFIG_NET_L2_IEEE802154_RADIO_DFLT_TX_POWER. What is the relationship between these?

    One seem to be for the net layer and other seem to be for the L2 layer.
    I did some looking and did not find out which of these are prioritized if both are set. I suggest that you default to CONFIG_NET_CONFIG_IEEE802154_RADIO_TX_POWER. If you want, you can try both and monitor output radio power.

    In addition, you can in runtime change the power using nrf_802154_tx_power_set(). Maybe this is easier?

    OYAMA YUKIO said:
    We are also working on Thread, which has CONFIG_OPENTHREAD_DEFAULT_TX_POWER; what is the relationship between these plus the three Kconfig settings in Thread?

    In the end, this sets the power for 802.15.4 as well. However, the Thread interface has some insight into its power, and therefore it needs to control it in the Thread API rather than in lower layers.
    See otPlatRadioGetTransmitPower() and otPlatRadioSetTransmitPower().

Related