diff --git a/boards/arduino/opta/arduino_opta-common.dtsi b/boards/arduino/opta/arduino_opta-common.dtsi index add572d6cbc..580688eba79 100644 --- a/boards/arduino/opta/arduino_opta-common.dtsi +++ b/boards/arduino/opta/arduino_opta-common.dtsi @@ -91,3 +91,15 @@ &rng { status = "okay"; }; + +&usart3 { + pinctrl-0 = <&usart3_tx_pb10 &usart3_rx_pb11 &usart3_cts_pb13 &usart3_de_pb14>; + pinctrl-names = "default"; + current-speed = <115200>; + /* The RS485 is often used with the ModBus protocol. */ + modbus0 { + compatible = "zephyr,modbus-serial"; + de-gpios = <&gpiob 14 GPIO_ACTIVE_HIGH>; + re-gpios = <&gpiob 13 GPIO_ACTIVE_LOW>; + }; +}; diff --git a/boards/arduino/opta/doc/index.rst b/boards/arduino/opta/doc/index.rst index 01badd338ff..8c6aa788487 100644 --- a/boards/arduino/opta/doc/index.rst +++ b/boards/arduino/opta/doc/index.rst @@ -67,6 +67,8 @@ supports the following hardware features: +-----------+------------+-------------------------------------+ | ETHERNET | on-board | eth | +-----------+------------+-------------------------------------+ +| RS485 | on-board | uart | ++-----------+------------+-------------------------------------+ The ``arduino_opta/stm32h747xx/m4`` board target supports the following hardware features: diff --git a/samples/subsys/modbus/rtu_client/boards/arduino_opta_stm32h747xx_m7.overlay b/samples/subsys/modbus/rtu_client/boards/arduino_opta_stm32h747xx_m7.overlay new file mode 100644 index 00000000000..1838da4c32c --- /dev/null +++ b/samples/subsys/modbus/rtu_client/boards/arduino_opta_stm32h747xx_m7.overlay @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2024 DNDG srl + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&usart3 { + modbus0 { + status = "okay"; + }; + status = "okay"; +}; diff --git a/samples/subsys/modbus/rtu_server/boards/arduino_opta_stm32h747xx_m7.overlay b/samples/subsys/modbus/rtu_server/boards/arduino_opta_stm32h747xx_m7.overlay new file mode 100644 index 00000000000..1838da4c32c --- /dev/null +++ b/samples/subsys/modbus/rtu_server/boards/arduino_opta_stm32h747xx_m7.overlay @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2024 DNDG srl + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&usart3 { + modbus0 { + status = "okay"; + }; + status = "okay"; +}; diff --git a/tests/subsys/modbus/boards/arduino_opta_stm32h747xx_m7.overlay b/tests/subsys/modbus/boards/arduino_opta_stm32h747xx_m7.overlay new file mode 100644 index 00000000000..1838da4c32c --- /dev/null +++ b/tests/subsys/modbus/boards/arduino_opta_stm32h747xx_m7.overlay @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2024 DNDG srl + * + * SPDX-License-Identifier: Apache-2.0 + */ + +&usart3 { + modbus0 { + status = "okay"; + }; + status = "okay"; +};