Introduction: LED Marquee Scroller Wemos D1 Mini ESP8266
Make your own Clock, Weather, News, and more! Easy to make LED Marquee Scroller using a Wemos D1 Mini and a LED Dot Matrix Panel. Full Arduino software and 3D printed case.
Features Displays the following every 60 seconds:
- Accurate Clock refresh off Internet Time Servers
- Local Weather and conditions (refreshed every 10 - 30 minutes)
- News Headlines from all the major sources
- Configured through Web Interface
- Display 3D print progress from your OctoPrint Server
- Option to display random goofy advice
- Option to display Bitcoin current value
- Basic Authorization around Configuration web interface
- Support for OTA (loading firmware over WiFi)
- Video: https://youtu.be/DsThufRpoiQ
Build Video by Chris Riley: https://youtu.be/KqBiqJT9_lE
Required Parts and Source Code:
- Wemos D1 Mini: https://amzn.to/2ImqD1n
- Dot Matrix Module: https://amzn.to/2HtnQlD
- 3D Printed Case: https://www.myminifactory.com/object/3d-print-65739
- Source Code: https://github.com/Qrome/marquee-scroller
Step 1: Wiring for the Wemos D1 Mini to the Dot Matrix Display
The Dot Matrix Display comes with the wires you can use. I simply cut off the plugs and solder them directly to the pin locations on both the LED Dot Matrix Display and to the Wemos D1 Mini.
- CLK -> D5 (SCK)
- CS -> D6
- DIN -> D7 (MOSI)
- VCC -> 5V+
- GND -> GND-
The Dot Matrix will slip into the case and snap in. No glue required and will be a snug fit.
The Wemos D1 Mini will slide into the slot of the back panel and will be held in when assembled. Also, no glue required. The back panel can be snapped in then held shut with some small screws.
Step 2: Compiling and Loading to Wemos D1
Download source code from here: https://github.com/Qrome/marquee-scroller
It is recommended to use Arduino IDE. You will need to configure Arduino IDE to work with the Wemos board and USB port and installed the required USB drivers etc.
- USB CH340G drivers: https://wiki.wemos.cc/downloads
- Open the Arduino IDE and enter the following URL http://arduino.esp8266.com/stable/package_esp8266com_index.json into Additional Board Manager URLs field. You can add multiple URLs, separating them with commas. This will add support for the Wemos D1 Mini to Arduino IDE.
- In the Arduino IDE, open Boards Manager from Tools > Board menu and install esp8266 platform (and don't forget to select your ESP8266 board from Tools > Board menu after installation).
- Select Board: "WeMos D1 R2 & mini"
Packages -- the following packages and libraries are used (download and install):
- ESP8266WiFi.h
- ArduinoJson.h --> https://github.com/bblanchon/ArduinoJson
- ESP8266WebServer.h
- WiFiManager.h --> https://github.com/tzapu/WiFiManager
- FS.h
- SPI.h
- Adafruit_GFX.h --> https://github.com/adafruit/Adafruit-GFX-Library
- Max72xxPanel.h --> https://github.com/markruys/arduino-Max72xxPanel
- JsonStreamingParser.h --> https://github.com/squix78/json-streaming-parser
Initial Configuration:
- You will need to update the Settings.h file with your API Keys for the following:
- Open Weather API Key: http://openweathermap.org/
- News API Key: https://newsapi.org/sources
- GeoNames Key (optional as you can use mine or create your own) http://www.geonames.org/
- Your OctoPrint API Key from your OctoPrint User Account (optional if you use the OctoPrint status)
NOTE: The settings in the Settings.h are the default settings for the first loading. After loading you will manage changes to the settings via the Web Interface. If you want to change settings again in the settings.h, you will need to erase the file system on the Wemos or use the “Reset Settings” option in the Web Interface.
Step 3: Web Interface for Configuration
The Marquee Scroller uses the WiFiManager so when it can't find the last network it was connected to it will become a AP Hotspot -- connect to it with your phone and you can then enter your WiFi connection information.
After connected to your WiFi network it will display the IP addressed assigned to it and that can be used to open a browser to the Web Interface. Most everything can be configured there.
The Clock will display the time of the City selected for the weather.
Step 4: Enjoy
I hope you enjoy your LED Marquee Scroller. If you do, please share your makes, share the link, like and subscribe. Questions? Post them up.
Enjoy!
-Qrome