98_myStrom.pm - myStrom WLAN Energy Control Switch

Begonnen von arallon, 11 August 2015, 23:46:25

Vorheriges Thema - Nächstes Thema

Fatboy

Hallo zusammen

!!! REMINDER !!!

Gibt es schon eine Lösung um auch negative Temperaturen anzeigen zu lassen? Die Temperaturen sinken wieder und ich habe noch immer keine Lösung :-)

Gruss Fatboy

gramels

#106
Zitat von: z-Bastler am 06 Februar 2019, 21:06:27
Hallo gramels
kannst du mal den Switch direkt aufrufen. Einmal mit http://ip_adresse/temp und einmal mit http://ip_adressse/report

bei mir sieht das so aus:
/report: {"power":0,"relay":false,"temperature":20.875}
/temp: {"measured":41.875,"compensation":21,"compensated":20.875}

Hast du dort negative Werte?
Ich verstehe den Wert "measured" nicht, hat nichts mit °C unf °F zu tun. Auf jeden Fall ist compensated aus /temp wohl die temperature im /report.

Gruss
Gunnar

Hallo Gunnar

Hier die Wert bei negativen Temperaturen:

http://192.168.121.100/report
{"power":78.831001281738281,"relay":true,"temperature":0}
http://192.168.121.100/temp
{"measured":21.375,"compensation":21.712358474731445,"compensated":-0.33735847473144531}


http://192.168.121.100/report
{"power":42.986473083496094,"relay":true,"temperature":0}
http://192.168.121.100/temp
{"measured":25.5625,"compensation":26.872735977172852,"compensated":-1.3102359771728516}


vermutlich muss man den "compensated" verwenden aus /temp da der andere nicht unter 0 geht.

Grüsse
Lothar

Speedy

Hallo zusammen,

ich wollte mal fragen, ob dieses Modul noch weiterentwickelt wird, bzw. ob Interesse an einer Weiterentwicklung besteht?

Ich habe mir den Motion Sensor, sowie je einen Wifi Button und Wifi Button + angeschafft. Die Hardware ist sehr interessant und preislich attraktiv. Daher würde ich das Modul gerne nutzen und weiterentwickeln. Ich hoffe, das ist für den Original-Modulentwickler (arallon, Mike) OK.

Falls jemand Interesse hat, würde ich mich über eine kurze Antwort freuen - vor allem auch mit der Info, welche myStrom-Devices ihr nutzt und welche Features ihr braucht...

VG - Speedy
FHEM auf Intel NUC mit Proxmox, Grafana, DbLog mit MariaDB, ZWave-/EnOcean-/HomeMatic-USB-Dongle, KNX IP-Bridge, HUE Bridge, Sonos, Avanta Gastherme, Presence via Unifi, Rolladensteuerung, Raumtemperatur-/Fussbodenheizung-Steuerung

eppi

Zitat von: Speedy am 30 Juni 2020, 16:21:35
Hallo zusammen,

ich wollte mal fragen, ob dieses Modul noch weiterentwickelt wird, bzw. ob Interesse an einer Weiterentwicklung besteht?

Ich habe mir den Motion Sensor, sowie je einen Wifi Button und Wifi Button + angeschafft. Die Hardware ist sehr interessant und preislich attraktiv. Daher würde ich das Modul gerne nutzen und weiterentwickeln. Ich hoffe, das ist für den Original-Modulentwickler (arallon, Mike) OK.

Falls jemand Interesse hat, würde ich mich über eine kurze Antwort freuen - vor allem auch mit der Info, welche myStrom-Devices ihr nutzt und welche Features ihr braucht...

VG - Speedy
Hi Speedy
Ich nutze vor allem die MyStrom Wifi-Plugs, die funktionieren mit dem Modul sehr gut. Ich habe noch einen Wifi-Button Plus, aber zurzeit nicht in Betrieb, da mir die Anwendung dafür noch fehlt. Über eine Weiterentwicklung würde ich mich freuen, da ich wie du die Dinger cool finde. Ich hatte vor ein paar Wochen Kontakt mit dem Support welcher mir mitteilte, dass für den Wifi Plug bis Weihnachten MQTT implementiert wird... Ob das für alle MyStrom Devices gilt, weiss ich nicht, da ich nur den Wifi-Plug angesprochen habe.

Viele Grüsse Eppi

Speedy

Zitat von: eppi am 30 Juni 2020, 19:03:44
Hi Speedy
Ich nutze vor allem die MyStrom Wifi-Plugs, die funktionieren mit dem Modul sehr gut. Ich habe noch einen Wifi-Button Plus, aber zurzeit nicht in Betrieb, da mir die Anwendung dafür noch fehlt. Über eine Weiterentwicklung würde ich mich freuen, da ich wie du die Dinger cool finde. Ich hatte vor ein paar Wochen Kontakt mit dem Support welcher mir mitteilte, dass für den Wifi Plug bis Weihnachten MQTT implementiert wird... Ob das für alle MyStrom Devices gilt, weiss ich nicht, da ich nur den Wifi-Plug angesprochen habe.

Viele Grüsse Eppi

Hallo Eppi,

danke für die schnelle Antwort. Den Wifi-Switch werde ich mir auch besorgen und testen. Sobald ich das neue Modul fertig habe, hänge ich es hier an. Die Info mit MQTT ist gut - ich werde den Support anschreiben und fragen, ob sie MQTT Unterstützung für alle Devices planen.

VG - Speedy
FHEM auf Intel NUC mit Proxmox, Grafana, DbLog mit MariaDB, ZWave-/EnOcean-/HomeMatic-USB-Dongle, KNX IP-Bridge, HUE Bridge, Sonos, Avanta Gastherme, Presence via Unifi, Rolladensteuerung, Raumtemperatur-/Fussbodenheizung-Steuerung

mheiker

Hallo zusammen,

den myStrom-Button plus finde ich zugegebenermaßen spannend!

Mit curl habe ich meinen single-Befehl auf den Button bekommen:

{
"2C3AE801BEDA":
{"type": "wheel",
"battery": true,
"reachable": true,
"meshroot": false,
"charge": false,
"voltage": 3.841,
"fw_version": "2.74.31",
"single": "get://192.168.178.30:8083/fhem?cmd=set%20WifiButton01%20on",
"double": "<url>",
"long": "<url>",
"touch": "<url>",
"generic": "",
"connectionStatus":
{"ntp": true,
"dns": true,
"connection": true,
"handshake": true,
"login": true},
"name": ""}
}


Der Befehl soll das dummy WifiButton01 schalten...in fhem kommt aber nichts an.
Der Button leuchtet beim Drücken einmal kurz grün, nach einer Sekunde dann kurz rot...

Hat jemand da zufällig eine Idee?

Viele Grüße!
Mathias

eppi

Zitat von: mheiker am 12 August 2020, 21:22:45

{
"2C3AE801BEDA":
{"type": "wheel",
"battery": true,
"reachable": true,
"meshroot": false,
"charge": false,
"voltage": 3.841,
"fw_version": "2.74.31",
"single": "get://192.168.178.30:8083/fhem?cmd=set%20WifiButton01%20on",
"double": "<url>",
"long": "<url>",
"touch": "<url>",
"generic": "",
"connectionStatus":
{"ntp": true,
"dns": true,
"connection": true,
"handshake": true,
"login": true},
"name": ""}
}


Der Befehl soll das dummy WifiButton01 schalten...in fhem kommt aber nichts an.
Hallo Mathias
Versuche mal anstelle von %20 für einen Space %2520 zu setzen, also in deinemFall:
get://192.168.178.30:8083/fhem?cmd=set%2520WifiButton01%2520on

Viel Erfolg & Grüsse Eppi

eppi

Gerade nochmals angeschaut und sehe, dass dein JSON schon richtig ist. Mit dem %2520 meinte ich das setzen des CURL Strings.
Hast du es so gemacht, wie ich hier geschrieben habe (ist schon etwas älter)....? CSRToken ausgeschaltet und kein BasicAuth definiert?

mheiker

Hallo eppi,

vielen Dank für deine Antwort!

Den Befehl habe ich mit curl so gesetzt:

curl -v -d "single=get://192.168.178.30:8083/fhem?cmd%3Dset%2520WifiButton01%2520on&double=&long=&touch=" http://192.168.178.65/api/v1/device/2C3AE801BEDA


Das passt also zu dem, wie du es vorher beschrieben hast, in json bekomme ich dies heraus:


single "get://192.168.178.30:8083/fhem?cmd=set%20WifiButton01%20on"


csfrToken habe ich deaktiviert, BasicAuth ist auch deaktiviert, in FHEM kommt aber nichts an...

Ich bin etwas verwirrt...

Viele Grüße!
Mathias


EDIT:

ha, es klappt!  :) keine Ahnung, warum, FHEM neu gestartet, den Button neu gestartet, Raspy neu gestartet...und siehe da, es klappt  8) da scheint sich etwas wohl verschluckt zu haben...

Vielen Dank nochmals für deine Hilfe, eppi!

eppi


gramels

Hallo Eppi,

ja, ich nutze das Modul und freue mich über weiterentwicklung. Was derzeit noch nicht geht ist die Anzeige von negativen Temperaturen. Ich habe einen in einem Aussenraum und würde gerne sehen, wenn da Frost ist. Siehe weiter oben. Falls Du den Code anschaust wäre es super, wenn Du da mal reinguggen könntest.

Grüsse

Lothar

z-Bastler

Hallo Leute
ich habe mich lange nicht hören lassen ... aber mich dieser Tage mit dem Modul beschäftigt und das mit der negativen Temperatur "gefixed".
Das Modul müsste mal aufgeräumt und aktualisiert werden, das kann ich aber nicht.
Der Timer und Funktionen rund um getMyStromTemp sind überflüssig. Das Attribut tempTimer ebenfalls. (ist zur Sicherheit disabled bei mir)

Meine Lösung: am Anfang von getData, nach Zeile 60, folgendes einfügen:


#Erweiterung für Temperatur
{
my $myurltemp = "http://" .$hash->{ip} . "/temp";
my ($err,$response) = HttpUtils_BlockingGet(
    {
url        => $myurltemp,
timeout     => 3,
        httpversion => "1.1",
});
    if (defined($err) && $err)
    {
$hash->{STATE} = 'n/a';
Log3 $name, 3, $name.": Error while getting data from myStrom adapter: $err";
return 0;
    }
    if (defined($response) && $response ne '')
    {
my $decode = eval {
jsonHelper($response);
        } or do {
$hash->{STATE} = 'n/a';
Log3 $name, 3, $name.": Error while getting data from myStrom adapter: The answer does not contain valid JSON from address " . $hash->{ip}. " Response: ".$response;
return 0;
        };
my $temperature = defined($decode->{'compensated'}) ? $decode->{'compensated'} : "-";
$temperature = round($temperature,2);
readingsSingleUpdate($hash, "temperature", $temperature , 1);
    }
}
#Ende Erweiterung


Bei mir funktioniert es. Mein Modul habe ich angehängt.
Grüsse
Gunnar

arallon

Hab mich auch mal wieder mit fhem auseinandergesetzt und mal wieder hier online.

Die letzten Anpassungen für die Temperatur nur vornehmen, wenn keine V1 der Steckdose im Einsatz ist. Das wird sonst crashen. Der tempTimer wurde aus dem Grund eingefügt, dass man auch weiterhin V1 benutzen kann und Temperatur nur bei Bedarf gelesen wird.

Ggf. könnte man etwas integrieren, damit man die Version einfach als Attribut setzen kann, wenn nicht gesetzt dann V1.

Wenn nur V2 im Einsatz, dann ist das sicherlich überflüssig und könnte schlanker gemacht werden. Wenn das noch im Einsatz ist bei paar Leuten hätte ich aktuell ein bisschen Zeit das aufzuräumen.

@Speedy: Ich hab grundsätzlich gar nichts dagegen, wenn das jemand weiter entwickeln will. ich selbst habe die V2 nicht erhalten und aktuell die V1 eigentlich auch nur noch rumliegen, da die Dinger mittlerweile keine stabile Wlan Verbindung mehr haben bei mir.

gramels

bei mir geht nun auch Temperatur unter 0 Grad. Allerdings gehen meine v1 switches nicht mehr mit dem update...

arallon

ja das hatte ich ja geschrieben, die Anpassungen die z-Bastler vorgenommen hat sorgen dafür das v1 nicht mehr korrekt funktioniert.