This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

802.15.4 - RF PHY layer test using example "radio_test" in SDK nRF5_SDK_15.3.0_59ac345

For Zigbee RF manufacture test, we did try nRF52840 using the sample code "radio_test" in SDK nRF5_SDK_15.3.0_59ac345,

but it seems that only the TX power information can be measured in the IQxel.

Could someone give us any advice on it?

Thanks.

Here is our parameters setting and tx command capture:

nRF52840 RF measurement capture (TX power information only):

The other Zigbee SoC solution measurement capture:

Parents
  • Hi,

     

    Not quite sure what you are trying to do, but the command start_tx_carrier sets up an unmodulated carrier (constant tone). Note how the output power stays between 8.39 and 8.45 dBm the entire time. I suppose to get the constellation, quality etc you should run the command start_duty_cycled_modulated_carrier. Documentation here: https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.3.0/nrf_radio_test_example.html?cp=5_0_4_6_29_0#nrf_radio_test_example_commands

     

    Best regards,

    Andreas

  • Hi Andreas,

    Thanks for your help, the command "start_duty_cycle_modulated_tx" is working for RF test.

    For another sample code "thread\cli\ftd\uart\pca10056" of SDK "nRF5SDKforThreadandZigbeev300d310e71",

    we found that it works on nRF52840 EVB, but it fails in our product (no JLink CDC UART port found).
    Our board is different H/W design from the nRF52840 EVB in the following:

    1. Our SoC version is D (PCN-111 rev. 1.0)

    2. We using REG0 High voltage mode, LDO only setting.

    3. We using nRF52840 internal RC for RTC

    By the way, the version is OPENTHREAD/20180926-00501-g23ff1015; NRF52840; Mar 25 2019 13:04:52,

    and we did the change of CLOCK_CONFIG_LF_SRC and NRFX_CLOCK_CONFIG_LF_SRC to '0' (for internal RC).

    Please give us any advice on it.

    Thanks.

  • Hi,

     

    It sounds like the UART link is not playing along. How have you connected the nRF52840 on your board to the tester? You seem to have used the UART FTD CLI example, this uses the Segger J-link chip on the nRF52840 DK as a UART-USB converter, doing it any other way might not work. You should be able to do this on your custom board, just cut the SB40 and SB41 solder bridges to avoid powering the nRF52840 on the DK, and connect the UART lines on the custom boards to the UART headers illustrated in the bottom silk screen.

    By default I think flow control is enabled in the example, you might have to disable it or run the flow control lines to your DUT.

     

    There should also be a USB CLI example, allowing to use the USB peripheral in nRF52840. If you are using the USB port to communicate, you need to use this variant of the example. Even so, it might be that the tester will be compatible with this example.

     

    Best regards,

    Andreas

  • Hi,

    The example "zigbee_cli_agent_router_pca10056" is working on our custom board (both EXT-UART CLI and USB CLI), could you kindly tell us:

    1. What is the different between examples "zigbee_cli_agent_router_pca10056" and UART FTD CLI?

    2. Can we refer to the example "zigbee_cli_agent_router_pca10056" to modify the UART FTD CLI or USB FTD CLI example? Please advise us how to resolve it, thanks.

Reply
  • Hi,

    The example "zigbee_cli_agent_router_pca10056" is working on our custom board (both EXT-UART CLI and USB CLI), could you kindly tell us:

    1. What is the different between examples "zigbee_cli_agent_router_pca10056" and UART FTD CLI?

    2. Can we refer to the example "zigbee_cli_agent_router_pca10056" to modify the UART FTD CLI or USB FTD CLI example? Please advise us how to resolve it, thanks.

Children
  • Hi,

     

    1. Main difference is "zigbee_cli_agent_router_pca10056" is a Zigbee example and UART FTD CLI is an OpenThread example. It also seems that the Zigbee example uses regular UART, while the Thread example uses RTT.

     

    2. Probably yes, I do not know if you might run into any trouble though as I have not tried this myself. This also seems a lot of work for a production test, seeing as this can be tested using the radio test example. Also, I do not see why you refer to an OpenThread CLI example to test ZIgbee, especially when the Zigbee example is the one that is working?

     

    Best regards,

    Andreas

  • Hi,

    Because the command "diag" of OpenThread CLI example can provide most needed functions in our manufacture radio test.

    Or we can try to port this command to "zigbee_cli_agent_router_pca10056"?
    By the way, I can't find the command source code of "diag", could you give us some advice on it?

    Thanks.

  • Hi,

     

    Yes it should be possible to port this command to the Zigbee example.

     

    'Diag' is provided in our SDK as a library. For documentation try looking here.

     

    Best regards,

    Andreas

  • Hi,

    I didn't find the 'Diag' CLI interface in your OpenThread CLI example,
    could you tell us how to involve 'Diag' function in "zigbee_cli_agent_router_pca10056"?

    Thanks.

  • Hi,

     

    See the documentation for the Thread CLI example:

    For a complete list of CLI commands, run the help command. For complete CLI documentation, refer to OpenThread CLI Reference.

     

    You need to figure out why the tester is not able to communicate with the Thread CLI example, or what makes the UART communication fail. Even if you port that part of the code to the Zigbee example, which is probably quite a bit of work, you still run the risk that the tester still will not be able to communicate with it. I suspect that this takes unneccessarily long, compared to the reward. I would rather recommend that you try to simplify, take a simpler example such as the radio test example to which you reference in your original post, it is just as suitable for a production test. Remember that we verify functionality of all onboard modules in our production line and make sure the performance is according to spec. You should not need all the diag functionality.

     

    Best regards,

    Andreas

Related