Wemos D1 mini Laufschrift Matrix Display

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

Roli01
Beiträge: 84
Registriert: 06.04.2008, 23:56
Wohnort: nähe Krems/Donau

Wemos D1 mini Laufschrift Matrix Display

Beitrag von Roli01 » 15.03.2018, 19:35

Hallo an alle!

Muss mich mal wieder mit einem Problem an euch wenden.

Und zwar geht es um die Umsetzung einer Laufschrift mit einem LED Matrix Display und einem Wemos D1 mini.

Das ganze Projekt habe ich bei https://www.schellenberger.biz/matrix-d ... m-nachbau/ gefunden der die Sketches von https://github.com/jp112sdl/MatrixDisplayESP8266 hat.

So zu meinem Problem!

Anfangs wollte ich mit dem Arduino IDE die Datei MatrixDisplayESP8266.ino von Github auf den Wemos laden. Muss dazu sagen ich habe damit überhaupt keine Erfahrung aber die Einstellungen sollten passen da ich den Beispiel Sketch "Blink" hochladen kann.
Nur bei der MatrixDisplayESP8266.ino kommt immer ein fehler im Arduino. (fatal Error Fehler beim kompilieren)
Dann habe ich auf der Github Seite von Jerome die MatrixDisplayESP8266.ino.d1_mini.bin https://github.com/jp112sdl/MatrixDispl ... 117d891510 gefunden und diese dann mit dem ESPtool.exe auf den Wemos übertragen das auch bis 100% durchläuft.

Ich bekomme dann auch den WLAN Hotspot von dem Wemos wo ich meine Wlan daten eingeben kann damit er sich anschließend verbinden kann.

Dabei gebe ich auch noch die Url der CCU2 Systemvariable an und speicher das ab [http://10.0.0.2:8181/a.exe?ret=dom.GetO ... %22).State()]
IP Adresse und die Systemvariable wurden angepasst.
Nur leider kommt keine Laufschrift an.
Habe dann nach der Anleitung bei Schellenberg.biz noch versucht über meine Qnap eine Virtuellen Webserver einzurichten der auch funktionierte aber auch diese Laufschrift wurde nicht angezeigt, also vermute ich das es doch irgendwie am Wemos liegt.

Hat von euch jemand auch schon diese Projekt umgesetzt und könnt mir etwas helfen?

Vielen Dank

Roli
Zuletzt geändert von alchy am 01.06.2018, 08:00, insgesamt 1-mal geändert.
Grund: verschoben aus HomeMatic Allgemein
492 Kanäle in 92 Geräten und 37 CUxD-Kanäle in 4 CUxD-Geräten:

dondaik
Beiträge: 10559
Registriert: 16.01.2009, 18:48
Wohnort: Steingaden
Hat sich bedankt: 145 Mal
Danksagung erhalten: 34 Mal

Re: Wemos D1 mini Laufschrift Matrix Display

Beitrag von dondaik » 15.03.2018, 19:59

wie wäre es mit einer email an den entwickler...
-------
wer schreibfehler findet darf sie behalten.

Ritter
Beiträge: 134
Registriert: 03.02.2013, 12:58

Re: Wemos D1 mini Laufschrift Matrix Display

Beitrag von Ritter » 18.03.2018, 20:42

Hallo,

nachdem ich den Beitrag gelesen habe, bastle ich jetzt auch schon eine Zeit herum. Ich habe es jetzt hinbekommen, indem ich in der konfig die Pins geändert habe (die Belegung habe ich aus einem anderen LED Matrix Beispiel):

#define CLK_PIN D5
#define DATA_PIN D7
#define CS_PIN D3

Dann war alles spiegelverkehrt und mit Ändern der MD_MAX72xx.h mit dem Editor in der Zeile: #define USE_PAROLA_HW 1 (vorher 0) läuft der Text den ich in die Variable schreibe richtig durch.
1x HM-LC-Dim1TPBU-FM, 2x HM-Sec-RHS, 1x HM-RC-12-B, 2x HM-LC-Sw1-Pl-2, 2x HM-RC-4-B, 1x HM-RC-P1, 1x HM-CCU-1, 1x HM-OU-LED16, 1x HM-PBI-4-FM, 1x HMW-IO-12-Sw14-DR, 1x HMW-IO-12-Sw7-DR, 4x HM-Sec-SD, 2x HM-PB-2-WM55, 1x HM-WDS100-C6-O

Roli01
Beiträge: 84
Registriert: 06.04.2008, 23:56
Wohnort: nähe Krems/Donau

Re: Wemos D1 mini Laufschrift Matrix Display

Beitrag von Roli01 » 22.03.2018, 08:30

Hallo und danke für deine Antwort.

Bin anscheinend doch nicht der einzige der Probleme damit hat.
Email an den Entwickler habe ich natürlich schon vorher geschrieben aber leider keine Antwort erhalten. Darum habe ich mich dann an dieses kompetente Forum gewendet!

Könntest du mir eventuell deine bin datei zukommen lassen?
Ich kann irgendwie nur bin dateien auf meinen Wemos laden.

Wär super von dir.

Danke

Roli
492 Kanäle in 92 Geräten und 37 CUxD-Kanäle in 4 CUxD-Geräten:

capitaen_z
Beiträge: 125
Registriert: 05.07.2015, 19:34
Wohnort: Hamburg

Re: Wemos D1 mini Laufschrift Matrix Display

Beitrag von capitaen_z » 25.03.2018, 10:00

Hallo zusammen,

ich bin auch am basteln.
Das Display zeigt auch Text richtig an, jedoch wird nichts aus einer Systemvariable gelesen.
Ich bekomme auf der Anzeige nur angezeigt: "Starte" kurze Wartezeit "NTP FA".

Ich hab es:
Ich hatte dem ESP in der Fritzbox den Internetzugang verboten, denn wer weiß was da alles nach außen getragen wird!?
Im Code ist aber die Abfrage eines NTP-Servers drin... Jetzt versucht der ESP den NTP-Server zu erreichen und das klappt ja nicht!
Habe einfach den NTP-Server mit der IP-Adresse meiner Fritzbox ersetzt und nun wird die Variable angezeigt!

VG
Leif

dondaik
Beiträge: 10559
Registriert: 16.01.2009, 18:48
Wohnort: Steingaden
Hat sich bedankt: 145 Mal
Danksagung erhalten: 34 Mal

Re: Wemos D1 mini Laufschrift Matrix Display

Beitrag von dondaik » 25.03.2018, 10:20

auf der FB sollten die zeitserverabfragen im heimnetz auch immer "landen"
-------
wer schreibfehler findet darf sie behalten.

capitaen_z
Beiträge: 125
Registriert: 05.07.2015, 19:34
Wohnort: Hamburg

Re: Wemos D1 mini Laufschrift Matrix Display

Beitrag von capitaen_z » 25.03.2018, 14:19

Zwar läuft jetzt alles, aber es gibt noch ein Problem mit den Sonderzeichen, speziell den Umlauten...
Hat einer von euch das schon hinbekommen?

VG
Leif

Roli01
Beiträge: 84
Registriert: 06.04.2008, 23:56
Wohnort: nähe Krems/Donau

Re: Wemos D1 mini Laufschrift Matrix Display

Beitrag von Roli01 » 28.03.2018, 21:58

Hi.

So meine läuft jetzt dank der .bin von Ritter auch mal soweit.

Es werden schon meine 2 Temperaturanzeigen die ich in der Laufschrift haben will angezeigt .
Das ist 1: Die Außentemperatur meines Kombisensors
und 2:Die Saunatemperatur
Ich habe dazu das Script von Schellenberg angpasst

Code: Alles auswählen

var tmp = dom.GetObject("BidCos-RF.LEQ1442757:1.TEMPERATURE").Value().ToString(1);
var saun = dom.GetObject("Sauna Temperatur").Value().ToString(1);
;
if (umi) {
umi1 = trueTextU;
}
var winM1 = falseTextW;
if (winM) {
winM1 = trueTextW;
}
var SoM1 = falseTextS;
if (SoM) {
SoM1 = trueTextS;
}
var Display = "Sauna:"#saun#"$C;Temp: "#tmp#"$C;Luft: "#hum#"%rF;Url. i.H. "#umi1#";Sommer "#SoM1;
dom.GetObject("sv").State(Display);


Soweit zeigt mir das Display die Aussentemperatur von meinem Kombisensor und die Temperatur der Sauna über eine Systemvariable an.
Das wird auch alles in die Systemvariable "sv" geschrieben.
Nur habe ich ein Problem damit die Zusätzlichen einträge die noch im Script sind zu entfernen.
Sobald ich da die anderen Variablen etfernen will, bekomme ich immer eine Fehlermeldung bei der Scriptprüfung.

Könnte da von euch Profis mal bitte einer drübersehen?

Vielen Dank

Roli
492 Kanäle in 92 Geräten und 37 CUxD-Kanäle in 4 CUxD-Geräten:

capitaen_z
Beiträge: 125
Registriert: 05.07.2015, 19:34
Wohnort: Hamburg

Re: Wemos D1 mini Laufschrift Matrix Display

Beitrag von capitaen_z » 02.04.2018, 10:42

Hallo Roli,

kannst dir ja mal mein Script ansehen:

Code: Alles auswählen

! ----------
! 8x8 ESP8266 Script
! ----------
var geschirr = dom.GetObject("Geschirr fertig").Value();
var waschmaschine = dom.GetObject("Wäsche fertig").Value();
var sound = dom.GetObject("Sound an/aus").Value();
var temp = dom.GetObject("HVL.Wunderground:1.TEMPERATURE").Value();
var box = dom.GetObject("Staubbehaelter").Value();
var strom = dom.GetObject("Strom Verbrauch heute").Value();
var stromk = dom.GetObject("Strom Verbrauch heute").Value();
var watt = dom.GetObject("Strom Verbrauch aktuell").State();
var wasser = dom.GetObject("Wasser Verbrauch heute").Value();

string list;

! ----------
! Geschirr
! ----------

if (geschirr == true){
list = list + "Geschirr ist fertig;";
dom.GetObject('MAX_8x8').State(list);
}

! ----------
! Waschmaschine
! ----------

if (waschmaschine == true){
list = list + "Die Waschmaschine ist fertig;";
dom.GetObject('MAX_8x8').State(list);
}

! ----------
! Sound
! ----------
if (sound == false){
list = list + "Sound ist aus;";
dom.GetObject('MAX_8x8').State(list);
}

! ----------
! Staubbehälter
! ----------
if (box == true){
list = list + "Bitte noch die Staubbox vom HomBot leeren;";
dom.GetObject('MAX_8x8').State(list);
}

! ----------
! Stromverbrauch heute
! ----------

list = list + "Stromverbrauch:   ";
strom = strom.ToString(2);
list = list + strom;
list = list + " kWh;";

! ----------
! Stromkosten heute
! ----------

var skosten;
list = list + "Stromkosten:  ";
skosten = stromk * 0.2595;
skosten = skosten.ToString(2);
list = list + skosten;
list = list + " Euro;";

! ----------
! Stromverbrauch aktuell
! ----------
watt = watt * 1000;
watt = watt.ToString(0);
list = list + "Aktueller Stromverbrauch:  ";
list = list + watt;
list = list + " Watt;";


! ----------
! Wasserverbrauch heute
! ----------
var liter;
liter = wasser * 1000;
list = list + "Wasserverbrauch: ";
list = list + liter.ToString(0);
list = list + " Liter;";

! ----------
! Wasserkosten
! ----------
list = list + "Wasserkosten:  ";
var wpreis;
wpreis = 0.004;
integer wkosten = (wasser * 1000) * wpreis;
list = list + wkosten.ToString(2);
list = list + " Euro;";

! ----------
!Temperatur
! ----------
list = list + "Auàentemperatur:      ";
temp = temp.ToString(1);
temp = temp + "$C";

list = list + temp;
dom.GetObject('MAX_8x8').State(list);

! ----------
!Debug
! ----------
var esp = dom.GetObject("MAX_8x8").State();

!WriteLine(geschirr);
!WriteLine(waschmaschine);
!WriteLine(sound);
!WriteLine(temp);
!WriteLine(box);
WriteLine(esp);
die Variable "list" erweitert und anschließend an den ESP übergeben.
Ich lasse mit mit "WriteLine(esp);" unter Script testen die Variable am Bildschirm ausgeben und kann prüfen ob alles OK ist.

VG
Leif

Roli01
Beiträge: 84
Registriert: 06.04.2008, 23:56
Wohnort: nähe Krems/Donau

Re: Wemos D1 mini Laufschrift Matrix Display

Beitrag von Roli01 » 03.04.2018, 10:29

Danke, mit deinem Script hab ichs geschafft.
Das war für mich laien etwas verständlicher.
492 Kanäle in 92 Geräten und 37 CUxD-Kanäle in 4 CUxD-Geräten:

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“