AnsweredAssumed Answered

How to configure RS-485 2-wire in dts ?

Question asked by Jim Huang on Jun 7, 2018
Latest reply on Jun 7, 2018 by Jim Huang

Hi NXP team,

 

Currently, our design use 3 pins connecting iMX6UL and transceiver for RS-485 application.

The schematic of RS485 is as below. HW claim UART_TXDEN_RS485 to control the transmit or receive direction.

 

I refer the 4-wire case Use RTS_B pin instead of CTS_B pin for RS485 driver.

And, configure RS-485 in DTS as below. 

 

&uart6 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart6>;
status = "okay";
rts-gpio = <&gpio4 19 GPIO_ACTIVE_HIGH>;
rs485-rts-active-high;
rs485-rx-during-tx;
rs485-rts-delay = <1 1>;
linux,rs485-enabled-at-boot-time;
};

 

pinctrl_uart6: uart6grp {
fsl,pins = <
MX6UL_PAD_CSI_MCLK__UART6_DCE_TX 0x030b1
MX6UL_PAD_CSI_PIXCLK__UART6_DCE_RX 0x130b1
MX6UL_PAD_CSI_VSYNC__GPIO4_IO19 0x030b1
>;
};

 

I using 2 device to connect each other via RS-485 port with minicon utility.

I saw the TX signal is OK in Scope, but I don't see any word print at another device in minicom.

I notice the level of TXDEN should be different, so I reworked one device to keep low (receive the signal)
The result still fail.


Could you provide the example of RS-485 2-wire in DTS ?
Beside the DTS configuration, does something else we do wrong in schematic or testing case for RX mesasge?

Thanks,

Jim

Outcomes