substitutions: name: soyosource-gtn-display device_description: "Monitor and control the Soyosource GTN (WiFi version) using the display port" external_components_source: github://syssi/esphome-soyosource-gtn-virtual-meter@main # The display port should be connected to these GPIOs using a USB connector (VCC, RX, TX, GND) # A optocoupler / optical isolator (f.e. ADUM1201) between the display port and the ESP is recommended if the ESP isn't powered by the display port! tx_pin: GPIO4 rx_pin: GPIO5 esphome: name: ${name} friendly_name: ${name} comment: ${device_description} project: name: "syssi.esphome-soyosource-gtn-virtual-meter" version: 2.6.0 esp8266: board: d1_mini external_components: - source: ${external_components_source} refresh: 0s wifi: ssid: !secret wifi_ssid password: !secret wifi_password min_auth_mode: WPA2 ota: platform: esphome logger: level: INFO # If you use Home Assistant please remove this `mqtt` section and uncomment the `api` component! # The native API has many advantages over MQTT: https://esphome.io/components/api.html#advantages-over-mqtt mqtt: broker: !secret mqtt_host username: !secret mqtt_username password: !secret mqtt_password id: mqtt_client # api: uart: - id: uart_0 baud_rate: 9600 tx_pin: ${tx_pin} rx_pin: ${rx_pin} soyosource_display: - id: display0 uart_id: uart_0 protocol_version: SOYOSOURCE_WIFI_VERSION update_interval: 5s binary_sensor: - platform: soyosource_display fan_running: name: "fan running" limiter_connected: name: "limiter connected" button: - platform: soyosource_display restart: name: "restart" number: - platform: soyosource_display start_voltage: name: "start voltage" shutdown_voltage: name: "shutdown voltage" # Maximum output power in limiter mode / Output power in constant power mode output_power_limit: name: "output power limit" start_delay: name: "start delay" select: - platform: soyosource_display operation_mode: name: "operation mode" optionsmap: 1: "PV" 2: "Battery Constant Power" 17: "PV Limit" 18: "Battery Limit" sensor: - platform: soyosource_display error_bitmask: name: "error bitmask" operation_mode_id: name: "operation mode id" operation_status_id: name: "operation status id" id: operation_status_id0 battery_voltage: name: "battery voltage" battery_current: name: "battery current" battery_power: name: "battery power" ac_voltage: name: "ac voltage" ac_frequency: name: "ac frequency" temperature: name: "temperature" output_power: name: "output power" text_sensor: - platform: soyosource_display errors: name: "errors" operation_mode: name: "operation mode" operation_status: name: "operation status"