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

DTM UART communication through USB port instead of Tx Rx

Hi everyone!

I am currently working on a custom prototype that is using the nrf52840 chip and sdk 15, and now want to perform DTM tests on the device. Looking at the DTM example code and description, I see that the application uses 2 pins (tx,rx) in order to perform the UART communication. In my case with the custom prototype board that is not possible since we have not included these pins. Is there any other way to perform the UART communication through the USB port instead. One idea that I am currently thinking of is to implement USB CDC and use that instead, does it sound reasonable and/or are there any other easier way to do that?

Would be very thankful for any help I can get!

/Hadi

Parents
  • UPDATE: I have started implementing USB cdc in the DTM example that is available, however, I am facing some problems. When I run my code on the board I can't see any com port appearing. So my question is: Does the USB CDC example require a Softdevice to be programmed on the device in order for the device to work with USB cdc? If so, then I assume that it won't work to integrate both cdc and DTM, since, the DTM application requires that no softdevice is present on the device. Correct me if I am wrong

  • Thanks for the help Torbjørn, I really appreciate it. I have one question regarding the DTM tests. We are going to perform certification test soon: Radio (TX: Mod low,mid,high and carrier & RX: no beacon ) and also EMC with usb traffic, my question is whether it is possible to perform this with the DTM application only or do I also have to use the Radio application?

  • Hi Hadi

    The DTM and radio_test examples are basically doing the same thing in different ways, so if the DTM example works for you there is no need to use the radio_test example. 

    Best regards
    Torbjørn

  • Alright, thanks for the clarification. I have ported the example code you uploaded to SDK 15 and got it to work, however, I am getting fatal error and system reset when the code enters the while true loop and performs this operation:

    while (app_usbd_event_queue_process())
     

    When I call it before entering the while(true) loop, then the system reset error does not arise. Seem like the frequent calling of this function causes the system to somehow crash . Do you have any idea why this might be happening?

    /Hadi

Reply
  • Alright, thanks for the clarification. I have ported the example code you uploaded to SDK 15 and got it to work, however, I am getting fatal error and system reset when the code enters the while true loop and performs this operation:

    while (app_usbd_event_queue_process())
     

    When I call it before entering the while(true) loop, then the system reset error does not arise. Seem like the frequent calling of this function causes the system to somehow crash . Do you have any idea why this might be happening?

    /Hadi

Children
Related