substitutions: name: jk-ant-ble bms0: jk-bms bms1: ant-bms jk_mac_address: C8:47:8C:E1:E2:E1 # Defaults to "JK02" (hardware version >= 6.0 and < 11.0) # Please use "JK02_32S" if you own a new JK-BMS >= hardware version 11.0 (f.e. JK-B2A8S20P hw 11.XW, sw 11.26) # Please use "JK04" if you have some old JK-BMS <= hardware version 3.0 (f.e. JK-B2A16S hw 3.0, sw. 3.3.0) jk_protocol_version: JK02 ant_mac_address: 16:aa:22:02:23:45 esphome: name: ${name} esp32: board: wemos_d1_mini32 framework: type: esp-idf external_components: - source: github://syssi/esphome-jk-bms@main refresh: 0s - source: github://syssi/esphome-ant-bms@main refresh: 0s wifi: ssid: !secret wifi_ssid password: !secret wifi_password ota: logger: level: DEBUG # If you don't use Home Assistant please remove this `api` section and uncomment the `mqtt` component! api: # mqtt: # broker: !secret mqtt_host # username: !secret mqtt_username # password: !secret mqtt_password # id: mqtt_client esp32_ble_tracker: ble_client: - mac_address: ${jk_mac_address} id: client0 - mac_address: ${ant_mac_address} id: client1 jk_bms_ble: - ble_client_id: client0 protocol_version: ${jk_protocol_version} throttle: 5s id: bms0 ant_bms_ble: - ble_client_id: client0 update_interval: 5s id: bms1 binary_sensor: - platform: jk_bms_ble balancing: name: "${bms0} balancing" charging: name: "${bms0} charging" discharging: name: "${bms0} discharging" online_status: name: "${bms0} online status" - platform: ant_bms_ble ant_bms_ble_id: bms1 online_status: name: "${bms1} online status" button: - platform: jk_bms_ble retrieve_settings: name: "${bms0} retrieve settings" retrieve_device_info: name: "${bms0} retrieve device info" - platform: ant_bms_ble ant_bms_ble_id: bms1 shutdown: name: "${bms1} shutdown" clear_system_log: name: "${bms1} clear system log" factory_reset: name: "${bms1} factory reset" restart: name: "${bms1} restart" number: - platform: jk_bms_ble jk_bms_ble_id: bms0 balance_trigger_voltage: name: "${bms0} balance trigger voltage" cell_count: name: "${bms0} cell count" total_battery_capacity: name: "${bms0} total battery capacity" cell_voltage_overvoltage_protection: name: "${bms0} cell voltage overvoltage protection" cell_voltage_overvoltage_recovery: name: "${bms0} cell voltage overvoltage recovery" cell_voltage_undervoltage_protection: name: "${bms0} cell voltage undervoltage protection" cell_voltage_undervoltage_recovery: name: "${bms0} cell voltage undervoltage recovery" balance_starting_voltage: name: "${bms0} balance starting voltage" voltage_calibration: name: "${bms0} voltage calibration" current_calibration: name: "${bms0} current calibration" power_off_voltage: name: "${bms0} power off voltage" max_balance_current: name: "${bms0} max balance current" max_charge_current: name: "${bms0} max charge current" max_discharge_current: name: "${bms0} max discharge current" sensor: - platform: jk_bms_ble jk_bms_ble_id: bms0 min_cell_voltage: name: "${bms0} min cell voltage" max_cell_voltage: name: "${bms0} max cell voltage" min_voltage_cell: name: "${bms0} min voltage cell" max_voltage_cell: name: "${bms0} max voltage cell" delta_cell_voltage: name: "${bms0} delta cell voltage" average_cell_voltage: name: "${bms0} average cell voltage" cell_voltage_1: name: "${bms0} cell voltage 1" cell_voltage_2: name: "${bms0} cell voltage 2" cell_voltage_3: name: "${bms0} cell voltage 3" cell_voltage_4: name: "${bms0} cell voltage 4" cell_voltage_5: name: "${bms0} cell voltage 5" cell_voltage_6: name: "${bms0} cell voltage 6" cell_voltage_7: name: "${bms0} cell voltage 7" cell_voltage_8: name: "${bms0} cell voltage 8" cell_voltage_9: name: "${bms0} cell voltage 9" cell_voltage_10: name: "${bms0} cell voltage 10" cell_voltage_11: name: "${bms0} cell voltage 11" cell_voltage_12: name: "${bms0} cell voltage 12" cell_voltage_13: name: "${bms0} cell voltage 13" cell_voltage_14: name: "${bms0} cell voltage 14" cell_voltage_15: name: "${bms0} cell voltage 15" cell_voltage_16: name: "${bms0} cell voltage 16" cell_voltage_17: name: "${bms0} cell voltage 17" cell_voltage_18: name: "${bms0} cell voltage 18" cell_voltage_19: name: "${bms0} cell voltage 19" cell_voltage_20: name: "${bms0} cell voltage 20" cell_voltage_21: name: "${bms0} cell voltage 21" cell_voltage_22: name: "${bms0} cell voltage 22" cell_voltage_23: name: "${bms0} cell voltage 23" cell_voltage_24: name: "${bms0} cell voltage 24" cell_resistance_1: name: "${bms0} cell resistance 1" cell_resistance_2: name: "${bms0} cell resistance 2" cell_resistance_3: name: "${bms0} cell resistance 3" cell_resistance_4: name: "${bms0} cell resistance 4" cell_resistance_5: name: "${bms0} cell resistance 5" cell_resistance_6: name: "${bms0} cell resistance 6" cell_resistance_7: name: "${bms0} cell resistance 7" cell_resistance_8: name: "${bms0} cell resistance 8" cell_resistance_9: name: "${bms0} cell resistance 9" cell_resistance_10: name: "${bms0} cell resistance 10" cell_resistance_11: name: "${bms0} cell resistance 11" cell_resistance_12: name: "${bms0} cell resistance 12" cell_resistance_13: name: "${bms0} cell resistance 13" cell_resistance_14: name: "${bms0} cell resistance 14" cell_resistance_15: name: "${bms0} cell resistance 15" cell_resistance_16: name: "${bms0} cell resistance 16" cell_resistance_17: name: "${bms0} cell resistance 17" cell_resistance_18: name: "${bms0} cell resistance 18" cell_resistance_19: name: "${bms0} cell resistance 19" cell_resistance_20: name: "${bms0} cell resistance 20" cell_resistance_21: name: "${bms0} cell resistance 21" cell_resistance_22: name: "${bms0} cell resistance 22" cell_resistance_23: name: "${bms0} cell resistance 23" cell_resistance_24: name: "${bms0} cell resistance 24" total_voltage: name: "${bms0} total voltage" current: name: "${bms0} current" power: name: "${bms0} power" charging_power: name: "${bms0} charging power" discharging_power: name: "${bms0} discharging power" temperature_sensor_1: name: "${bms0} temperature sensor 1" temperature_sensor_2: name: "${bms0} temperature sensor 2" power_tube_temperature: name: "${bms0} power tube temperature" state_of_charge: name: "${bms0} state of charge" capacity_remaining: name: "${bms0} capacity remaining" total_battery_capacity_setting: name: "${bms0} total battery capacity setting" charging_cycles: name: "${bms0} charging cycles" total_charging_cycle_capacity: name: "${bms0} total charging cycle capacity" total_runtime: name: "${bms0} total runtime" balancing_current: name: "${bms0} balancing current" errors_bitmask: name: "${bms0} errors bitmask" - platform: ant_bms_ble ant_bms_ble_id: bms1 battery_strings: name: "${bms1} battery strings" current: name: "${bms1} current" soc: name: "${bms1} soc" total_battery_capacity_setting: name: "${bms1} total battery capacity setting" capacity_remaining: name: "${bms1} capacity remaining" battery_cycle_capacity: name: "${bms1} battery cycle capacity" total_voltage: name: "${bms1} total voltage" total_runtime: name: "${bms1} total runtime" average_cell_voltage: name: "${bms1} average cell voltage" power: name: "${bms1} power" min_cell_voltage: name: "${bms1} min cell voltage" max_cell_voltage: name: "${bms1} max cell voltage" min_voltage_cell: name: "${bms1} min voltage cell" max_voltage_cell: name: "${bms1} max voltage cell" delta_cell_voltage: name: "${bms1} delta cell voltage" temperature_1: name: "${bms1} temperature 1" temperature_2: name: "${bms1} temperature 2" temperature_3: name: "${bms1} temperature 3" temperature_4: name: "${bms1} temperature 4" temperature_5: name: "${bms1} temperature 5" temperature_6: name: "${bms1} temperature 6" cell_voltage_1: name: "${bms1} cell voltage 1" cell_voltage_2: name: "${bms1} cell voltage 2" cell_voltage_3: name: "${bms1} cell voltage 3" cell_voltage_4: name: "${bms1} cell voltage 4" cell_voltage_5: name: "${bms1} cell voltage 5" cell_voltage_6: name: "${bms1} cell voltage 6" cell_voltage_7: name: "${bms1} cell voltage 7" cell_voltage_8: name: "${bms1} cell voltage 8" cell_voltage_9: name: "${bms1} cell voltage 9" cell_voltage_10: name: "${bms1} cell voltage 10" cell_voltage_11: name: "${bms1} cell voltage 11" cell_voltage_12: name: "${bms1} cell voltage 12" cell_voltage_13: name: "${bms1} cell voltage 13" cell_voltage_14: name: "${bms1} cell voltage 14" cell_voltage_15: name: "${bms1} cell voltage 15" cell_voltage_16: name: "${bms1} cell voltage 16" cell_voltage_17: name: "${bms1} cell voltage 17" cell_voltage_18: name: "${bms1} cell voltage 18" cell_voltage_19: name: "${bms1} cell voltage 19" cell_voltage_20: name: "${bms1} cell voltage 20" cell_voltage_21: name: "${bms1} cell voltage 21" cell_voltage_22: name: "${bms1} cell voltage 22" cell_voltage_23: name: "${bms1} cell voltage 23" cell_voltage_24: name: "${bms1} cell voltage 24" cell_voltage_25: name: "${bms1} cell voltage 25" cell_voltage_26: name: "${bms1} cell voltage 26" cell_voltage_27: name: "${bms1} cell voltage 27" cell_voltage_28: name: "${bms1} cell voltage 28" cell_voltage_29: name: "${bms1} cell voltage 29" cell_voltage_30: name: "${bms1} cell voltage 30" cell_voltage_31: name: "${bms1} cell voltage 31" cell_voltage_32: name: "${bms1} cell voltage 32" charge_mosfet_status_code: name: "${bms1} charge mosfet status code" discharge_mosfet_status_code: name: "${bms1} discharge mosfet status code" balancer_status_code: name: "${bms1} balancer status code" switch: - platform: jk_bms_ble charging: name: "${bms0} charging" discharging: name: "${bms0} discharging" balancer: name: "${bms0} balancer" - platform: ant_bms_ble ant_bms_ble_id: bms1 charging: name: "${bms1} charging" discharging: name: "${bms1} discharging" balancer: name: "${bms1} balancer" buzzer: name: "${bms1} buzzer" - platform: ble_client ble_client_id: client0 name: "${bms0} enable bluetooth connection" - platform: ble_client ble_client_id: client1 name: "${bms1} enable bluetooth connection" text_sensor: - platform: jk_bms_ble errors: name: "${bms0} errors" total_runtime_formatted: name: "${bms0} total runtime formatted" - platform: ant_bms_ble ant_bms_ble_id: bms1 charge_mosfet_status: name: "${bms1} charge mosfet status" discharge_mosfet_status: name: "${bms1} discharge mosfet status" balancer_status: name: "${bms1} balancer status" total_runtime_formatted: name: "${bms1} total runtime formatted" device_model: name: "${bms1} device model" software_version: name: "${bms1} software version"