NEWS
ESP Matrix Anzeige fully IoBroker steuerbar
-
Hallo,
Folgendes habe ich nun ausprobiert:
-
Alles zurück auf "Factory"-Einstellung
-
im Config-Mode den Pfad wie folgt angepasst:````
http://xxx.xxx.xxx.xxx:8087/getPlainValue/control-own.0.ESPMatrix.Matrix
Im Monitor weiterhin fortlaufend:
Zeitholen RESET --------------------------------------
Und leider keine Annahme der Werte aus IOBroker :( Die Zeit läuft immer noch von rechts nach links durch die Anzeige. Mit kurzem Stop in der Mitte
-
-
wenn das alles ist im log vom wemos - dann kommt danach die datumsabholung oder datenabholung.
bei mir:
16:35:07.820 -> ZeitholenStandard RESET------------------------------------------ 16:35:22.803 -> Zeit wird geholt !!! 16:35:22.803 -> ZeitholenStandard RESET------------------------------------------ 16:35:27.558 -> ------------------Fetching data from URL...------------------------------------ 16:35:27.558 -> Setting bekommen : 2;1;20;2;18 16:35:27.558 -> Modus von IOBROKER ist : 2 16:35:27.558 -> Abfrage Refresh Time : 20 16:35:27.558 -> Abfrage ScrollPause : 2 16:35:27.558 -> Abfrage scroll Speed URL : 18 16:35:27.558 -> Intensity von IOBROKER ist : 1 16:35:27.558 -> ntpSave :0 zeitHelp : 0 16:35:27.593 -> getState url: http://192.168.178.59:8087/getPlainValue/controll-own.0.MATRIX.Matrix 16:35:27.593 -> getState payload = OUTSIDE -1 °C CLOUDS;JOURNEY;WHEEL IN THE SKY;1-DAY 10:00 ERSTE RECHNUNG 16:35:27.593 -> 32368 16:35:27.593 -> Anzahl Werte : 4
hast du die richtige TimeHandling.ino ?
-
kannst du noch folgendes testen
schliesse den wemos nicht am computer an - sondern direct - der wemos kann nicht neustarten, wenn der serielle port benutzt wird (bei mir ist das so)
mich würde interessieren, ob er neustartet, weil das log nicht weitergeht ?!?
das ding muss doch zum laufen gebracht werden !
-
was ich auch noch nicht gemacht habe:
lasse bei der config die angaben der settings ( scroolspeed, sc-pause und refreshtime ) weg !!!!
nur: ssid, wlanschlüssel, datenbezug (url)
das würde erklären, warum er ein setting hat obwohl er es nicht vom iobroker holt - danach sollten wir mehr info bekommen
-
Hallo,
hat etwas gedauert, weil ich folgende Punkte ausprobiert habe:
-
Github aktuell noch mal heruntergeladen und geflasht => ohne Erfolg, Ergebnis ist gleich geblieben
-
Angaben in den Settings entfernt und gespeichert => ohne Erfolg, keine Fehlermeldung, Uhrzeit läuft immer noch doch, Eingaben werden nicht beachtet
-
Neustart (Reset) nicht am USB vom PC => ohne Erfolg, Ergebnis unverändert
Ist ja wie verhext
-
-
das ist es - verhext - habe meinen 2 moduler ausprobiert und ähnliche tests gemacht - funktioniert alles bei mir
-
die uhr zeigt richtige zeit an - oder - also ntp server erreichbar ?
-
wemos d1 mini ?
-
welche esp tool version hast du ? unter datei - einstellung die url unten - ich habe ….arduino.esp8266.com/versions/2.4.1/package_esp8266com_index.json ...
hast du den sketch in einem extra ordner angelegt und in arduino-setting zugeornet ? unter einstellungen sktch-rdner ?
download software/sketch von : https://github.com/liv-in-sky/MatrixDisplayESP8266 - mir kommt es fast vor, als ob es die falsche software wäre!
bei meiner version müssten fehler meldungen auf dem display erscheinen, wenn keine daten oder settings abgeholt werden können. schalte ich den simple api adapter im iobroker aus - kommt sofort "http error" auf der matrix - bite teste mal
findest du diese zeilen in deinem MatrixDisplayESP8266.ino - file. zeile nummer um die 371
! settingString2 = configSettingFromURL(); // "5;1;5;3;15";
! if (settingString2 != "HTTP ERROR"){
! Serial.println( "Setting bekommen : " + String(settingString2));
! char buf3[settingString2.length() + 1];
! settingString2.toCharArray(buf3, sizeof(buf3));
! //Serial.println("buf3 : " + String(buf));
! char *q = buf3;
! char *str3;
! settingsCount = 0;
! while ((str3 = strtok_r(q, ";", &q)) != NULL) {
! settingsArray[settingsCount] = str3;
! settingsCount++;
! }
! } else {
! errorCode = 6;
! modus = 99;
! } -
-
Hallo,
die Uhrzeit passt.
ich habe folgenden Wemos gekauft:
https://www.ebay.de/itm/D1-mini-ESP8266 … 2357074201
Entwicklungsumgebung:````
Arduino Version 1.8.5Unter Einstellungen habe ich folgende Url:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Die Software von Github scheint die Gleiche zu sein, da ich den gleichen Eintrag in Zeile 371 habe:
...
settingString2 = configSettingFromURL(); // "5;1;5;3;15";
if (settingString2 != "HTTP ERROR"){
Serial.println( "Setting bekommen : " + String(settingString2));
char buf3[settingString2.length() + 1];
settingString2.toCharArray(buf3, sizeof(buf3));
//Serial.println("buf3 : " + String(buf));
...Welches Board hast du genau eingestellt ? Ich habe WeMos D1 mini Lite benutzt
-
das könnte ein problem sein - mit stable ging es bei mir nicht - da ich nicht das richtige board wählen konnte - könntest du das auch noch testen mit dem 2.4.1
das stable machte echt probleme
irgendwann läuft das ding !!!!!!!
-
Hallo,
ich habe jetzt auf 2.4.1 aktualisert.
Könntest du mir bitte zur Sichheit deine Boardeinstellungen (Board, Flashsize, …) mitteilen ?
Danke schon mal ...
-
Im Monitor erhalte ich jetzt schon mal andere Inhalte:
------------------Fetching data from URL...------------------------------------ Setting bekommen : 2;1;20;2;18 Modus von IOBROKER ist : 2 Abfrage Refresh Time : 20 Abfrage ScrollPause : 2 Abfrage scroll Speed URL : 18 Intensity von IOBROKER ist : 1 ntpSave :0 zeitHelp : 0 getState url: http://xxx.xxx.xxx.xxx:8087/getPlainValue/control-own.0.ESPMatrix.Matrix getState payload = Banane 32664 ZeitholenStandard RESET------------------------------------------
Aber der Inhalt "Banane" wird leider immer noch nicht in der Anzeige angezeigt :?: :?: :?:
-
Hallo,
es funktioniert jetzt
Mit der Einstellung````
5;1;60;5;20Vielen Dank noch mal für die Hile ;)
-
danke, dass du durchgehalten hast - werde das auf github noch als hinweis einfügen
:mrgreen:
-
@liv-in-sky
Tolle Arbeit von dir, läuft wie eine EINS ! Hätte ich nie und nimmer zusammengebracht.
Den ntpServerName in der Zeile 113 habe ich für mich noch auf "fritz.box" abgeändert, weil ich meine Wemos ungern raus in die weite Welt lasse.
3 Kleinigkeiten sind mir noch in deiner Beschreibung auf GitHub aufgefallen:
Modus10 - ohne Uhrzeit
Modus15 - Cuser bringt Text von links und löscht Text von links - mit Uhrzeit
Modus19 - Cuser bringt Text mittig und löscht Text mittig - mit UhrzeitJetzt wäre da noch Jammern auf hohem Niveau: Bei 8 Displays kommt ja nur die Uhrzeit, geniale Idee. Nur Stunden und Minuten sind MIR optisch ein wenig zu weit auseinander. Ich habe schon gesucht, verstehe aber zu wenig davon. Wo könnte ich denn versuchen das geringfügig zu ändern?
Nochmals lieben Dank für deine TOPARBEIT!
LG, mxa -
freut mich
das mit dem ntp server hatte ich auch schon im sinn. komscherweise geht der bei mir auf die fritzbox - habe den provider gewechselt und oft dsl abbrüche - uhr läuft trotzdem weiter ? aber nicht jeder hat eine fritzbox - daher auf github in dieser version
uhrzeit - ganz einfach im TimeHandling.ino file zeile 64:
return String((Stunde < 10) ? "0" : "" ) + String(Stunde) + " : " + String((minute(t) < 10) ? "0" : "" ) + String(minute(t)); // + " Uhr";
zu ändern: es sind leerzeichen um den doppelpunkt : ? "0" : "" - einfach leerzeichen löschen - muss du dreimal machen in dieser zeile!.
github modi habe ich geändert - danke dafür
lg
ps: habe mittlerweile einige alarms gescriptet:
wenn ich eine bestimmte taste auf tv-fernbedienung drücke - zeigt mir das display einen timer. dieser ist in der länge eines typischen tv-werbe-blocks - so weiß ich, wann ich wieder zurückschalten muss
oder wenn ich alexa einen timer starte wird mir dieser auf dem display sichtbar gemacht - in der küche: alexa timer 5 minuten - im arbeitszimmer sehe ich den timer auf dem display runterlaufen
-
@liv-in-sky
Hallo Freunde der scrollenden ZeichenIch bin neu hier im Forum und bezeichne mich in Sachen Arduino, ioBroker, etc. als "fortgeschrittenen Anfänger".
Trotzdem habe ich mich an das "Matrix-Laufschrift-Projekt" gewagt.
In Sachen den Arduino-Sketch auf den Wemos zu flashen, gab's auch keine Probleme, allerdings habe ich es nicht geschafft, mehr als einen Datenpunkt zur Anzeige zu bringen (trotz entspr. Benennung).
Deshalb habe ich mich dazu durchgerungen, meinen eigen Sketch zu schreiben, bzw.Teile aus anderen Sketchen "umzumodeln".Dabei habe ich einige Änderungen/Anpassungen vorgenommen:
- 1.) Übernahme aller Einzelsketche in nur einen "Hauptsketch".
- 2.) Wegfall des sog. WiFi-Managers -> Ersetzt durch manuelles Eintragen der Netzwerkparameter in den Sketch.
(Ich verwende in meinem (W)LAN für die fest installierten Geräte nur statische IP-Adressen, deshalb kein DHCP.) - 3.) Einbau von ein paar Sonderzeichen und Umlauten.
- 4.) Einbau von ein paar Übergangseffekten, wählbar mittels Taster (Interrupt gesteuert).
- 5.) Wegfall des zeitgesteuerten Abholen der Daten vom Wemos -> stattdessen "pushen", bzw. senden der Daten von ioBroker mittels Javascript.
Vorteil: nur noch 1 einstellbares Zeitintervall (via schedule von JavaScript) notwendig. - 6.) Einbau eines Photowiderstandes (LDR), dadurch ist eine automatische Anpassung der Laufschrift-Helligkeit je nach Umgebungslicht möglich.
- 7.) Im Sketch einstellbarer NTP-Server, da es bei mir zeitweise Probleme beim Holen der Uhrzeit gab (evt. DNS-Problem?)
Ein kurzes Video könnt Ihr hier sehen:
https://www.youtube.com/watch?v=p0xyaxu3kF8&feature=youtu.beNähere Erläuterungen habe ich auf meiner Arduino-Bastelseite beschrieben:
http://arduino.joergeli.de/laufschrift/laufschrift.php
Dort kann man auch den Sketch und das ioBroker-Javascript downloaden.Wie gesagt, ich bin kein Profi und habe mir alles "ergoogelt", bzw. mit "Try & Error" zusammengestrickt.
Evtl. kann es ja trotzdem jemand gebrauchen?Gruß
Jörg -
@joergeli - hört sich toll an - werd mir mal deinen code näher ansehen
schade, dass du dich nicht gemeldet hast, als das mit der daten abholung nicht klappte - hätte gerne geholfen - damit hätte ich auch meinen sketch verbessern können wenn ein datenpunkt abgeholt wird, funktioniert das ganze eigentlich - um mehrere datenpunkte abzuholen, muss man diese mit ";" trennen (alarm1;alarm2) - im selben datenpunkt!
was mich interessieren würde:
- welche version der esp - tools hast du genommen? habe festgestellt, das über 2.4.1 ein flash problem bei mir vorhanden ist.
- wegen des ntp: hast du eine fritzbox oder einen andere router marke?
was ich bis jetzt überflogen habe - das mit dem daten pushen finde ich sehr interessant - verstehe ich das richtig, dass man das javascript im iobroker ändern muss, um neue datenpunkte anzeigen zu können? wenn ja - bedeutet das - man muss wohl JS erfahrung haben um es zu installieren ?
deine anderen projekte auf deiner seite finde ich auch sehr ansprechend !!! (ich sag nur: katzen des nachbarn )
-
@liv-in-sky
Moin,
ehrlich gesagt, hatte ich Deinen Sketch erst kürzlich auf github gefunden, vorher nur Dein Video, wo ich wohl falsch interpretiert habe, daß weitere Datenpunkte automatisch gefunden werden, wenn die Benennung paßt.Ist jetzt aber egal, da ich mir den Inhalt meines Datenpunktes via Javascript fülle (wie Du auch schreibst: die einzelnen Werte mit Semikolon trennen)
Du musst Deine Werte ja auch irgendwie in Deinen Datenpunkt schreiben, machst Du das mit Blockly?
Wobei Blockly nach meinem Verständnis nur eine grafische "Klick-Oberfläche" für das darunter befindliche JavaScript darstellt.Ich verwende diese esp-tools:
http://arduino.esp8266.com/stable/package_esp8266com_index.jsonAnbei ein Screenshot meiner Board-Einstellungen:
Wichtig ist dabei m.E. der Punkt "Flash-Size"
Bei "Erase Flash" hatte ich nur einmalig "All Flash Contents" gewählt" weil ja beim Original-Sketch auch in den ProgMem geschrieben wird, d.h. diese Daten (z.B. WLAN-Einstellungen) sind auch nach Reboot noch vorhanden.
Bei meinem Sketch speichere ich nichts in ProgMem, sondern die entspr. Daten werden nach Reboot aus dem Sketch geladen, deshalb habe ich bei "Erase Flash" jetzt "Only Sketch" gewählt, weil ja nichts mehr im ProgMem steht und es so ausreicht, nur den Sketch vor dem erneuten Flashen zu löschen (das Flashen geht dann auch schneller)
Was bei mir ab und zu vorgekommen ist, daß beim Hochladen auf den Wemos die Meldung "Unable to upload ..." gekommen ist. Dann einfach nochmals auf Hochladen klicken, dann hat es i.d.R. funktioniert.
Thema NTP:
Bei mir gab es auch Probleme mit dem Holen der ntp-Zeitinformationen.
Ich vermute, daß es da ein DNS-Problem gibt/gab, d.h. der ntp-Name wie z.B. "ptbtime1.ptb.de" kann nicht aufgelöst werden.
Man kann im Sketch aber mal testweise die direkte IP-Adresse des ntp-Servers eintragen, dann umgeht man die DNS-Namensauflösung.
Die IP-Adresse(n) des ntp-Servers kann man einfach ermitteln, in dem man in einer Konsole z.B. "ping ntp1t-online.de" eingibt.Ich habe zwar eine FritzBox, verwende aber im Sketch den Namen des ntp-Servers, bzw. dessen IP-Adresse,
s. folgende Beispiele:// NTP-Server festlegen
//const char* ntpServerName = "194.25.134.196"; // = ntp1.t-online.de
//const char* ntpServerName = "192.53.103.108"; // = ptbtime1.ptb.de
//const char* ntpServerName = "ptbtime1.ptb.de"; // = 192.53.103.108
//const char* ntpServerName = "ptbtime2.ptb.de";
const char* ntpServerName = "ntp1.t-online.de"; // = 194.25.134.196Thema Javascript:
Naja, ich bin da auch nicht der Crack, aber Google und dieses Forum haben mir da geholfen.
Wenn Du Arduino-Sketche schreiben, bzw. modifizieren kannst, sollte es nicht so schwierig sein, ein wenig JavaScipt zu proggen. Ist im Prinzip das Gleiche, nur die Syntax ist ein wenig anders.Du hast richtig erkannt, daß man neue Datenpunkte in meinem JavaScript manuell hinzufügen muss (musst Du ja auch irgendwie bewerkstelligen?).
Ist m.E. aber kein Hexenwerk, bei mir z.B :
const idxx = 'neuer Datenpunkt'; // ein gewünschter Datenpunkt aus Deiner Konstellation
evtl.noch eine if-Bedingung für diesen Datenpunkt anlegen ( z.B. wenn Datenpunkt == true, dann mach dies oder jenes)
zum Schluß noch den Wert des neuen Datenpunktes zum Ausgabestring einfügen, z.B.:
var ausgabe = Service + DutyCycle + Badezimmer + wert_neuer_datenpunkt + .....Thema "pushen":
Mich hat bei beim Original-Sketch (ich glaube, der von Jerome) gestört, daß es insgesamt 2 Zeitintervalle gab.
Zum Einen, wann ioBroker die Daten aktualisiert und zum Zweiten, wann der Wemos diese abholt.
Im ungünstigsten Fall addieren sich dann diese Zeiten.
Bsp:
ioBroker aktualisiert jede 1 Min.
Wemos holt ebenfalls jede 1 Min.
Wenn nun z.B.ioBroker die Daten vor 40 Sek. aktualisiert hat, holt der Wemos die Daten u.U. erst nach 1 Min. ab.
Das heißt, ich habe insgesamt 1:40 Min. Wartezeit, bis die Daten auf der Matrix erscheinen.Bei meiner Variante werden die Daten sofort an den Wemos gesendet, d.h. auf der Matrix werden die Daten immer im eingestellten Zeitintervall von JavaScript (z.B. 1 Min.) aktualisiert.
Was mich noch interessieren wüde:
Auf Deinem Video sieht es so aus, als ob Du scrollEffectIn und scrollEffectOut zeitlich beeinflussen kannst?
Ich habe bislang keine Möglichkeit gefunden, die Dauer des In-, bzw. Out-Effektes zu ändern.Gruß
Jörg -
komischerweise mag ich c lieber wie javascript - daher benutze ich fast nur blockly (außer ich kann etwas kopieren) - ist einfach schneller zusammengeklickt - daher kannn ich mich auch vor dem js lernen drücken ! (blockly erzeugt natürlich ein jscript)
mir deinem angegebenen esp-tool - geht mein sketch definitiv nicht zum flashen - das muss irgendwie mit verwendeten libs zusammenhängen - ich hab halt nur vorhandenes umgewandelt.
ntp: bei mir ging die uhr auch, obwohl mein dsl aus war - irgendwie hat die fritzbox das dann übernommen
es gibt nur eine zeit - ist aber garnicht so schlimm - der iobroker refreshed bei mir nur dann, wenn ein neuer alarm ausgelöst wird - ansonsten liegen die daten da - zum abholen sozusagen - -der wemos holt standardmäßig bei mir alle 30 sek. ich ändere diese refreshzeit je nach alarm. manchmal sind es dann alle 10 sek - je nach dem, was ich anzeigen will. für zeitlich relevante alarme habe ich schon überlegt einen kleinen bieper an den wemos zu installieren. alle alarme werden über ein blockly script gesteuert und koordiniert (daher kein zusätliches warten). insgesamt hast du aber mit dem push sicher die bessere variante - weniger traffic und die anzeige hängt nur noch von der dauer der letzten anzeige ab - dies ist nämlich der zweite "(pseudo-)timer" im system - den hat dein script auch. du machst da was mit udp - werd ich mir mal ankucken!
die scrolleffekte haben auch variablen
P.displayText(curMessage, scrollAlign, String(scrollSpeed).toInt(), String(scrollPause).toInt() * 1000, scrollEffectIn, scrollEffectRight);
scrollspeed - wie schnell der auf und abbaut und scrollpause - wie lange er stehen bleibt.
effektin, -out - welche art von scroll er benutzt (ist bei mir über modi geregelt)
und scrollalign - wo steht es im display - mittig, rechts oder linksdiese settings übergebe ich auch über mein alarm-system - das wäre auch bei deiner variante ohne weiteres möglich. du müßtest nur ein paar datenpunkte in dein script integrieren, damit du diese steuern kannst. dann werden die settings halt auch mitgepusht.
mal schaun - ob ich am WE an das pushen gehe?!?
wenn du willst, kann ich auch auf meinem github projekt einen link zu deinem projekt machen -ich glaube du bist nicht auf github.
lg
ps eine sache fehlt aber definitiv bei dir - pacman muss sein
-
NTP:
Meines Wissens wird die NTP-Zeit ja nicht bei jedem Durchlauf abgeholt.
Lt. Code:setSyncProvider(getNtpTime); setSyncInterval(3600);
ist das Intervall auf 3600 eingestellt, ich nehme an, das sind Sekunden.
-> 3600/60 = 60 Min. = 1 Std.
Ich vermute, auch wenn DSL ausfällt, wird die Zeit intern im Wemos für max. 1 Std.weiter gezählt (kann mich aber auch irren).ESP-Tool:
Noch mal ein Screenshot meiner Version:
Bei mir also Version 2.5.0-beta3.... da fällt mir aber gerade ein: ich hatte auch mal Probleme beim Flashen und habe dann eine lib "downgegraded" (was für ein Wort ). Kann mich aber leider nicht mehr erinnern, welche lib das war.
Refresh-Zeit:
Zitat " - der iobroker refreshed bei mir nur dann, wenn ein neuer alarm ausgelöst wird -"
Verstehe ich nicht so richtig.
Wie ist das, wenn Du Dir z.B. Temperatur-Werte anzeigen läßt, wird dann bei jeder Temp-Änderung ein Alarm ausgelöst?Zitat: "...dann werden die settings halt auch mitgepusht"
Die Settings (Modi) ändere ich lieber direkt an der Matrix mit dem Taster.udp:
Ich denke, das Du (evtl. unbewusst) ebenfalls auch schon udp verwendest
siehe Code:String udpMessage = handleUDP();
Nur das bei Dir die Daten nach soundsoviel Millisekunden abgeholt werden.
Ich will hier aber nicht klugsch....., was die bessere Methode ist, holen, oder pushen.Scrolleffekte:
Mache ich auch so, aber halt mit meinem Modi-Taster.
Was ich meinte, war die Frage, ob man wie bei scrollspeed (Schnelligkeit des Durchlaufes) auch eine "speed" für effektin, bzw. effektout festlegen kann?
Also die Dauer des "Ein-" und "Ausblendens" verändern kann.
Probiert hatte ich es so, funktioniert aber nicht:... String(scrollPause).toInt() * 1000, String(scrollEffectIn).toInt() * 1000, String(scrollEffectRight).toInt() * 1000;
Ich habe diesbzgl. auch nichts in der Parola-lib gefunden.
In Deinem Video sieht es schön smooth aus, z.B. speziell bei growUp und growDown.
Bei mir geht das "wush", so daß das Überblenden kaum wahrnehmbar ist.
Ist aber nicht wirklich wichtig.Beeper (bzw. Buzzer):
Habe ich auch im Einsatz, allerdings nicht an der Matrix, sondern ein eigenständiger ESP8266 für die "Waschmaschine-Fertig-Meldung".
Ich bin da zwischenzeitlich von meinen "Laundrino Projekten", die auf Eschütterungen der Waschmaschinentrommel basieren, umgestiegen auf eine Homematic-Steckdose mit Leistungsmessung.
Problem war dabei aber, daß wenn der Datenpunkt "Waschmaschine fertig" auf "true" gewechselt hat, es nur 1 Mal gebeeped hat, was leicht zu überhören war.
Deshalb habe ich den ESP8266 zusätzlich eingesetzt, der bei der Wechsel des Datenpunktes auf "true" getriggered wird und dann nichts anderes macht, als fortwährend alle 5 Sekunden 4 kurze Beeps ertönen zu lassen.
Das geht so lange, bis die Dame des Hauses den "Beeper-Off-Button" am ESP drückt.Vom Prinzip her also ähnlich, wie bei meinen "Laundrino-Projekten" die Schaltung des Receivers:
http://arduino.joergeli.de/laundrino_v2/schaltplan_nodemcu_waschmaschine.gif
Da ist allerdings kein "Beeper-Off-Button" vohanden, sondern das Beepen wurde durch Ausschalten des Senders abgestellt.OK, man könnte das auch via Script in ioBroker bewerkstelligen, was aber bedeuten würde, daß meine bessere Hälfte dann das vis öffnen und dort die Beeperei abstellen müsste.
Da sie meine ganze "Smart-Home-Geschichte" -noch- als Spielerei abtut, stoße ich da auf taube Ohren
Aber das ist ein anderes Thema.Du kannst gerne meine Seite auf github verlinken.
Jo, den Pacman hatte ich auch mal auf der Matrix, aber als ich die Matrix dann stolz präsentiert habe, wurde sie sogleich von besagter Dame aus dem Wohnzimmer verbannt, auch das Entfernen von Pacman ermöglichte keine Rückkehr in's Wohnzimmer. Angeblich stört die ganze Scrollerei beim TV-Gucken - kann man halt nicht gegen an
So fristet die Matrix ihr Dasein nun in meinem Bastelzimmer.Gruß
Jörg -
hi @joergeli
udp - ja, da hast du recht - mit den layers im netzwerk hab ich es nicht so - hauptsache httpget funktioniert
das mit den alarmen: ich habe einen standard string, der angezeigt wird - zusätzlich habe ich alarme - entweder wird der alarm an den standardstring angehängt (low prio) oder high prio: der alarm wird allein angezeigt. ändert sich die außen-temp oder ändert sich ein heizungsregler-wert -> ist das eigentlich kein alarm, sondern der standardstring wird angepaßt (zusätzlich angehängt). wenn ich einen alexa timer setze ist das ein high prio alarm . es wird dann nur dieser timer-counter (pro minute) angezeigt (oder bei dsl offline, neuer whatsapp, ...).
egal bei welchen datenpunktänderungen (heizung, außentemp, ..) wird die änderung von iobroker sofort geändert und für dem wemos bereitgestellt. am liebsten habe ich den werbe-unterbrechungs-timer, der wird angezeigt um die restdauer der werbung anzuzeigen - um z.b zum film zurückzuschalten. als beeper ersatz muss alexa herhalten - die sagt dann - werbung aus! obwohl das pushen der daten definitiv besser ist, merkt man bei mir keine große zeitverzögerung - die scrolldauer des standardstrings (sind 2- 3"zeilen") dauert so lange, das der wemos meist die daten schon hat, bevor ein neuer scrollcyklus beginnt) - wenn ich den tv einschalte, wird der refresh-cyklus automatisch auf "kurz" eingestellt, da ich das display dann im blickfeld habe.um das geblinke zu unterbinden habe ich einen mode (2) der nur die zeit anzeigt (wie eine uhr - feststehend) z.b beim tv schauen - außer ich setzte den werbe-timer - dann wird der angezeigt, bis die der timer um ist und danach wieder die uhrzeit. da kann ich deine frau sogar verstehen - das geblinke neben dem tv mag ich auch nicht - um das alles zu steuern brauche ich die modi im iobroker - ein taster funktioniert da nicht - es gibt noch einen mode - dabei ist das display ganz aus und wird nur bei den alarmen aktiviert.
das thema mit den scrolleffekten. der scrollspeed ist die einzige änderungsmöglichkeit(habe auch nichts anderes gefunden). ich habe 2 modi die mit grow up und -down arbeiten. 10 : mit growup und down - bei diesem kann der user keinen scrollspeed einstellen - der ist fix auf 70 also - sehr laaangsam !( P.displayText(curMessage, PA_CENTER, 70, String(scrollPause).toInt() * 1000, PA_GROW_UP, PA_GROW_UP);)
der andere ist mode 8 - dieser soll vortäuschen, das die daten von oben kommend nach unten durchlaufen - dieser mode hat einen fixen speed (150) und eine fixe pause, da es sonst überhaupt nicht gut aussieht ( P.displayText(curMessage, scrollAlign, 150, 3000, scrollEffectDown, scrollEffectDown);) .hast du zufällig mall diese displays in einer anderen led farbe gesichtet ? hätte gerne grün oder gelb.
lg
ich werd die frauen nie verstehen - ein kleiner runder ball frisst die uhrzeit auf und kot.. sie wieder aus - wenn das nicht lustig ist ?