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

Confusing define HWFC in pca10056.h, not used at all!

Dear Nordic,

I just started with nrf52840 DK and my custom board. I derived my custom_board.h from nRF5_SDK_15.0.0_a53641a/components/boards/pca10056.h. I need to reroute the DFU bootloader serial pins and since my custom board does not have CTS/RTS pins I have to disable hw flow control.

This seemed to be quite easy, I just redefined 

#define RX_PIN_NUMBER myRx

#define TX_PIN_NUMBER myTx

and

#define HWFC false // was true on pca10056.h

For bootloading I used the option -fc 0:

nrfutil dfu serial -pkg mypacket.zip -p /dev/mydevice -b 115200 -fc 0

Unfortunately DFU serial bootloading did not work on my custom board, I always got

No ping response after opening COM port

Finally I found the problem. The define HWFC is actually not used at all by the bootloader source. Instead I had to alter the sdk-config option NRF_DFU_SERIAL_UART_USES_HWFC from 1 to 0.

Now everything works as expected.

Would you please remove the unused define HWFC from the original board headers (e.g. pca10056.h). This is really confusing. Best would be a comment in pca10056.h what to do when to disable hw flow control.

I just started with the SDK and found them really well written, documented, powerful tools and easy to use. Good work though!

regards

spachner

Related