NEWS
PH-Messung
-
After some sniffing of network traffic it seem that the device connects without encryption to the gizwits cloud via MQTT which is good news.
I tried some MQTT connection attempts to the gizwits broker but had to roll back to python since MQTT Exorer is locked to v3.1.1 and the broker is on v3.1 (non-compatible).
I can connect but have issues with subscriptions. Some are acked bit no data received.After more googing I also found https://github.com/gizwits/gizwits-wechat-js-sdk which is my next attempt.
-
@chaosbrother
Actually, when reading your initial message I think I understand your request a bit more. You want the device to connect to a local MQTT broker instead of the GizWits?
When Wiresharking the communication at startup I see that it starts by a http request to m2m.gizwits.com/<xxxxx> (exact string lost for now but can find out). The response to this request is just a string with the MQTT and LOG servers.
If you have an advanced router or connect the devive through a gateway you could modify the request to go to a local server and respond with your own server adresses. -
@dala Thx for your research. Well I tried as well, but stuck at the moment. Came to the same conclusion. Something serial seems to going on inside. And the traffic from device, well i tried to redirect but at the moment unsuccessfull. It seems the device talk to that IP not to dns (what is with my router more easy to redirect). Well somehow i captured one connection try:
12.03.2021, 22:16:44 | RECEIVED [10.0.73.16:15872] | <DLE>H<NUL><ACK>MQIsdp<ETX>�<NUL>x<NUL><SYN>GveJm1SDYBZDwYb2MRaraO<NUL><SYN>GveJm1SDYBZDwYb2MRaraO<NUL><LF>SUYJJGWHGV
12.03.2021, 22:16:44 | RECEIVED [10.0.73.16:15872] | 10 48 00 06 4D 51 49 73 64 70 03 C2 00 78 00 16 47 76 65 4A 6D 31 53 44 59 42 5A 44 77 59 62 32 4D 52 61 72 61 4F 00 16 47 76 65 4A 6D 31 53 44 59 42 5A 44 77 59 62 32 4D 52 61 72 61 4F 00 0A 53 55 59 4A 4A 47 57 48 47 56
My goal is only to get the Values out of the device (without Cloud).
Ok I switch to german for the other guys, here is a connection procedure for IOS:
App Gizwits - das ist wohl mehr so allgemein für IOT Sachen, das Ding scheint aber damit erstellt worden zu sein
Add Device per Softap Config
nun die WLan Daten
Bei Prefix: XPG-GAgent
Typ ESP
Iphone zu dem XPG... Netz verbinden ... PW: 123456789Ab jetzt verbindet sich das Ding mit eurem Netz, wird in der App aber nicht angezeigt.
Gruß,
Jan -
Ok ich habs hinbekommen. Folgendes Vorgehen:
- Das Teil ins Netz einbuchen siehe oben.
- Die IP 10.0.73.16 "umbiegen" das Sie auf euren MQTT Server zeigt
- Bei mir hat er das Thema: dev2app/GveJm1SDYBZDwYb2MRaraO angelegt
- Der Inhalt ist BIN.
Die Interessanten Werte:
Stelle 20/21 HighByte PH 22/23 Low Byte PH das Ergebniss durch 100
Stelle 24/25 HighByte Redox 26/27 Low Byte Redox das Ergebniss minus 2000Das einzige was sich noch änderte war Stelle 18/19 vielleicht der Relay Status.
Hier mein PHP Code zur Auswertung (GetValue / SetValue gehört zu meiner Hausautzomation)
$a = GetValue (48525); $v = bin2hex ( $a ); //$b = GetValue (39583); //SetValue (39583,$b .PHP_EOL. $v); $redox = (hexdec (substr ($v, 24,2)) *256 + hexdec (substr ($v, 26,2)) ) - 2000; $ph = (hexdec (substr ($v, 20,2)) *256 + hexdec (substr ($v, 22,2)) ) / 100; SetValue (15804, $ph); SetValue (47325, $redox);
-
Hi
That all sounds great. Thank you very much for your effort.
If I have Mqtt in the Iobroker then I would only have to redirect the data there.
Sorry my English is not perfect.
I'll order a part like that and try to read out the firmware.
Gruß Chaosbrother -
@dala Hi.
yes that's exactly what I want to receive via mqtt.
But I don't get any further.
Thank you
Greeting chaosbrother -
@anti Hallo Jan
Hab schon im Poolpowershop gelesen von dir. Irgenwie steige ich nicht durch. Ich bestell mir mal das Teil und logge es in mein Wlan ein , dann muß ich weiter probieren.
Es ist doch ein Esp verbaut da muss doch eine bin drauf sein die man auslesen könnte oder sehe ich das falsch?
Gruß Chaosbrother.Sorry bin nocht recht neu in der Materie , hab erst seit Januar iobroker laufen , das geht aber schon recht gut.
Das mit der Messung geht aber schon ein bischen tiefer , so fit bin ich noch nicht. Hab auch schon über die EZO Teile gelesen , bekomme aber die Skteche mich kompiliert. -
Naja ich hab iobroker nicht. Hab hier nurgeschrieben, weil es das einzige Thema zu dem 803W war das ich finden konnte. Bei mir ist die MQTT in meiner Hausautomation eingebaut (IP-Symcon). Ich bin da auch nicht tief im Thema MQTT.
Ja im 803W ist ein ESP drin. Aber den auszulesen und reverseengeneering ... naja also das mach ich nicht. Man könnte wenn man Lust hat noch mal schauen, ob das was der ESP am seriellen Anschluss bekommt quasi identisch ist mit dem was nacher im MQTT String steht, dann wär es ja recht simpel ein eigenes Programm auf das Ding zu flashen, das das eben dahin schickt, wo man es habrn will.
Für mich ist die aktuelle Lösung gangbar. Allerdings wäre ich definitiv interessiert wenn jmd. das weiter analysiert.
Gruß,
Jan -
@anti Ok ich habs hinbekommen. Folgendes Vorgehen:
Das Teil ins Netz einbuchen siehe oben. Die IP 10.0.73.16 "umbiegen" das Sie auf euren MQTT Server zeigt Bei mir hat er das Thema: dev2app/GveJm1SDYBZDwYb2MRaraO angelegt Der Inhalt ist BIN.
So Gerät ist nun angekommen. Kannst du mir bitte etwas genauer erklären wie ich ins eingene Wlan komme. Blicke da nicht so durch wie du das meinst
Allesdings hab ich kein IOS nur Android. Hab das Teil noch nicht angeschlossen , das werde ich die nächste Zeit mal probieren.
Danke
Gruß Chaosbrother -
Hallo nochmal.
Stand bis jetzt. Das ph803w baut eine eigenes Wifi auf , so wie esp auch.
Sid= XPG-GAgent-47C2.
Um auf die Oberfläche de Config zu kommen braucht man aber einen Netzwerkschlüssel.
Das Passwort 123456789 geht. Allerdings verbinde ich mit dem Laptop zum Netzwerk nicht mit Gizwitz
Bin mit dem Wifi jetzt verbunden. Jetzt nur noch die IP von den Teil rausfinden , dann sollte man auf die Oberfläsche kommen. Denk ich mal.
Gruß Chaosbrother -
@chaosbrother
Bei mir ist die IP 10.10.100.254, einzig offener Port ist 80, mit dem Browser bekomme ich eine empty response. ich war nur mit dem Handy dran, konnte noch nicht mehr versuchen.Claudio
-
@johnbobjamesson hallo. Ja stimmt Ip und Gateway sind 10.10.100.254. Bekomme auch keine Rückantwort vom Gerät.
das heißt also weiterprobieren wie es sich mit dem Server verbindet. Irgendwo gibt es eine Möglichkeit. Wenn man wüsste ob in dem Esp noch Daten verarbeitet werden oder nicht , oder ob es nur als Sendeeinheit benutzt wird. Angeschlossen sind nur die Pins 0-Flash , 1-TX , 3-RX , 15-TX2 , Enable , Vcc und GND. Demnacht sollten die Daten im Gerät schon errechnet werden und dann nur gesendet werden an den Server.
Gruß Chaosbrother -
@chaosbrother wen ich mir die Dokumentation durchlese, gibt es aber wohl 2 Modi, wie Daten vom "device" zur app gelangen: remote über die IoTClout und direkte Datenübertragung zwischen GAgent und der App, wenn die im gleichen Subnet sind.
https://docs.gizwits.com/en-us/DeviceDev/GAgent.html#4-Send-commands-and-report-device-data
Die App fragt in der Cloud die Liste der devices an und dann im eigenen Netzwerk. Wenn im eigenen Netzwerk was antwortet, wird die Verbindung direkt hergestellt.
Das spiegelt sich bei mir in der App, wenn ich ins eigene Netz wechsele, ändert sich der Status des Gerätes von "remote" zu "LAN".
Claudio -
@johnbobjamesson Irgendwie steh ich auf dem Schlauch. Verstehe das ganze im Moment nicht so.
Welche App muß ich denn jetzt benutzen? Ich brauche die Daten in meinem Netzwerk damit ich sie mit Iobroker verarbeiten kann , auf der App brauche ich sie nicht , das hab ich ja via VPN auf der VIS.Update: Hab das mit der Org.App hinbekommen , ohne Registrierung wird in der App die Werte nun angezeigt. Hat auch eine IP im Netzwerk bekommen. Wie leite ich die jetzt auf den Iobroker um? Wenn ich die IP eingebe im Browser bekomme ich kein zugriff.
-
@johnbobjamesson Hallo,
Da ich auch Interesse an der Anbindung des Sensors an meinen IoBroker habe, wollte ich mal fragen wie es bei euch funktioniert.
Sg.
Gerald -
@gerald123 Hallo
Bin aktuell noch nicht weiter gekommen. Werte bisher nur in der App ohne Cloud. Man müsste den ESP auslesen , das man sieht was auf Tx/Rx passiert. Evtl die IP-Adresse ändert. Nur mal so als Gedanke. -
Bin ebenfalls an einer Lösung für die Integration in ioBroker interessiert
-
@anti ich versuche gerade die ip umzubiegen aber habe keine Idee wie ich das schaffe, könntest du mich mal in die richtige Richtung lenken damit ich das hinbekomme?
-
Gestern mal mit Wireshark das Wlan gesnift. Daten werden von der internen IP auf die 10.10.100.154 auf Port 12154 gesendet.
War aber nichts brauchbares bzw. lesbares dabei. Gesendet wird über UDP.
Ist schon jemand weiter in der Sache? -
@chaosbrother sagte in PH-Messung:
@gerald123 Hallo
Man müsste den ESP auslesen , das man sieht was auf Tx/Rx passiert.das wird nichts, da bekommst du höchstens den Binärcode raus und den wirst du dann nicht wandeln können