Habe es mit Raspbian probiert und ich habe das gleiche Ergebnis erhalten. Gibt es eine Möglichkeit die Codes von dem mode2 command dafür zu benutzen? Da werden die Tasten ja erkannt.
Posts by xMaschx
-
-
Hallo, wie benutze ich denn die Commands aus dem manual?
Ich wollte die Fernbedienung auf einem LibreElec RasPi aufnehmen, evtl. gibt es dabei Probleme?
-
Hallo, ja ich wollte die Fernbedienung quasi durch ein RasPi ersetzen damit ich mit einem Amazon Echo bzw. Alexa die Klimaanlage steuern kann. Mir reichen vollkommen auch die Basisfunktionen wie an und aus.
Ich gehe nicht davon aus dass bei einer Klimaanlage rolling codes benutzt werden ,aber falls doch wie lässt sich das herausfinden?
-
Der Link zu der Klimaanlage: Klimaanlage
Ich habe schon mehrere Fernbedienungen mit LIRC und irrecord aufgenommen, also bin ich wie immer vorgegangen. Einfach irrecord mir passendem device starten und die Anleitung befolgen.
Die Fehlermeldungen beinhalten sowohl Cannot decode data, als auch signal length too short oder signal length is 0
Hier als Bsp:
-
Hallo, ich habe heute eine neue Klimasplitanlage von TCL eingebaut, und wollte diese mit meinem RPi und Infrarot steuern. Leider lässt sich irrecord in Verbindung mit der Fernbedienung nicht nutzen. Die Punkte beim ersten Schritt erscheinen nur sehr unregelmäßig und bei der Aufnahme von einzelnen Tasten kommt es sehr oft zu Fehlermeldungen. Lässt sich dann doch mal eine Taste aufnehmen erhält diese nur den Code 0x0. Mit mode2 lassen sich die Infrarotsignale der Fernbedienung zwar auslesen, diese kann man in der Form allerdings nicht für irsend oder Ähnliches benutzen.
Der IR-Empfänger ist richtig angeschlossen und funktioniert auch. Das habe ich mit mehreren anderen Fernbedienungen getestet.
Gibt es eine Möglichkeit diese raw Codes zu benutzen oder irrecord dazu zu bringen die FB zu akzeptieren?
Danke im Vorraus
-
Es könnte theoretisch auch sein, dass es schon länger nicht mehr funktioniert, der Browser die Dateien aber immer noch im Cache hatte, und als ich den Cache geleert hatte die Dateien nicht auffindbar waren. Welche Config genau meinst du von Apache?
Der Code ist bei weitem nicht optimal und das ist mir auch vollkommen bewusst. Allerdings handelt es sich hier nur um eine private Website die nicht ausserhalb des Heimnetzwerks erreichbar ist. Daher reicht mir "funktioniert und muss nicht besonders schön sein".
Und ja ich weiss, da werden auch viele Leute nicht mit zufrieden sein, aber ich habe www-data root rechte gegeben.
Sollte es mal zu Problemen kommen, schalte ich Apache ab, und starte das Skript um schneller das Log sehen zu können.
-
Ja okay, daran habe ich nicht gedacht. Aber das sind ja im Grunde auch nur Kleinigkeiten. Es lief bis vor Kurzem ja sowohl mit dem Entwicklungsserver mit root Rechten als auch mit dem Apache Server als www-data Benutzer.
Ich habe hier fast die ganze run.py hochgeladen (ohne die sensiblen Daten und Funktionen) und hier die 2. run.py mit der alles funktioniert.
Die 2. Datei ist absolut minimalistisch hat nur das Nötigste zum Starten.
-
Das ist der relevante der Teil der python Datei. Alle anderen Funktionen haben nichts mit den statischen Dateien zu tun.
Die python run.py Datei liegt in /var/www/html und die statischen Dateien in z.B. /var/www/html/static/css/ oder /var/www/html/static/js.
Ich müsste noch erwähnen dass der Entwicklungsserver und der Apache Server im Grunde das gleiche sind. Bei dem Entwicklungsserver starte ich nur die Pythondatei und bei dem normalen Server starte ich Apache.
"/static" ist ein Unterverzeichnis von /var/www/html also ein Unterverzeichnis von dem Ordner wo die Pythondatei des Servers liegt.
Ich habe einen 2. Flask Server aufgesetzt, der nur die minimalsten Anforderungen zum Starten abdeckt. Rufe ich dann meine Website wieder auf, werden die Dateien ohne Probleme gefunden. Der 2. Server liegt im selben Verzeichnis wie der erste.
-
Den mMn. relevanten Code habe ich oben gepostet. Alles andere enthält nur die verschiedenen Seiten und Unterfunktionen die mit den statischen Dateien nichts zu tun haben. Ich habe mal noch die ganze layout.html Datei hochgeladen. layout.html
layout.html ist bei mir für das grundlegende Layout verantwortlich und wird in jeder anderen HTML Datei benutzt.
Ich bin mir nicht sicher was ich geändert haben sollte, dass einfache Dateien nicht mehr gefunden werden obwohl sie ganz offensichtlich da sind.
-
Wie ich bereits geschrieben habe, hatte ich die Option nur drin um zu testen ob es evtl. daran liegen könnte. Mein Problem besteht aber sowohl mit der Option als auch ohne.
-
Verzeichnisstruktur:
Ich bin mir nicht sicher was du mit Konfiguration meinst. Den Code von Flask?
Falls ja sollten das die relevanten Stellen sein:
Codeapp = Flask(__name__, static_folder="/var/www/html/static") @app.route('/static/<path>/<file>',methods=['GET']) def serve_file(path,file): return send_from_directory('/static/' + path,file) app.run(host="0.0.0.0",port=80,debug=True)Die serve_file Funktion habe ich zum testen eingebaut, welche Dateien gefunden werden und welche nicht. Ergebnis war gar keine werden gefunden.
Ich habe die App sowohl mit static_folder Parameter als auch ohne, und sowohl mit relativem als auch mit absolutem Pfad getestet.
-
Eigentlich von beidem, aber erstmal nur vom Entwicklungsserver der lokal läuft. Ich gehe davon aus dass das Problem nicht an Apache liegt, da selbst der Entwicklungsserver der die statischen Dateien selbst ausliefert, die Dateien nicht findet.
-
Das ist klar, dass ich für die Produktion mich selbst drum kümmern muss. Mein Problem ist aber, dass selbst der Entwicklungsserver von Flask die Dateien nicht findet.
Bis gestern abend lief alles noch problemlos mit Apache und WSGI. Die statischen Dateien wurden problemlos gefunden und ausgeliefert.
-
Ja Flask gibt nur 404 aus. Im Debug Log ist auch nur 404 zu finden und keine weitere Angaben. Sowohl der relative als auch absolute Pfad haben keine Besserung gebracht.
Ja ich benutze WSGI um den Flask Server auszuliefern. Aber selbst ohne Apache oder WhiteNoise sollte Flask doch in der Lage zu sein die Dateien zu finden,wenn ich Flask lokal laufen lasse.
-
Hallo, ich habe momentan einen Flask Server mit Apache2 auf meinem RasPi am Laufen. Bis gestern abend funktionierte alles wunderbar. Aber ganz plötzlich findet Flask die statischen Dateien wie die css und js Dateien nicht mehr. Ich habe seit mehreren Tagen an der Konfiguration nichts verändert und auch nichts neues installiert. Die Dateien liegen in ihren eigenen Ordnern im static Ordner im root Verzeichnisses des Servers.
Ich frage die Dateien mit
ab. Alle anderen Funktionen des Servers (Skripte ausführen, in eine Datenbank schreiben) funktionieren weiterhin problemlos. Das Problem ist Browser und Clientunabhängig und auch ein Neustart vom RasPi hat nichts geholfen.
Danke im Vorraus
-
Ja der Portscan funktioniert. Könnte es eventuell daran liegen dass ich das Zertifikat falsch generiert habe? Ich habe als Domainnamen den Namen meiner DynDns addresse angegeben.
-
Ich habe den RasPi und den Server mal neugestartet. Jetzt scheint der Server zumindest auf Verbindungen zu warten, ich kann aber immer noch nicht auf die Seite zugreifen.
Code
Display Moretcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:6011 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:2812 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN tcp6 0 0 :::8080 :::* LISTEN tcp6 0 0 :::22 :::* LISTEN tcp6 0 0 ::1:25 :::* LISTEN tcp6 0 0 ::1:6010 :::* LISTEN tcp6 0 0 ::1:6011 :::* LISTEN tcp6 0 0 ::1:2812 :::* LISTEN tcp6 0 0 :::5900 :::* LISTEN -
bei Port 80:
tcp6 1 0 raspi-ip:50018 raspi-ip:80 CLOSE_WAIT
und bei 443 erscheint gar nichts.
Anscheinend läuft der Server also gar nicht. Gibt es eine Möglichkeit herauszufinden warum, wenn Flask an sich keine Fehler meldet?
-
sieht ganz so aus, aber ich bin mir nicht sicher wo der Fehler liegt, wenn Flask keine Fehler ausgibt. Ich habe bereits debug aktiviert.
-
nc: connect to raspi-ip port 80 (tcp) failed: Connection refused
genauso mit Port 443