FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: CoolTux am 02 Juni 2017, 23:29:45

Titel: [Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 02 Juni 2017, 23:29:45
Hallo,

Ich habe auf Bitte eines Users ein kleines Modul geschrieben welches die Daten eines SmartPi Smartmeters (http://www.emanager.eu/de/products/smartpi) auslesen kann.



Grüße
Leon
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: FHEMBOC am 16 Juni 2017, 20:53:32
Zuerst mal: Toll, wie dieses Forum hier funktioniert. Ich bin hell begeistert. Danke vielmals!

Ich habe das Modul getestet. Leider werden nicht alle Daten in den Readings ausgegeben.
Es fehlen z.Bsp. alle  Power-Daten. Kann diese auch nicht mir get aufrufen.

Gruss Chris
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 16 Juni 2017, 20:59:36
Stell Mal bitte auf verbose 5 und mach mal ein get all. Danach muss im Log der JSON String auftauchen.


Grüße
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: FHEMBOC am 16 Juni 2017, 22:17:29
und hier die Antwort...

2017.06.16 21:50:36 4: WEB_192.168.1.17_50665 POST /fhem?detail=mySmartMeter&dev.getmySmartMeter=mySmartMeter&cmd.getmySmartMeter=get&arg.getmySmartMeter=all&val.getmySmartMeter=all&XHR=1&addLinks=1&fw_id=3392; BUFLEN:0
2017.06.16 21:50:36 5: Cmd: >get mySmartMeter all all<
2017.06.16 21:50:36 5: Starting notify loop for mySmartMeter, 1 event(s), first is fetch data
2017.06.16 21:50:36 5: End notify loop for mySmartMeter
2017.06.16 21:50:36 4: HttpUtils url=http://192.168.1.21:1080/api/all/all/now
2017.06.16 21:50:36 5: SmartPi (mySmartMeter) - Send with URI: 192.168.1.21:1080/api/all/all/now
2017.06.16 21:50:36 4: WEB: /fhem?detail=mySmartMeter&dev.getmySmartMeter=mySmartMeter&cmd.getmySmartMeter=get&arg.getmySmartMeter=all&val.getmySmartMeter=all&XHR=1&addLinks=1&fw_id=3392 / RL:20 / text/plain; charset=UTF-8 / Content-Encoding: gzip
/
2017.06.16 21:50:36 5: HttpUtils request header:
GET /api/all/all/now HTTP/1.0
Host: 192.168.1.21:1080
User-Agent: fhem


2017.06.16 21:50:36 4: http://192.xxx.x.xx:1080/api/all/all/now: HTTP response code 200
2017.06.16 21:50:36 4: HttpUtils http://192.xxx.x.x:1080/api/all/all/now: Got data, length: 1280
2017.06.16 21:50:36 5: HttpUtils response header:
HTTP/1.0 200 OK
Date: Fri, 16 Jun 2017 19:50:36 GMT
Content-Length: 1280
Content-Type: text/plain; charset=utf-8
2017.06.16 21:50:36 4: SmartPi (mySmartMeter) - Write Readings
2017.06.16 21:50:36 5: Starting notify loop for mySmartMeter, 52 event(s), first is serialNumber: smartpi160812345
2017.06.16 21:50:36 5: End notify loop for mySmartMeter
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 17 Juni 2017, 06:58:58
Hast Du wirklich nur beim SmartPi Device auf verbose 5 gestellt?
Lade Dir mal bitte die neue Version aus dem Git runter, habe erstmal mehr Logausgaben drin. Ausserdem hatte ich noch einen allgemeinen Fehler drin.



Grüße
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: FHEMBOC am 17 Juni 2017, 12:17:33
Hallo Leon

Sorry, natürlich im GLOBAL geändert  :)

Wenn ich GET Phase 1 Power wähle werden nur die ROTEN Readings eingetragen.


Hier die Log-Daten:
2017.06.17 12:19:04 5: SmartPi (mySmartMeter) - Send with URI: 192.168.1.21:1080/api/all/all/now
2017.06.17 12:19:04 4: SmartPi (mySmartMeter) - Recieve JSON data: {"serial":"smartpi160812345","name":"B1.1_House","lat":52.3667,"lng":9.7167,"time":"2017-06-17 10:19:04","softwareversion":"","ipaddress":"169.254.3.10","datasets":[{"time":"2017-06-17 10:19:02","phases":[{"phase":1,"name":"phase 1","values":[{"type":"current","unity":"A","info":"","data":1.0003561},{"type":"voltage","unity":"V","info":"","data":230},{"type":"power","unity":"W","info":"","data":230.0819},{"type":"cosphi","unity":"","info":"","data":-0.72846437},{"type":"frequency","unity":"Hz","info":"","data":49.306625}]},{"phase":2,"name":"phase 2","values":[{"type":"current","unity":"A","info":"","data":0.45092472},{"type":"voltage","unity":"V","info":"","data":230},{"type":"power","unity":"W","info":"","data":103.712685},{"type":"cosphi","unity":"","info":"","data":-0.82941854},{"type":"frequency","unity":"Hz","info":"","data":48.192772}]},{"phase":3,"name":"phase 3","values":[{"type":"current","unity":"A","info":"","data":0.4813663},{"type":"voltage","unity":"V","info":"","data":230},{"type":"power","unity":"W","info":"","data":110.71425},{"type":"cosphi","unity":"","info":"","data":-0.2584238},{"type":"frequency","unity":"Hz","info":"","data":50.354053}]},{"phase":4,"name":"phase 4","values":[{"type":"current","unity":"A","info":"","data":0.7937981}]}]}]}

2017.06.17 12:19:04 4: SmartPi (mySmartMeter) - Write Readings

Gruss Chris
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 17 Juni 2017, 13:09:38
Ok ich sehe schon. Schaue ich mir an.


Grüße
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 17 Juni 2017, 13:59:46
Bitte die neue Version vom Git laden und installieren. Danach ein reload machen und zum Schluß noch deletereading DEVICENAME .*
DEVICENAME ist der Name des SmartPi Devices.



Grüße
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: FHEMBOC am 19 Juni 2017, 21:55:22
Hallo Leon

Funktioniert! Besten Dank für die Unterstützung. Jetzt bin ich an einem geeigneten UI.
Gruss Chris
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 19 Juni 2017, 22:42:49
Sehr schön. Na dann viel Spaß.
Wenn noch was ist einfach melden.


Grüße
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: bern69 am 14 Juli 2017, 21:10:50
@CoolTux

Herzliches Dankeschön und ebenso herzliches Kompliment für das Modul. Ging alles sehr einfach und schnell.
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 19 Juli 2017, 09:36:38
Ich habe das Modul soeben offiziell gemacht. Morgen Früh dann per Update Befehl
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 19 Juli 2017, 22:17:54
Ja e gerade gesehen das in der Commandref noch die Attribute fehlen. Reiche ich die Tage nach.
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: Groej am 01 Januar 2018, 11:53:22
Prost Neujahr an alle hier!!!

Ich hab damals das Thema mit dem SmartPi glaube ich angeschubst. Blöde Frage jetzt von mir. Habt ihr den SmartPi auf den gleichen Raspi installiert wo auch FHEM läuft oder auf einen eigenen RasPi? Würde beides gehen?

Danke

Gruß

Jörg
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 01 Januar 2018, 11:59:29
Frohes Neues.

Es würde beides gehen.


Grüße
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: Groej am 01 Januar 2018, 12:04:10
Moin CoolTux,

wie immer schnell beim Antworten :). Wie würde das laufen. FHEM Raspi holt die Daten vom SmartPi Raspi ab - TELNET, FTP oder per MQTT z.B.? Mach halt viel mit MQTT.

Gruß

Jörg
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 01 Januar 2018, 12:09:30
Der SmartPi ist doch eigentlich nichts weiter wie ein Webfrontend und die darunter liegende Software zum Datenerfassen. Du sprichst doch den SmartPi ganz normal über seinen http Port an.
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: Groej am 01 Januar 2018, 12:31:48
Ah ok und so macht das Dein Modul jetzt auch? Frag so blöd weil in der Commandref kein define steht mit einer IP Adresse und Port usw..

Gruß

Jörg
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 01 Januar 2018, 12:42:35
Zitat
define <name> SmartPi <HOST>

Du hast Recht es fehlt in der Tat ein define Beispiel. Ich werde es ergänzen
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: Groej am 01 Januar 2018, 13:24:26
Super jetzt blick ich da auch durch - Danke :).  Hab aber auch gerade auf der Homepage vom Hersteller was von MQTT Support gelesen.
Titel: Antw:[Neues Modul - 46_SmartPi.pm] Auslesen eines SmartPi Smartmeters
Beitrag von: CoolTux am 02 Januar 2018, 10:51:41
Ich habe soeben eine neue Version in mein GitHub geladen. Kann das bitte mal jemand testen.
Commandref erweitert und ne NotifyFn Funktion eingebaut damit das mit den Attributen etwas sauberer läuft.