Hallo Zusammen,
ich bin dabei ein Modul für das BLE-YC01 Pool Messgerät aus dem Land der Aufgehenden Sonne zu erstellen.
Es gibt zwar schon ein Modul, dieses baut aber auf eine Proprietäre Firmware auf einem ESP32 auf und leider auch auf einen Cloud Dienst.
Nun habe ich etwas geforscht und Überraschung, in HA reihen ist es natürlich integriert und das ohne Cloud.
Habe nun mal geschaut wie man das machen kann damit alles Transparent bleibt.
Somit bin ich bei Tasmota gelandet. Habe einen ESP32 mit tasmota32-bluetooth.bin Version 14.1.0 geflasht.
Bluetooth übers Menü Aktiviert und siehe da das Pool Messgerät macht auf sich Aufmerksam. Log vom Tasmota (MAC anonymisiert)
08:00:58.007 MQT: tele/tas-pool-ble/BLE = {"Time":"2024-06-20T08:00:58","BLEDevices":{"total":1,"C000000XXXXX":{"i":0,"n":"BLE-YC01","r":-71}}}
Als nächstes habe ich in Foren gefunden das man mit dem senden von FF02 and Subskription FF01 ein Datenpacket mit Hex Daten zurück bekommt.
Befehlt in Tasmota:
BLEOp M:c000000XXXXX s:FF01 c:FF02 r go
dann ein paar Momente später kommt das hier zurück:
08:04:54.988 MQT: tele/tas-pool-ble/BLE = {"BLEOperation":{"opid":"0","stat":"3","state":"DONEREAD","MAC":"C000000XXXXX","svc":"0xff01","char":"0xff02","read":"FFA1FE72FEBEFFFFFF5DFFFEFF55F798FBE825FE0CFFFEFFFFFFFF7745"}}
Tada in read steht das Payload.
Soweit so gut.
Natürlich, Tasmota sendet dies über MQTT an tele/{name vom tasmota gerät}/BLE als json
Somit haben wir den Payload in Symcon und da kann der Spass mit PHP weiter gehen.
Wer das alles bis hier mit verfolgt hat und mich unterstützen möchte. Kann diesen Anweisungen folgen und mir Payloads schicken. Also nur die Hex Daten von read.
Da mein Pooltester noch nicht im Pool ist und auch noch nicht Kalibriert kann ich bis jetzt nur sagen Temperatur und PH Wert bekomme ich so wie auf dem Display angezeigt. Ich brächte aber noch Daten aus dem Freifeld um das Dekodieren hier und da zu verfeinern. Natürlich bräuchte ich zu dem Hex string auch noch die Realen Daten von diesem Zeitpunkt
Aber Achtung, wenn man mit der App verbunden ist kann sich Tasmota nicht Parallel auch verbinden. App muss auf jeden Fall geschlossen sein und auch keine anderen Integrationen auf den Pooltester zugreifen.
So denn erstmal
Gruß
Dennis