fancygaphtrn / esphome

esphome stuff
1 stars 1 forks source link

Which Kilovault battery was kilovault_bms_ble written for? #1

Open stevegoldsmith opened 3 weeks ago

stevegoldsmith commented 3 weeks ago

Hi

Which kilovault battery did you write kilovault_bms_ble for? I have a pair of 3600-HLX-v3 in the RV which has a bluetooth accessible bms and it doesn't appear to be for these....

I know Kilovault has been through a few generations of this battery since I bought them, and have since gone bust. When I try and connect to either battery with your code I get "_[E][kilovault_bmsble:057]: [...] No control service found at device, not an KILOVAULT BMS." so I am assuming it is for one of the newer batteries?

Thanks much,

fancygaphtrn commented 3 weeks ago

My invoice says KiloVault 3.6kWh 300 Ah 12V 3600 HLX+ UL. I got them last year.

Are you sure you have the correct MAC address?

My yaml: I believe if you uncomment the esp32_ble_tracker section it will show the mac and uuids. Would be helpful to see if they match.

substitutions: name: esp-kilovault1

name: esp-kilovault2

device_description: "Monitor a Kilovault Battery Management System via BLE" throttle_time: 10s mac_address: 30:45:11:FB:0A:52 battery: Battery1

mac_address: 50:33:8B:12:69:42

battery: Battery2

esphome: name: ${name} comment: ${device_description}

esp32: board: nodemcu-32s

board: lolin_d32_pro

framework: type: esp-idf

external_components:

wifi: networks:

debug: update_interval: 5s

api: encryption: key: !secret key

ota: platform: esphome password: !secret ota_password on_begin: then:

logger: level: INFO

logs:

kilovault_bms_ble: VERY_VERBOSE

ble_client: ERROR

esp32_ble: ERROR

esp32_ble_tracker: ERROR

scheduler: DEBUG

component: DEBUG

sensor: DEBUG

api: DEBUG

api.service: DEBUG

time:

esp32_ble_tracker:

scan_parameters:

Defaults

duration: 300s

interval: 320ms

window: 30ms

active: true

continous: true

interval: 640ms

window: 20ms

active: false

on_ble_advertise:

- mac_address: ${mac_address}

then:

- lambda: |-

ESP_LOGD("ble_adv", "New BLE device");

ESP_LOGD("ble_adv", " address: %s", x.address_str().c_str());

ESP_LOGD("ble_adv", " name: %s", x.get_name().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());

}

ESP_LOGD("ble_adv", " Advertised service data:");

for (auto data : x.get_service_datas()) {

ESP_LOGD("ble_adv", " - %s: (length %i)",

data.uuid.to_string().c_str(), data.data.size());

for(int i = 0; i < data.data.size(); i++) {

ESP_LOGD("ble_adv", " - %x %c ", data.data[i],

data.data[i]);

}

}

ESP_LOGD("ble_adv", " Advertised manufacturer data:");

for (auto data : x.get_manufacturer_datas()) {

ESP_LOGD("ble_adv", " - %s: (length %i)",

data.uuid.to_string().c_str(), data.data.size());

for(int i = 0; i < data.data.size(); i++) {

ESP_LOGD("ble_adv", " - %x %c ", data.data[i],

data.data[i]);

}

}

# ble_client:

kilovault_bms_ble:

sensor:

text_sensor:

switch:

binary_sensor:

On Fri, Aug 23, 2024 at 10:04 AM stevegoldsmith @.***> wrote:

Hi

Which kilovault battery did you write kilovault_bms_ble for? I have a pair of 3600-HLX-v3 in the RV which has a bluetooth accessible bms and it doesn't appear to be for these....

I know Kilovault has been through a few generations of this battery since I bought them, and have since gone bust. When I try and connect to either battery with your code I get "[E][kilovault_bms_ble:057]: [...] No control service found at device, not an KILOVAULT BMS." so I am assuming it is for one of the newer batteries?

Thanks much,

— Reply to this email directly, view it on GitHub https://github.com/fancygaphtrn/esphome/issues/1, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABNZILWSMTIZLV5366WL3YLZS46QPAVCNFSM6AAAAABNAIC2KSVHI2DSMVQWIX3LMV43ASLTON2WKOZSGQ4DGMRSHEZDENY . You are receiving this because you are subscribed to this thread.Message ID: @.***>

stevegoldsmith commented 3 weeks ago

My invoice says KiloVault 3.6kWh 300 Ah 12V 3600 HLX+ UL. I got them last year.

Thanks so much for the quick reply. Yea, that makes a lot of sense now. The HLX+ is a newer battery and they appear to have done a lot of work on the communications as that battery has an rs485 interface so batteries can communicate with each other, as well as apparently a better ble interface which the HLX-not plus version lacks.

Very much appreciate the work you have put into it. Hopefully the + has enough in common with the - and we can use your work as a launching point to talk to the older batteries.

Thanks again, /steve