substitutions: ## Name of the node. Don't use underscores! ## https://esphome.io/guides/faq.html#why-shouldn-t-i-use-underscores-in-my-device-name node_name: tion-o2 ## Name for the main entity and prefix for all others. friendly_name: $node_name ## UART configuration. ## !!! Make sure to use YOUR pins or remove if you are using board specific package. tx_pin: GPIO19 rx_pin: GPIO20 ## WiFi settings. wifi_ssid: !secret wifi_ssid wifi_password: !secret wifi_password ## WiFi Access Point password. wifi_ap_password: tion-0123-o2 packages: tion: url: https://github.com/dentra/esphome-tion ref: 2024.12.0 # cant use substitutions here files: ## You can enable or disable some of the features listed below. ## The disabled feature starts with # symbol. ## The indentation before uncommented package is very important! ## Additional WiFi signal sensor. - packages/wifi_signal.yaml ## Additional Uptime sensor. - packages/uptime.yaml ## Additional Restart button. - packages/restart.yaml ## Unlock Tion 30°C heating. #- packages/tion_temperature30c.yaml ## Additional virtual energy sensor. ## !!! Be sure to uncomment mqtt.yaml if you use it with MQTT. #- packages/tion_energy.yaml ## Antifreeze protection. Automatically turns on the heater at a temperature of 0°C and below. - packages/tion_enable_antifreeze.yaml ## Common configuration settings. Do not comment or move or remove! - packages/base.yaml ## Base platform support package: ## esp32_s3_uart.yaml - ESP32-S3 ## esp32_s2_uart.yaml - ESP32-S2 ## esp32_c3_uart.yaml - ESP32-C3 ## esp32_c6_uart.yaml - ESP32-C6 ## esp32_uart.yaml - ESP32 - packages/esp32_s3_uart.yaml ## Internal ESP32 temperature sensor. #- packages/esp32_temperature.yaml ## Uncomment to use it with SprutHub. # - packages/spruthub.yaml ## Uncomment to use MQTT. Already included with spruthub.yaml # - packages/mqtt.yaml ## Lilygo T-Dongle S3 support package. # - packages/lilygo.yaml ## XIAO SEEED ESP32-C6 support package. # - packages/seeed_c6.yaml ## Web server support. #- packages/web_server.yaml ## Additional debug information. # - packages/debug.yaml ## Tion type package. Do not comment or move or remove! - packages/tion_o2.yaml ## Uncomment to enable MQTT connection and remove api section. ## Do not forget to uncomment mqtt.yaml or if you plan to use SprutHub spruthub.yaml package above. # mqtt: # broker: !secret mqtt_broker # port: !secret mqtt_port # username: !secret mqtt_username # password: !secret mqtt_password ## Enable Home Assistant API connection. ## It is strongly recommended to remove if you use MQTT!!! api: ## Uncomment next line if you do not use Home Assistant. #reboot_timeout: 0s ## WiFi access point configuration. wifi: ## Comment next 2 lines to enable manual WiFi configuration via access point. ssid: $wifi_ssid password: $wifi_password ## Comment next 2 lines to set access point without password. ap: password: $wifi_ap_password ## To completely remove access point remove previous two lines and uncomment next one. #ap: !remove ## Virtual port configuration. vport: - platform: tion_o2_uart id: tion_uart_vport uart_id: tion_uart ## Optional, Interval between sending commands. Set to 0ms to send one command per loop. # command_interval: 20ms ## Optional, Command queue size. Default: 10. # command_queue_size: 16 ## Main climate component configuration. ## See detailed description and additional parameters at CONFIGURATION.md tion: type: o2 id: tion_api ## Optional, use vport_id with multiple breezers. vport_id: tion_uart_vport ## Optional, How often query device state. Default: 60s. update_interval: 30s ## Optional, Timeout to combine update operations. Default: 200ms. batch_timeout: 200ms ## Optional, Timeout to enable state problem sensor. Must be less than update_interval. Default: 3s. state_timeout: 3s ## Optional, Updates sensor values on any state response or only if they have been changed. Default: false. force_update: false ## Optional, Enable presets. Default: (no presets) ## You can define any number of presets with any name. ## In Home assistant climate entity presets with names home, away, boost, comfort, ## eco, sleep and activity are automatically translated to your native language and assign icons. ## Preset configuration: ## name_of_your_preset: ## fan_speed: 1 # remove or set to 0 to use current state ## temperature: 16 # remove or set to 0 to use current state ## heater: False # remove to use current state ## power: True # ## Uncomment next 4 lines to enable example presets. # presets: # home: { fan_speed: 2, temperature: 16, heater: False } # away: { fan_speed: 1, temperature: 10, heater: False } # sleep: { fan_speed: 1, temperature: 18 } ################################################################################ ## ## Next sections set are only example configuration. ## ## In most cases it is enough, but if you prefer to customize please refer to ## CONFIGURATION.md for full set of available entities and options. ## ################################################################################ ## Main control entity. climate: - platform: tion id: tion_climate name: None # use friendly_name ## Add HEAT_COOL mode to support turn_on without touching current heater mode. enable_heat_cool: True ## Example of control with a fan entity. More info at CONFIGURATION.md. #fan: # - platform: tion # id: tion_climate # name: Fan sensor: ## Temperature of air before heater, °C (celsius). - platform: tion id: tion_outdoor_temperature type: outdoor_temperature name: Outdoor Temperature ## Current productivity, m³/h (cubic meters per hour). - platform: tion id: tion_productivity type: productivity name: Productivity ## Filter time left counter. - platform: tion id: tion_filter_time_left_days type: filter_time_left_days name: Filter Time Left ## Boost time left sensor. - platform: tion id: tion_boost_time_left type: boost_time_left name: Boost Time Left switch: ## Boost/Turbo switch. - platform: tion id: tion_boost type: boost name: Boost ## Optional, Heater state when boost enabled. If not set current state will be used. #heater: False ## Optional, Target heater temperature state when boost enabled. ## If not set or set to 0 - current target temperature will be used. #temperature: 10 number: ## Configure boost time. - platform: tion id: tion_boost_time type: boost_time name: Boost Time initial_value: 20min restore_value: true select: binary_sensor: ## Informs about state receiving problem from the breezer. - platform: tion id: tion_state_problem type: state name: State Problem ## Filter warning state. - platform: tion id: tion_filter_worn_out type: filter name: Filter Worn Out text_sensor: ## Tion firmware version. - platform: tion id: tion_firmware_version type: firmware_version name: Version ## Reports Tion's errors (EC) and warnings (WS). ## Full error/warning description you can find in a log. - platform: tion id: tion_errors type: errors name: Errors button: