description: Hub to communicate with attached serial devices provides: main: description: Implementation of serial communication hub interface: serial_communication_hub config: serial_port: description: Serial port the hardware is connected to type: string default: /dev/ttyUSB0 baudrate: description: Baudrate type: integer minimum: 0 maximum: 230400 default: 9600 parity: description: 'Parity bit: 0: None, 1: Odd, 2: Even' type: integer minimum: 0 maximum: 2 default: 0 rtscts: description: Use RTS/CTS hardware flow control type: boolean default: false ignore_echo: description: On some hardware every message that is sent is read back, this setting filters the sent message in the reply. type: boolean default: false rxtx_gpio_chip: description: GPIO chip to use to switch between RX/TX. An empty string disables GPIO usage. type: string default: '' rxtx_gpio_line: description: GPIO line to use to switch between RX/TX type: integer default: 0 rxtx_gpio_tx_high: description: GPIO direction, false means low for TX, true means high for TX type: boolean default: false max_packet_size: description: >- Maximum size of a packet to read/write in bytes. Payload exceeding the size will be chunked. The APU size according to [wikipedia](https://en.wikipedia.org/wiki/Modbus) is 256 bytes, which is used as default here. type: integer # 7 is a minimum packet size to transfer a response minimum: 7 maximum: 65536 default: 256 initial_timeout_ms: description: Timeout in ms for the first packet. type: integer default: 500 within_message_timeout_ms: description: Timeout in ms for subsequent packets. type: integer default: 100 retries: description: Count of retries in case of error in Modbus query. type: integer minimum: 0 maximum: 10 default: 2 metadata: license: https://opensource.org/licenses/Apache-2.0 authors: - Lars Dieckmann - Cornelius Claussen