Ich mag Displays. Ich habe schon einige Projekte mit LCD-Displays (-> Blogbeiträge), OLED-Displays (-> Bitcoin-Ticker) und auch normale Tablets (-> TabletUI) gemacht. Heute habe ich mir mal ein LED-Matrix-Display MAX7219 angeschaut. Nicht das einzelne, sondern gleich das vierer Multipack.
Mit geeigneter Software kann man damit wie mit einem Laufband Wetter / Nachrichten / Bitcoin darstellen.
AZDelivery MAX7219 8x32 4 in 1 Dot Matrix LED Anzeigemodul kompatibel mit Arduino inklusive E-Book!
8,99 €Die Software habe ich nicht programmiert, sondern kommt hier her. Qrome / Marquee.
Die Software hat ein Webinterface, welches man einfach konfigurieren kann. Nach erstmaligen Aufruf wird ein Accesspoint aufgebaut, auf dem man sich verbindet und dort sein eigenen SSID / Passwort eingeben kann. Ebenfalls kann man dort weitere Informationen fürs Display ein- oder ausblenden. Sehr gut gemacht. Was mir fehlt, ist eine MQTT Schnittstelle.
Für die Hardware benötigt man einen
WeMos D1
Max7219 Display
Display Ein- und Ausschalten per Fhem:
Normalerweise ist ein Toggle-Mode in der Software eingebaut, mit dem man per Http die LED-Matrix ein- und ausschalten kann. Ich habe die Software noch um ein paar Zeilen erweitert, sodaß man per Fhem einen definierten Zustand schalten kann.
void handleDisplayOn() {
if (!athentication()) {
return server.requestAuthentication();
}
displayOn = true;
enableDisplay(displayOn);
String state = "ON";
displayMessage("Display is now " + state);
}
void handleDisplayOff() {
if (!athentication()) {
return server.requestAuthentication();
}
displayOn = false;
enableDisplay(displayOn);
String state = "OFF";
state = "OFF";
displayMessage("Display is now " + state);
}
In Fhem:
defmod LEDMatrix dummy
attr LEDMatrix comment https://github.com/Qrome/marquee-scroller
attr LEDMatrix devStateIcon an:it_camera@red aus:it_camera@green
attr LEDMatrix devStateStyle {($state eq "an")?'style="color:red"':'style="color:green"'}
attr LEDMatrix room 40_Büro
attr LEDMatrix webCmd an:aus
defmod ntfy_LEDMatrixAN notify LEDMatrix:an {Log 1, "LEDMatrixan";; {system ("wget -q -O- 'http://192.168.178.42/displayon'");;} }
defmod ntfy_LEDMatrixAUS notify LEDMatrix:aus {\
Log 1, "LEDMatrixaus";;\
{system ("wget -q -O- 'http://192.168.178.42/displayoff'");;}\
}\
Update 28.10.2018: Es gibt ein Problem mit der Zeitumstellung
Folgende Zeile löst das Problem:
In Geonameclient.cpp modifiy line 81 from:
String offset = (const char*)root[„dstOffset“];
To:
String offset = (const char*)root[„gmtOffset“]; //Now uses the varying gmtOffset value
Bitcoin
Ethereum
Bitcoin cash
Bitcoin sv
MetaMask
Dieser Beitrag war interessant?
Spende mir ein paar Bitcoin
Scanne den QR-Code oder kopiere die untenstehende Adresse, nur Bitcoin
Scan the QR code or copy the address below into your wallet to send some Bitcoin
Dieser Beitrag war interessant?
Spende mir ein paar Ethereum
Scanne den QR-Code oder kopiere die untenstehende Adresse, nur Ethereum
Scan the QR code or copy the address below into your wallet to send some Ethereum
Dieser Beitrag war interessant?
Spende mir ein paar Bitcoin cash
Scanne den QR-Code oder kopiere die untenstehende Adresse, nur Bitcoin cash
Scan the QR code or copy the address below into your wallet to send some Bitcoin cash
Dieser Beitrag war interessant?
Spende mir ein paar Bitcoin sv
Scanne den QR-Code oder kopiere die untenstehende Adresse, nur Bitcoin sv
Scan the QR code or copy the address below into your wallet to send some Bitcoin sv
Hallo Dave,
nein, aber ich habe eine andere Lösung gefunden, welche schon seit 6 Monaten fehlerfrei läuft.
Alle Infos werden über MQTT von Fhem ans Display geschickt.
https://blog.moneybag.de/smartes-max7219-dot-matrix-display-fuer-fhem-als-status-anzeige/
liebe Grüsse
robin
Hi
ein sehr geiles Projekt. Es ist ähnlich zu diesem https://github.com/jptrsn/clock-message-board jedoch deutlich umfangreicher.
hast du mittlerweile MQTT implementiert bekommen?
br Dave