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

USB UART configuration has no RX

We want to use nRF52840 as advanced USB - UART converter to control end device (see structure below).


We already checked that our end device is working fine by external USB - UART converter (just connects to RX/TX pins on our board while nRF52840 in RESET state).

We based our software on USB-UART example from Thread SDK 2.0 (we want to use Thread in this project).
Standart USB-UART example works fine on nRF52840-DK through Jlink UART - we can send & receive data from both sides.

But when we want to adapt code for our board (just reconfig pins) we can't receive any data, only transfer a data.
We thought that it may be specialized pins in EVM but we tried all 3 configurations on nRF52840-DK and on our device (PCB):

  • Connect Profilic on the RX/TX pins (0.6/0.8) between nRF52 and Jlink UART in turned off mode
  • Tried free GPIO 1.6/1.4 as RX/TX 
  • and vice versa (1.4/1.6) to be sure that the are no schematics and connection issues.

Anywhere the resualt the same - no RX by nRF52840.

See the project in attachment usbd_cdc_acm_to_uart.zip
Just place it in examples/peripheral.
Сustom_board2.h should be renamed to custom_board.h and moved to components/boards

We think it should be software issue because in general the example works.
Please help us here.

Parents Reply
  • We don't use hardware control.

    We tried to connect the nRF UART directly to end device. Rusult was the same.

    We doesn't run the debugger because USB is the time critical protocol and it will be crashed when we going into point.

    The main question there, as I understand, why after changing the pins we can't receive the data, while we still can transfer. Data flow control, as I understand, affect on both RX & TX at the same time. So if we can send data, that configuration is correct.

Children
Related