AndroidBMSApp icon indicating copy to clipboard operation
AndroidBMSApp copied to clipboard

gatt protocol help

Open aa755 opened this issue 2 months ago • 0 comments

Hi, I have a battery (Lossigy) with a BMS from the same company. I was able to use your app to view the battery stats. However, I want to do the logging on a raspberry and feed it to my home assistant instance. So I want to port your algorithm to python. I just need the battery percentage right now. From the code, it looks like you are subscribing to notifications from the 0000ff01-0000-1000-8000-00805f9b34fb characteristic. I tried to do the same below, but I an not receiving any notification. Do you also write to characteristic to start the data/notifications flow? I could not locate any such write in your codebase

import pygatt
from binascii import hexlify
import time

def handle_data(handle, value):
    hex_data = hexlify(value).decode('utf-8')
    print(f"Received data from handle {handle}: {hex_data}")

adapter = pygatt.GATTToolBackend()

try:
    adapter.start()
    print("Adapter started, connecting to device...")

    device = adapter.connect('10:A5:62:0F:0B:4D')

    print("Connected to device. Subscribing to notifications...")

    device.subscribe("0000ff01-0000-1000-8000-00805f9b34fb", callback=handle_data)

    print("Subscribed to notifications. Listening for data...")
    while True:
        time.sleep(10)
finally:
    print("Stopping adapter...")
    adapter.stop()

aa755 avatar Apr 30 '24 22:04 aa755