Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- substitutions:
- name: bms
- device_description: "Monitor and control a Xiaoxiang Battery Management System (JBD-BMS) via BLE"
- external_components_source: github://syssi/esphome-jbd-bms@main
- mac_address: A4:C1:37:50:75:C6
- esphome:
- name: bms
- comment: ${device_description}
- project:
- name: "syssi.esphome-jbd-bms"
- version: 1.4.0
- esp32:
- board: esp32dev
- framework:
- type: arduino
- external_components:
- - source: ${external_components_source}
- refresh: 0s
- wifi:
- ssid: !secret wifi_ssid
- password: !secret wifi_password
- ota:
- password: "b98fe452bffc45cdbacb993fe99d1cf6"
- logger:
- # If you use Home Assistant please remove this `mqtt` section and uncomment the native `api` component!
- # api:
- # Enable Home Assistant API
- api:
- encryption:
- key: "z+BLpqKB03btGrK/cEl8ZSixoVGF7EBO+pBobnU+nXU="
- esp32_ble_tracker:
- on_ble_advertise:
- then:
- - lambda: |-
- if (x.get_name().rfind("xiaoxiang", 0) == 0) {
- ESP_LOGI("ble_adv", "New JBD-BMS found");
- ESP_LOGI("ble_adv", " Name: %s", x.get_name().c_str());
- ESP_LOGI("ble_adv", " MAC address: %s", x.address_str().c_str());
- ESP_LOGD("ble_adv", " Advertised service UUIDs:");
- for (auto uuid : x.get_service_uuids()) {
- ESP_LOGD("ble_adv", " - %s", uuid.to_string().c_str());
- }
- }
- ble_client:
- - id: client0
- mac_address: ${mac_address}
- jbd_bms_ble:
- - id: bms0
- ble_client_id: client0
- update_interval: 2s
- binary_sensor:
- - platform: jbd_bms_ble
- jbd_bms_ble_id: bms0
- balancing:
- name: "${name} balancing"
- charging:
- name: "${name} charging"
- discharging:
- name: "${name} discharging"
- online_status:
- name: "${name} online status"
- sensor:
- - platform: jbd_bms_ble
- jbd_bms_ble_id: bms0
- battery_strings:
- name: "${name} battery strings"
- current:
- name: "${name} current"
- device_class: "current"
- state_class: "measurement"
- power:
- name: "${name} power"
- device_class: "power"
- state_class: "measurement"
- charging_power:
- name: "${name} charging power"
- device_class: "power"
- state_class: "measurement"
- discharging_power:
- name: "${name} discharging power"
- device_class: "power"
- state_class: "measurement"
- state_of_charge:
- name: "${name} state of charge"
- device_class: "battery"
- state_class: "measurement"
- nominal_capacity:
- name: "${name} nominal capacity"
- charging_cycles:
- name: "${name} charging cycles"
- capacity_remaining:
- name: "${name} capacity remaining"
- battery_cycle_capacity:
- name: "${name} battery cycle capacity"
- total_voltage:
- name: "${name} total voltage"
- device_class: "voltage"
- state_class: "measurement"
- average_cell_voltage:
- name: "${name} average cell voltage"
- delta_cell_voltage:
- name: "${name} delta cell voltage"
- min_cell_voltage:
- name: "${name} min cell voltage"
- max_cell_voltage:
- name: "${name} max cell voltage"
- min_voltage_cell:
- name: "${name} min voltage cell"
- max_voltage_cell:
- name: "${name} max voltage cell"
- temperature_1:
- name: "${name} temperature 1"
- temperature_2:
- name: "${name} temperature 2"
- temperature_3:
- name: "${name} temperature 3"
- cell_voltage_1:
- name: "${name} cell voltage 01"
- cell_voltage_2:
- name: "${name} cell voltage 02"
- cell_voltage_3:
- name: "${name} cell voltage 03"
- cell_voltage_4:
- name: "${name} cell voltage 04"
- cell_voltage_5:
- name: "${name} cell voltage 05"
- cell_voltage_6:
- name: "${name} cell voltage 06"
- cell_voltage_7:
- name: "${name} cell voltage 07"
- cell_voltage_8:
- name: "${name} cell voltage 08"
- cell_voltage_9:
- name: "${name} cell voltage 09"
- cell_voltage_10:
- name: "${name} cell voltage 10"
- cell_voltage_11:
- name: "${name} cell voltage 11"
- cell_voltage_12:
- name: "${name} cell voltage 12"
- cell_voltage_13:
- name: "${name} cell voltage 13"
- cell_voltage_14:
- name: "${name} cell voltage 14"
- operation_status_bitmask:
- name: "${name} operation status bitmask"
- errors_bitmask:
- name: "${name} errors bitmask"
- balancer_status_bitmask:
- name: "${name} balancer status bitmask"
- software_version:
- name: "${name} software version"
- # RSSI based on MAC address
- - platform: ble_rssi
- mac_address: A4:C1:37:50:75:C6
- name: "rssi jbd"
- - platform: wifi_signal
- name: "WiFi FVE"
- update_interval: 60s
- text_sensor:
- - platform: jbd_bms_ble
- jbd_bms_ble_id: bms0
- errors:
- name: "${name} errors"
- operation_status:
- name: "${name} operation status"
- device_model:
- name: "${name} device model"
- switch:
- - platform: ble_client
- ble_client_id: client0
- name: "${name} enable bluetooth connection"
- - platform: jbd_bms_ble
- jbd_bms_ble_id: bms0
- charging:
- name: "${name} charging"
- discharging:
- name: "${name} discharging"
- balancer:
- name: "${name} balancer"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement