esphome: on_boot: then: - uart.write: 'Hello World' - uart.write: [0x00, 0x20, 0x42] - uart.write: !lambda |- return {0xAA, 0xBB, 0xCC}; uart: - id: uart_uart tx_pin: 17 rx_pin: 16 flow_control_pin: 4 baud_rate: 9600 data_bits: 8 rx_buffer_size: 512 rx_full_threshold: 10 rx_timeout: 1 parity: EVEN stop_bits: 2 packet_transport: - platform: uart switch: # Test uart switch with single state (array) - platform: uart name: "UART Switch Single Array" uart_id: uart_uart data: [0x01, 0x02, 0x03] # Test uart switch with single state (string) - platform: uart name: "UART Switch Single String" uart_id: uart_uart data: "ON" # Test uart switch with turn_on/turn_off (arrays) - platform: uart name: "UART Switch Dual Array" uart_id: uart_uart data: turn_on: [0xA0, 0xA1, 0xA2] turn_off: [0xB0, 0xB1, 0xB2] # Test uart switch with turn_on/turn_off (strings) - platform: uart name: "UART Switch Dual String" uart_id: uart_uart data: turn_on: "TURN_ON" turn_off: "TURN_OFF" number: - platform: template name: "Test Number" id: test_number optimistic: true min_value: 0 max_value: 100 step: 1 button: # Test uart button with array data - platform: uart name: "UART Button Array" uart_id: uart_uart data: [0xFF, 0xEE, 0xDD] # Test uart button with string data - platform: uart name: "UART Button String" uart_id: uart_uart data: "BUTTON_PRESS" # Test uart button with lambda (function pointer) - platform: template name: "UART Lambda Test" on_press: - uart.write: !lambda |- std::string cmd = "VALUE=" + str_sprintf("%.0f", id(test_number).state) + "\r\n"; return std::vector(cmd.begin(), cmd.end());