Hi,
I am following the tutorial to implement the serial recovery on nrf52840DK https://academy.nordicsemi.com/courses/nrf-connect-sdk-intermediate/lessons/lesson-8-bootloaders-and-dfu-fota/topic/exercise-1-dfu-over-uart/
It works with the default setting, but when I added an overlay to remap to other pinouts and then connect with FT232 to linux, it never worked with the following line, NMP timeout.
mcumgr --conntype serial --connstring='dev=/dev/ttyUSB0,baud=115200' imag e list
But it always worked with the following, no matter how I chose the uart
mcumgr --conntype serial --connstring='dev=/dev/ttyACM0,baud=115200' imag e list
overlay:
&pinctrl {
mcumgr_uart_default: mcumgr_uart_default {
group1 {
psels = <NRF_PSEL(UART_TX, 1, 2)>;//, 29
//<NRF_PSEL(UART_RTS, 0, 27)>;
};
group2 {
psels = <NRF_PSEL(UART_RX, 1, 1)>;//, 28
//<NRF_PSEL(UART_CTS, 0, 26)>;
bias-pull-up;
};
};
mcumgr_uart_sleep: mcumgr_uart_sleep {
group1 {
psels = <NRF_PSEL(UART_TX, 1, 2)>, //29
<NRF_PSEL(UART_RX, 1, 1)>;//, 28
//<NRF_PSEL(UART_RTS, 0, 27)>,
//<NRF_PSEL(UART_CTS, 0, 26)>;
low-power-enable;
};
};
};
&uart0 {
compatible = "nordic,nrf-uarte";
//current-speed = <1000000>;
current-speed = <115200>;
status = "okay";
pinctrl-0 = <&mcumgr_uart_default>;
pinctrl-1 = <&mcumgr_uart_sleep>;
pinctrl-names = "default", "sleep";
//hw-flow-control;
};
&spi1 {
status = "disabled";
};
&i2c0 {
status = "disabled";
};
/ {
chosen {
zephyr,uart-mcumgr = &uart0;
};
};
I used the following uart1 setting as well, but still not working
&pinctrl {
mcumgr_uart_default: mcumgr_uart_default {
group1 {
psels = <NRF_PSEL(UART_TX, 1, 2)>;//, 29
//<NRF_PSEL(UART_RTS, 0, 27)>;
};
group2 {
psels = <NRF_PSEL(UART_RX, 1, 1)>;//, 28
//<NRF_PSEL(UART_CTS, 0, 26)>;
bias-pull-up;
};
};
mcumgr_uart_sleep: mcumgr_uart_sleep {
group1 {
psels = <NRF_PSEL(UART_TX, 1, 2)>, //29
<NRF_PSEL(UART_RX, 1, 1)>;//, 28
//<NRF_PSEL(UART_RTS, 0, 27)>,
//<NRF_PSEL(UART_CTS, 0, 26)>;
low-power-enable;
};
};
};
&uart1 {
compatible = "nordic,nrf-uarte";
//current-speed = <1000000>;
current-speed = <115200>;
status = "okay";
pinctrl-0 = <&mcumgr_uart_default>;
pinctrl-1 = <&mcumgr_uart_sleep>;
pinctrl-names = "default", "sleep";
//hw-flow-control;
};
&spi1 {
status = "disabled";
};
&i2c0 {
status = "disabled";
};
/ {
chosen {
zephyr,console = &uart0;
zephyr,shell-uart = &uart0;
zephyr,uart-mcumgr = &uart1;
};
};
Best
/CJ
