ESP RGBWW Wifi Led Controller - Support Thread

Begonnen von pjakobs, 07 Juni 2019, 10:48:27

Vorheriges Thema - Nächstes Thema

Wzut

Zitat von: pjakobs am 22 Juni 2019, 14:26:02
eines der drei hat das Problem bisher immer gelöst.
Bei mir aber nicht :( , mehr als drei verschiedne Geräte mit diversen Browsern habe ich leider nicht.
Wollte jetzt einfach mal neu flashen , aber auch das geht schief da esptool.py keine Verbindung bekommt :
Connecting........_____....._____....._____....._____....._____....._____....._____

A fatal error occurred: Failed to connect to Espressif device: Timed out waiting for packet header

Im Flashmodus müsst er sein da nach PRG+RST kein AP mehr aufgemacht wird

Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

pjakobs

#121
Zitat von: Wzut am 22 Juni 2019, 14:41:12
Bei mir aber nicht :( , mehr als drei verschiedne Geräte mit diversen Browsern habe ich leider nicht.
Wollte jetzt einfach mal neu flashen , aber auch das geht schief da esptool.py keine Verbindung bekommt :
Connecting........_____....._____....._____....._____....._____....._____....._____

A fatal error occurred: Failed to connect to Espressif device: Timed out waiting for packet header

Im Flashmodus müsst er sein da nach PRG+RST kein AP mehr aufgemacht wird
RTS/CTS vertauscht?  [edit] Orr: RXD/TXD

und: Wenn es ein flash Problem ist, dann bekommst Du eigentlich immer einen Error 404, weil der Controller sein SPIFFS nicht mounten kann. Leere Seite deutet auf einen unvollständigen javascript blob hin.
Wenn Du Chrome benutzt kannst Du mal unter Menu->Weitere Tools->Entwicklertools da den Network Tab anschauen wenn die Seite geladen wird. ich vermute, dass entweder app.min.js oder jquery-3.3.1.min.js nicht korrekt geladen werden. Da siehst Du auch, ob ggf. welche davon "from disk cache" kommen.

ach, und eins noch: ich hab solche Probleme häufiger gehabt, und immer waren es ursächlich WLAN issues die dazu führten, dass eine oder alle js Komponenten nicht geladen werden konnten und dann in der Folge ggf. noch fehlerhaft im Cache standen.
Also immer auch eine andere Position versuchen. Auch zu nah am AP kann ungut sein, ideal sind ca. 5m ohne Wand dazwischen.

pj

Wzut

Zitat von: pjakobs am 22 Juni 2019, 14:47:26
RTS/CTS vertauscht?
nein RXD ist nicht wie die Beschriftung vermuten lässt unterhalb TXD sondern zwischen TXD und GND :)
erase_flash lief dann durch und das komplette neu flashen auch. Jetzt redet er mit mir wie es sein soll :)
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

pjakobs

Zitat von: Wzut am 22 Juni 2019, 15:00:23
nein RXD ist nicht wie die Beschriftung vermuten lässt unterhalb TXD sondern zwischen TXD und GND :)
Ah, ja, wir mussten die Beschriftung dafür raus ziehen. Steht aber auch oben im FAQ ;-)
Und natürlich, ich weiß nicht, wie ich auf RTS/CTS komme, das ist echt schon lang her. Is warm heute.
Zitat von: Wzut am 22 Juni 2019, 15:00:23
erase_flash lief dann durch und das komplette neu flashen auch. Jetzt redet er mit mir wie es sein soll :)
Das allerdings versteh ich nicht. Dann muss da was ganz merkwürdig schief gelaufen sein. Na ja, gut wenn's jetzt geht.

pj

db7

Moin Moin,

ich bin ebenfalls glücklicher Besitzer von 3 rgbww-Controllern.
Leider bekomme ich die Controller nicht angesteuert, der Zugriff über die Web-Adresse funktioniert. Steuern würde ich gerne direkt per Json oder MQTT. Beides bekomme ich aktuell nicht ans Laufen.

Ich setze keinen FHEM ein, daher habe ich ein kleines Perl-Script gebastelt, welches JSON-Strings an das Modul sendet: Als Antwort erhalte ich jedoch immer nur "400  bad Request"
Immerhin schon etwas, aber leider nicht das was ich gerne will :-)

Die Beschreibung der API im Wiki https://github.com/verybadsoldier/esp_rgbww_firmware/wiki/2.1-JSON-API-reference enthält den Hinweis "outdated", die Get-Request funktionieren zum größten Teil, leider die Post gar nicht.

Kleines Beispiel:

#get.pl
use LWP::Simple;
$para= $ARGV[0];
print "-\> $para\n";
$contents = get("http://192.168.5.153/$para");
print "$contents\n";


perl get.pl 'color?mode='
-> color?mode=
{"raw":{"r":0,"g":0,"b":0,"ww":0,"cw":0},"hsv":{"h":64.99,"s":8.99,"v":55.03,"ct":2700}}
root@raspberrypi:/home/pi# perl get.pl ping
-> ping
{"ping":"pong"}

Sende ich eine Post an den Controller, bekomme ich nur einen Bad-Request.

post2.pl
use LWP::UserAgent;
$para = $ARGV[0];
my $url = 'http://192.168.5.153/'.$para;
$json ='{"raw":{"r":281,"g":264,"b":199,"ww":0,"cw":0}}';

print "Parameter: -\> $para\n";
print "command  : -\> $json\n";
print "url      : -\> $url\n";

my $ua = new LWP::UserAgent();
$response = $ua->post($url, Content => $json);

print $response->status_line() ."\n";


perl post2.pl color
Parameter: -> color
command  : -> {"raw":{"r":281,"g":264,"b":199,"ww":0,"cw":0}}
url      : -> http://192.168.5.153/color
400 Bad Request

Ein Versuch mit mqtt scheitert ebenfalls:

mosquitto_sub -h 192.168.5.145  -v -t wohnzimmer/rgbww_840d8ea788c3/clock
wohnzimmer/rgbww_840d8ea788c3/clock 64500
wohnzimmer/rgbww_840d8ea788c3/clock 66000
wohnzimmer/rgbww_840d8ea788c3/clock 67500
wohnzimmer/rgbww_840d8ea788c3/clock 69000


liefert mir regelmässig den clock-Wert, ein


mosquitto_pub -d -p 9090 -h 192.168.5.153 -t command -m '{"jsonrpc": "2.0","method": "color","params": {"t": 700,"d": "1","cmd": "fade","hsv": {"s": 55,"h": 0,"v": 100},"q": "single"}}'
Client mosqpub/23054-raspberry sending CONNECT
Client mosqpub/23054-raspberry received PUBCOMP (Mid: 27251)


führt zu keinem Effekt.

Ich bin etwas ratlos, vielleicht hat jemand einen Rat für mich.


Grüße Detlev.

Ygramul

#125
Hallo Allerseits,

Mein define schlägt mit der Fehlermeldung "Cannot load module EspLedController" fehl.
Das Modul wurde per Update geladen.
Im log findet sich folgender Eintrag

2019.06.23 17:27:57 1: reload: Error:Modul 32_EspLedController deactivated:
Time::HiRes::nanosleep(): unimplemented in this platform at ./FHEM/32_EspLedController.pm line 15.
BEGIN failed--compilation aborted at ./FHEM/32_EspLedController.pm line 15.

2019.06.23 17:27:57 0: Time::HiRes::nanosleep(): unimplemented in this platform at ./FHEM/32_EspLedController.pm line 15.
BEGIN failed--compilation aborted at ./FHEM/32_EspLedController.pm line 15.

Ich betreibe fhem auf einem Windows System.

Hatte vorher per CPAN das Modul Time::HiRes installiert und Windows neu gestartet.
Dennoch die gleiche Fehlermeldung.

Hat da jemand eine Idee, wo es bei mir hängt?

pjakobs

Zitat von: db7 am 23 Juni 2019, 15:33:43
Ich setze keinen FHEM ein, daher habe ich ein kleines Perl-Script gebastelt, welches JSON-Strings an das Modul sendet: Als Antwort erhalte ich jedoch immer nur "400  bad Request"

Moin Detlev,

magst Du den Post mal in den passenderen Firmwarethread oder sogar gleich auf die github Seite der Firmware umziehen? Das passt hier so garnicht rein.

Grüße

pj

db7

Moin PJ,

danke für den Hinweis. Es gibt mittlerweile so viele Threads zum RGBWW, welchen meinst Du genau?

pjakobs

Zitat von: db7 am 24 Juni 2019, 06:43:03
Moin PJ,

danke für den Hinweis. Es gibt mittlerweile so viele Threads zum RGBWW, welchen meinst Du genau?

Der Firmware Thread ist hier: https://forum.fhem.de/index.php/topic,70738.0.html

pj

pjakobs

Zitat von: Ygramul am 23 Juni 2019, 17:33:18
Hallo Allerseits,

Mein define schlägt mit der Fehlermeldung "Cannot load module EspLedController" fehl.
Das Modul wurde per Update geladen.
Im log findet sich folgender Eintrag

2019.06.23 17:27:57 1: reload: Error:Modul 32_EspLedController deactivated:
Time::HiRes::nanosleep(): unimplemented in this platform at ./FHEM/32_EspLedController.pm line 15.
BEGIN failed--compilation aborted at ./FHEM/32_EspLedController.pm line 15.

2019.06.23 17:27:57 0: Time::HiRes::nanosleep(): unimplemented in this platform at ./FHEM/32_EspLedController.pm line 15.
BEGIN failed--compilation aborted at ./FHEM/32_EspLedController.pm line 15.

Ich betreibe fhem auf einem Windows System.

Hatte vorher per CPAN das Modul Time::HiRes installiert und Windows neu gestartet.
Dennoch die gleiche Fehlermeldung.

Hat da jemand eine Idee, wo es bei mir hängt?

Hi Ygramul,

unter Windows hab ich keine Erfahrung, Perldoc sagt dazu:

unimplemented in this platform
Some calls simply aren't available, real or emulated, on every platform.


Welche Perl Implementation nutzt Du unter Windows?
Vielleicht ist das aber auch irrelevant, und Windows selbst stellt Zeit nicht in dieser Granularität zur Verfügung.

pj

Jewe

Moin,

inzwischen konnte ich auch den ersten Controller in Betrieb nehmen. Dabei habe ich bemerkt, dass der Controller nach dem wegnehmen der Versorgungsspannung und wieder anlegen, die Einstellungen "vergisst". Ist das so gewollt oder habe ich dabei noch etwas übersehen ??

Jens

pjakobs

Zitat von: Jewe am 24 Juni 2019, 12:55:26
Moin,

inzwischen konnte ich auch den ersten Controller in Betrieb nehmen. Dabei habe ich bemerkt, dass der Controller nach dem wegnehmen der Versorgungsspannung und wieder anlegen, die Einstellungen "vergisst". Ist das so gewollt oder habe ich dabei noch etwas übersehen ??

Jens
Hmm... das würde darauf hin deuten, dass aus irgendwelchen Gründen CLR auf GND liegt. Kannst Du im Betrieb mal die Spannung am Clear Taster messen? Der Pin, der direkt neben der Antenne liegt.

pj

Blademan

Zitat von: Blademan am 18 Juni 2019, 08:27:45
Hallo zusammen,

ich habe jetzt mal alle meine Controller getestet - zumindest RGB. Bei einem funktioniert rot nicht: Wenn die Betriebspannung am Controller angelegt wird, leuchtet der rote Kanal einmal kurz auf, danach gibt's kein rot mehr... Hat jemand einen Tipp? Ich würde jetzt erstmal auf den MOSFET tippen, ich denke nicht, das Firmware neu flashen hier was bringt....

Gruß,
Blademan

Also ich hab noch mal weiter getestet: Das eine Farbe fehlt, hatte ich jetzt auch bei einem zweiten Controller - diesmal bei grün.... Ich habe beide wieder ans laufen bekommen, hier liegt auch kein Defekt vor - das Muster zu diesem Fehler konnte ich bisher allerdings noch nicht exakt eingrenzen. Was meinen Beobachtungen nach den Controllern allerdings Probleme bereitet, ist der Betrieb/Registrierung in FHEM und gleichzeitige Nutzung der WebApp des Controllers. Nach längerem Stromlos machen des Controllers, ging's dann wieder. Zugegeben, die Aussage ist jetzt etwas schwammig, aber immerhin ein Hinweis, falls jemand auch mal über diese Problematik stolpert. Unter Umständen fällt das auch nicht direkt auf, sondern erst wenn bestimmte Farben nicht so eingestellt werden können, wie man das gerne hätte...

Gruß,
Blademan

pjakobs

Zitat von: Blademan am 24 Juni 2019, 15:00:37
Also ich hab noch mal weiter getestet: Das eine Farbe fehlt, hatte ich jetzt auch bei einem zweiten Controller - diesmal bei grün.... Ich habe beide wieder ans laufen bekommen, hier liegt auch kein Defekt vor - das Muster zu diesem Fehler konnte ich bisher allerdings noch nicht exakt eingrenzen. Was meinen Beobachtungen nach den Controllern allerdings Probleme bereitet, ist der Betrieb/Registrierung in FHEM und gleichzeitige Nutzung der WebApp des Controllers. Nach längerem Stromlos machen des Controllers, ging's dann wieder. Zugegeben, die Aussage ist jetzt etwas schwammig, aber immerhin ein Hinweis, falls jemand auch mal über diese Problematik stolpert. Unter Umständen fällt das auch nicht direkt auf, sondern erst wenn bestimmte Farben nicht so eingestellt werden können, wie man das gerne hätte...

Gruß,
Blademan

hmm... das müsstest Du dann mal mit @vbs oder @shojo diskutieren. Ich nutze immer nur fhem, und soweit ich weiß nutzt das WebUI auch die JSON via HTTP API so dass der Controller eigentlich keinen Unterschied zwischen fhem und WebUI sieht.
Ob fhem allerdings dann immer den Wert, der über das WebUI eingestellt wurde sieht und was passiert, wenn zwei API Calls kollidieren, das weiß ich nicht.

pj

Ygramul

Zitat von: pjakobs am 24 Juni 2019, 11:14:15
Hi Ygramul,

unter Windows hab ich keine Erfahrung, Perldoc sagt dazu:

unimplemented in this platform
Some calls simply aren't available, real or emulated, on every platform.


Welche Perl Implementation nutzt Du unter Windows?
Vielleicht ist das aber auch irrelevant, und Windows selbst stellt Zeit nicht in dieser Granularität zur Verfügung.

pj

Hi pj,

danke dennoch.
Habe im Modul 32_EspLedController die Zeile mit dem nanosleep() auskommentiert. Nun konnte ich problemlos das device definieren.
Werde mal testen, ob ich irgendwelche Laufzeitprobleme bekomme.

VG
Ygramul