FRITZ!DECT 301 Temperatur vom Raspberry übertragen

  • Ausgabe erhalte ich trotzdem nicht

    Wenn Du einmal als root (noch dazu über ssh) und einmal als pi in /home/pi herumfummelst, wird das eher kürzer als länger Probleme geben. Und wenn das Skript nicht das tut, was Du erwartest, dann lass Dir die Fehler mal ausgeben.

  • FRITZ!DECT 301 Temperatur vom Raspberry übertragen? Schau mal ob du hier fündig wirst!

  • zunächst vielen vielen Dank euch allen. Ich bekomme alles, was ich brauche zum Laufen! Ihr seid die Besten!

    Nun noch meine Frage: Ich lasse alles über die Fritzbox momentan mit allen Rechten laufen. Wenn man das auf die "Smart-Home" Funktionen begrenzt, funktioniert es nämlich nicht mehr, da man dann auch nur über http://fritz.box/myfritz zugreifen kann. GIbt es ja eine simple Lösung für, bei der ihr mir helfen könntet?

  • Dafür entschuldige ich mich.

    Nicht entschuldigen. Lernen, mit den Dingen umzugehen, ist die bessere Variante. Es hat ja z.B. seinen Grund, dass Du Dich als "root" nur nach Änderungen am System bzw. über ssh anmelden kannst. Kleines Geheimnis: Jeder hier ist irgendwann einmal das erste Mal mit RPi bzw. Linux in Berührung gekommen. ;) Ab einer gar nicht so großen Komplexität kommst Du allerdings mit trial-and-error nicht weit, da solltest Du annhähernd wissen, was Du tust. Viel Freude weiterhin. :thumbup:

  • Hi, ich habe in der "heizkoerper.dat" gelesen, dass nur die Thermostate von AVM funktionieren... Hat da schon jemand was gefunden, um die Temperaturen der Eurotronic Comet DECT abfragen zu können?

    Gruß und so :cool:


    Ich habe eine Raspi Beere 3 und freue mich, dass sie läuft. Ich programmiere gern und freue mich wenn es auch funktioniert. Aber grundsätzlich hab ich keine Ahnung davon :conf:

    Bitte löscht nie dieses Forum! Hier steht alles drin was ich mir merken muss!

  • ich habe jetzt die Skripte bei mir rein kopiert, aber die Ausgabe ist gleich "nix". Ich habe auch keine vergleichbaren AVM Produkte zum vergleichen. Ich suche weiter

    Ich habe eine Raspi Beere 3 und freue mich, dass sie läuft. Ich programmiere gern und freue mich wenn es auch funktioniert. Aber grundsätzlich hab ich keine Ahnung davon :conf:

    Bitte löscht nie dieses Forum! Hier steht alles drin was ich mir merken muss!

  • Die liegen nun auf dem Raspberry. Keine Fehlermeldung, aber in der Ausgabe noch keine Werte oder sonstiges.

    Die SID wird auch sauber in der Datei "last.SID" abgelegt.

    Ich habe eine Raspi Beere 3 und freue mich, dass sie läuft. Ich programmiere gern und freue mich wenn es auch funktioniert. Aber grundsätzlich hab ich keine Ahnung davon :conf:

    Bitte löscht nie dieses Forum! Hier steht alles drin was ich mir merken muss!

  • Ich hab es... Die Werte, die ausgelesen wurden, muss man sich natürlich noch ausgeben lassen. :lol:

    Ich habe eine Raspi Beere 3 und freue mich, dass sie läuft. Ich programmiere gern und freue mich wenn es auch funktioniert. Aber grundsätzlich hab ich keine Ahnung davon :conf:

    Bitte löscht nie dieses Forum! Hier steht alles drin was ich mir merken muss!

  • es ist mir leider nur möglich die "Ist-Temperaturen" zu erkunden. Die Sollwerte sind nicht drin.

    Die Werte in $wertHK01 werden ja gesplittet in $HK01 und $HK02. Aber wenn ich den Wert 220 in $wertHK01 sehe, denke ich, dass es so nicht möglich ist.

    Ich habe eine Raspi Beere 3 und freue mich, dass sie läuft. Ich programmiere gern und freue mich wenn es auch funktioniert. Aber grundsätzlich hab ich keine Ahnung davon :conf:

    Bitte löscht nie dieses Forum! Hier steht alles drin was ich mir merken muss!

  • Danke hyle, kaum macht man es richtig, schon klappt es. Das ist doch verrückt :angel:

    Ich habe eine Raspi Beere 3 und freue mich, dass sie läuft. Ich programmiere gern und freue mich wenn es auch funktioniert. Aber grundsätzlich hab ich keine Ahnung davon :conf:

    Bitte löscht nie dieses Forum! Hier steht alles drin was ich mir merken muss!

  • Ich habe die Temperatur- und das Sollabfrage 6 Mal für meine 6 Thermostate eingetragen und darunter die Ausgabe.

    Über meine Endung (<br>\n";) nicht wundern... Das passt dann mit dem Zeilenumbruch in der Webseite, genau wie in der Konsole.

    Wie hyle mich schon gemahnt hat :danke_ATDE: , die richtige Variable abzufragen, erwähne ich das hier noch mal, obwohl es klar auch im Quelltext steht. (ich schon älter und voll übersehen)

    Die $cmdtmp bringt die gemessene Temperatur und die $cmdsoll, die aktuelle Solltemperatur. Es ist auch möglich die Absenk- und Komforttemperatur auszulesen. Die Zeiten, wann der Wechsel ist, habe ich nicht gesehen und nicht weiter gesucht, weil mir nicht wichtig.

    PS: Ich hatte zuvor das eQ-3 MAX! Cube System, wo ich die Öffnung der Thermostate in Prozent auslesen konnte, das fehlt hier echt... Wer da was finden, bitte bescheid sagen :shy:

    Ich habe eine Raspi Beere 3 und freue mich, dass sie läuft. Ich programmiere gern und freue mich wenn es auch funktioniert. Aber grundsätzlich hab ich keine Ahnung davon :conf:

    Bitte löscht nie dieses Forum! Hier steht alles drin was ich mir merken muss!

  • Moin zusammen,

    ich wollte das shell script aus #5 benutzen aber mit Zugang zur Fritzbox über https.

    Dazu braucht curl den Paramter "-k".

    Merkwürdigerweise ist der nicht bei allen curl Aufrufen angegeben. Aber mit -k klappt es auch über https.

    Ein weiterer Punkt ist, dass die grep Abfrage zum Auslesen der SID nicht funktioniert. Evt. liegt das m Firitz OS 7.50 ?

    Also das funktioniert bei mir nicht (keine Ausgabe):

    SID=$(curl -i -s -k -d "response=${RESPONSE}&username=${USER}" "${FBF}" | grep -Po -m 1 '(?<=sid=)[a-f\d]+')

    aber so klappt es:

    SID=$(curl -i -s -k -d "response=${RESPONSE}&username=${USER}" "${FBF}" | grep -oP '"sid": *"\K[^"]*')

    Alternativ mit wget statt curl:

    SID=$(wget --no-check-certificate -O - --post-data="response=${RESPONSE}&username=${USERNAME}" "${FBF}" | grep -oP '"sid": *"\K[^"]*')

    --------------

    Ich hab hier kein vollwertiges SmartHome im Einsatz aber ich hab diverse Temperatur Sensoren im Einsatz, u.a. Tuya Zigbee, Shelly H&T un dauch FritzBox Comet DECT.
    Ich lese mittels cron job die Temperatur Daten aus und bastel dann eine Grafik mit Google Graph.
    Klappt aus soweit aber trotz shell script aus #5 bekomme ich keien aktuelle Temperatur für meine Comet Teile.
    Müsste das nicht so aussehen?

    ...

    AIN="11959%200531552"

    ...

    TEMPINT=$(curl -s -k ${FBF}'/webservices/homeautoswitch.lua?ain='${AIN}'&switchcmd=gettemperatur&sid='${SID})

    Oder geht das mit den Comet nicht? Ich bekomme einen Fehler "Bad request"

    * Trying 2a01:...

    * Connected to fritz.box (2a01:...) port 443 (#0)

    * ALPN, offering h2

    * ALPN, offering http/1.1

    * successfully set certificate verify locations:

    * CAfile: /etc/ssl/certs/ca-certificates.crt

    * CApath: /etc/ssl/certs

    * TLSv1.3 (OUT), TLS handshake, Client hello (1):

    * TLSv1.3 (IN), TLS handshake, Server hello (2):

    * TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):

    * TLSv1.3 (IN), TLS handshake, Certificate (11):

    * TLSv1.3 (IN), TLS handshake, CERT verify (15):

    * TLSv1.3 (IN), TLS handshake, Finished (20):

    * TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):

    * TLSv1.3 (OUT), TLS handshake, Finished (20):

    * SSL connection using TLSv1.3 / TLS_AES_128_GCM_SHA256

    * ALPN, server did not agree to a protocol

    * Server certificate:

    * subject: CN=dieko.goip.de

    * start date: Jul 25 21:53:11 2022 GMT

    * expire date: Jan 15 21:53:11 2038 GMT

    * issuer: CN=dieko.goip.de

    * SSL certificate verify result: self signed certificate (18), continuing anyway.

    > GET /webservices/homeautoswitch.lua?ain=11959%200531552&switchcmd=gettemperatur&sid=4a8a420fbff647fa HTTP/1.1

    > Host: fritz.box

    > User-Agent: curl/7.74.0

    > Accept: */*

    >

    * TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):

    * TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):

    * old SSL session ID is stale, removing

    * Mark bundle as not supporting multiuse

    < HTTP/1.1 400 Bad Request

    < Cache-Control: no-cache

    < Connection: Keep-Alive

    < Content-Length: 0

    < Content-Type: text/plain; charset=utf-8

    < Expires: -1

    < Pragma: no-cache

    < Keep-Alive: timeout=60, max=300

    < X-Frame-Options: SAMEORIGIN

    < X-XSS-Protection: 1; mode=block

    < X-Content-Type-Options: nosniff

    < Content-Security-Policy: default-src 'none'; connect-src 'self'; font-src 'self'; frame-src https://service.avm.de https://fritzhelp.avm.de/help/ https://help.avm.de https://www.avm.de https://avm.de https://assets.avm.de https://clickonce.avm.de http://clickonce.avm.de http://download.avm.de https://download.avm.de 'self'; img-src 'self' https://tv.avm.de https://help.avm.de/images/ http://help.avm.de/images/ data:; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; frame-ancestors 'self'; media-src 'self'

    <

    * Connection #0 to host fritz.box left intact

    Danke für einen Hinweis...

  • Hab jetzt nur überflogen...

    Müsste das nicht so aussehen?

    ...

    AIN="11959%200531552"

    Also bei mir wird von der AIN das Leerzeichen (oder Ersatz) weggelassen, also wäre die in Deinem Fall AIN="119590531552".


    //Edit

    Du kannst Dir evtl auch mal https://fritzconnection.readthedocs.io/en/latest/ anschauen. Vielleicht liegt Dir das ja eher.

  • OK, das Leerzeichen in der AIN war nicht das Problem, augenscheinlich muss man das entfernen oder durch %20 ersetzen, geht beides.

    Aber das Problem war, ich hatte beim switchcmd temperatur kein 'e' am Ende geschrieben... :(

    Nun läuft es wie erwartet, thx!

    Die Doku werd ich mir aber auch mal anschauen...

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!