System FileLog & ESPEasyMega

Begonnen von Edi77, 17 April 2017, 22:32:13

Vorheriges Thema - Nächstes Thema

Edi77

Hat leider nicht funktioniert


Internals:
   COMMAND    {
my $temp=(ReadingsVal ("KS300","temperature","0"));
my $humi=(ReadingsVal ("KS300","humidity","0"));
my $wind=(ReadingsVal ("ESP86_DWohnz_10_Count_ber1","state","0"));
my $rain=(ReadingsVal ("KS300","rain","0"));
my $israining=(ReadingsVal ("KS300","israining","0"));
my $pressnn=(ReadingsVal ("BMP180OUTDOOR","pressure-nn","0"));
my $energieb=(ReadingsVal ("POWERZAEHLER","power","0"));
my $energiee=(ReadingsVal ("POWERZAEHLER","feed_L1","0"));
my $HeizWasser=(ReadingsVal ("Heizung_Wasser_Temp","state","0"));
# Log 3, "set OLED_ESP58: $temp$humi";
{GetHttpFile("192.168.1.58:80","/control?cmd=lcdcmd,clear")};
{GetHttpFile("192.168.1.58:80","/control?cmd=lcd,1,1,T:+$temp+H:+$humi+HT:+$HeizWasser")};
{GetHttpFile("192.168.1.58:80","/control?cmd=lcd,2,1,Wi:+$wind+Re:+$rain")};
{GetHttpFile("192.168.1.58:80","/control?cmd=lcd,3,1,hPa:+$pressnn+$israining")};
{GetHttpFile("192.168.1.58:80","/control?cmd=lcd,4,1,B:+$energieb+E:+$energiee+Watt")};
return undef;
}
   DEF        +*00:01 {
my $temp=(ReadingsVal ("KS300","temperature","0"));
my $humi=(ReadingsVal ("KS300","humidity","0"));
my $wind=(ReadingsVal ("ESP86_DWohnz_10_Count_ber1","state","0"));
my $rain=(ReadingsVal ("KS300","rain","0"));
my $israining=(ReadingsVal ("KS300","israining","0"));
my $pressnn=(ReadingsVal ("BMP180OUTDOOR","pressure-nn","0"));
my $energieb=(ReadingsVal ("POWERZAEHLER","power","0"));
my $energiee=(ReadingsVal ("POWERZAEHLER","feed_L1","0"));
my $HeizWasser=(ReadingsVal ("Heizung_Wasser_Temp","state","0"));
# Log 3, "set OLED_ESP58: $temp$humi";
{GetHttpFile("192.168.1.58:80","/control?cmd=lcdcmd,clear")};
{GetHttpFile("192.168.1.58:80","/control?cmd=lcd,1,1,T:+$temp+H:+$humi+HT:+$HeizWasser")};
{GetHttpFile("192.168.1.58:80","/control?cmd=lcd,2,1,Wi:+$wind+Re:+$rain")};
{GetHttpFile("192.168.1.58:80","/control?cmd=lcd,3,1,hPa:+$pressnn+$israining")};
{GetHttpFile("192.168.1.58:80","/control?cmd=lcd,4,1,B:+$energieb+E:+$energiee+Watt")};
return undef;
}
   NAME       esp_oled58
   NR         440
   NTM        04:03:33
   PERIODIC   yes
   RELATIVE   yes
   REP        -1
   STATE      Next: 04:03:33
   TIMESPEC   00:01
   TRIGGERTIME 1492913013.89277
   TRIGGERTIME_FMT 2017-04-23 04:03:33
   TYPE       at
   Readings:
     2017-04-23 04:02:34   state           Next: 04:03:33
Attributes:
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

Thorsten Pferdekaemper

Hi,
was meinst Du mit "nicht funktioniert"? Der Krempel ladet immer noch im Log oder es geht gar nicht?
Gruß,
   Thorsten
FUIP

dev0

Das gezeigte at scheint gar nicht der Auslöser für den Logeintrag zu sein. Wenn Du Dir Logeintrag näher ansiehst, dann geht es um einen (falschen?) Aufruf des NeoPixel Plugins und nicht des LCDs Plugins.

Nebenbei: die geschweiften Klammern um den GetHttpFile-Aufruf sind überflüssing und falsch. Zudem blockiert GetHttpFile() Dein FHEM, wenn der ESP nicht erreichbar ist, besser HttpUtils_NonblockingGet() verwenden. Weiterhin kann das ESPEasy Modul alles das, was Du da selbst versuchst umzusetzen.

Edi77

#18
Hallo,

Ja die Fehlermeldungen landen immer noch im Log.

DANKE @dev0

Wäre dieser Aufruf dann richtig?


HttpUtils_NonblockingGet({ url=>"http://192.168.1.58:80","/control?cmd=lcdcmd,clear" })
HttpUtils_NonblockingGet({ url=>"http://192.168.1.58/tools?cmd=NeoPixel,1,50,0,0" })


Mein jetziger Aufruf für NeoPixel war

define LEDAnzeige1_1_1 notify LEDAnzeige1_1:red "wget -q -O- 'http://192.168.1.58/tools?cmd=NeoPixel,1,50,0,0'"


Und da das der erste ESPEasy ist wo ich NeoPixel nutze ist das wohl auch die Ursache.

Ich suche noch eine Anleitung wie ich in ESPEasy ein Plugin hinzufüge, kennt da jemand eine?
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

dev0

Warum nutzt Du nicht das ESPEasy Modul? Zu einfach?
Beim HttpUtils_NonblockingGet Aufruf fehlt der callback hash-Parameter. Siehe Wiki.
Bist Du sicher, dass es in NeoPixel Url "tools?cmd" heißen soll? Kenne ich so nicht, habe jetzt aber nicht nachgesehen.

Edi77

Hallo @dev0

Es gibt zum ESPEasy Modul noch kein Wiki Eintrag.
Habe schon etwas gesucht jetzt aber noch nichts gefunden wie man im ESPEasy Modul LCD & NeoPixel ansteuert, aber vielleicht hast du gerade einen Link wo die Syntax gut beschrieben ist. Der ESPEasy Modul Three ist ja schon 57 Seiten stark
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

dev0

#21
Die Doku ist in der commandref zu finden.
Alle offiziellen Plugins sind im Modul auch mit einer Hilfe bedacht:

set <esp> help
Usage: 'set <esp> help <clearreadings|dots|erase|gpio|help|irsend|lcd|lcdcmd|lights|longpulse|mcpgpio|oled|oledcmd|pcapwm|pcfgpio|pcflongpulse|pcfpulse|pulse|pwm|pwmfade|raw|reboot|reset|servo|status|statusrequest>'

set <esp> help lcd
Usage: set <esp> lcd <row> <col> <text>


Nicht offizielle Plugins lassen sich über den RAW Befehl aufrufen:

set <esp> raw neopixel 1 255 255 255