ESP8266 Wemos D1 Mini Dot Matrix Clock News & Weather
HTML-код
- Опубликовано: 9 сен 2024
- This is a project I started back in November of 2017 and am finally getting around to sharing it. The 3D Printing files (STL) are freely available. The source code link down below.
Awesome Build video by Chris Riley: • LED Marquee Scroller -...
Thanks Chris!
List of Hardware required:
Wemos D1 Mini: amzn.to/2qLyKJd
Dot Matrix Module: amzn.to/2HtnQlD
Download the STL 3D Files here:
Normal 1 x 4: www.thingivers...
Double Wide 1 x 8: www.thingivers...
Source Code:
github.com/Qro...
Printing Information:
I have printed this with White,, Clear, Transparent Red TPU (with PLA back).
White BAMTack PLA: amzn.to/2vpvQPB
Red TPU: amzn.to/2H74nI5
I have made 2 of these already - thanks for sharing!
Thanks a lot especially for the detailed explanation it helped me make the right settings for board, etc. I have been struggling with other codes for past few days.....God Bless you!!!
Yes working perfect, only I had to add "json-streaming-parser" Lib.
Thanks
Very nice job, great looking project. tks
This will be my next project!
This is what I've bee looking for, fantastic!
Awesome, I hope you share photos of your make. Thanks.
nice!! I happen purchased a Wemos D1!
Wow this is like one I made a few years ago. Mine plays music and IR remote control but also does weather. I will have to make this one to practice getting the news etc. Also I don't have the scrolling like you have, will have to figure out how you got that to work. I only have one character per led block. somehow you squeezed 5 chars into 4 spaces. hmmm. I'm impressed!
hello, are you still playing this LED. 1 question from me, how to display news in 1 country. sorry bad english
Nice jobs some problem with dst print on matrix in serial is working fine
Great looking project. I have a much more complex RUclips Sub display here are work which is in a constant state of "not finished". Your project is great! I have an OctoPrint API library for Arduino, but I like your cut down version, very neat! Do you mind if I take some inspiration from your code, it's great! Just been playing with "advise slip" too, very amusing!!
Great project, again. I will have to dig out my spare maxtrix display and hook it all up with a Wemos!
Steve
Stephen Ludgate sure. Just keep the MIT license intact. I would love to see how you use it.
Hello, could you make this soft display in Polish?
I am not good at programming and I would like to have such a clock with the weather.
Thank you in advance.
Hi, from last year was working properly, now since last month I'm getting "weather data error", in the IP of the PC is OK, only I can't update the firmware, and in the user, i write my web user and password, but I still get the same error. Can you help?
How can i also display temp and humidity taked from dht11 sensor?
You are amazing!!!
I have created this project using 8 panels and after a bit of tweaking it works fab. The only problem is I cannot get the weather section to display mph rather than km/hr for the windspeed
Nigel, glad you are enjoying the Marquee Clock -- from your comments I am assuming you selected Metric display -- as a result the weather results come back in Metric... Celsius and Km/hr. It sounds like you want to apply a mixed display -- you will need to convert the wind from metric to mph on your own. Also, you may have better support if you post this type of question on the GitHub repo where the code is. Thanks.
it's a beautiful project but have you tried to connect it to the smartphone hotspot? I use an Android 11 smartphone and after displaying the ip, it freezes when it displays the three dots and the bar on the left. If I deactivate the hotspot, the information is displayed (date, time, etc.) but obviously it does not update the information after 15 minutes.
Sounds like the hotspot is not allowing all data communication.
Hi. how can i display RUclips subscribers count in it??
Code would need to be added. It does a lot, but the general user is probably not running a youtube channel. You can make these request over on the GitHub where the code is hosted.
@@Qromer thank you for the prompt response 👍👍
hello congratulations for the project works well. Today in Italy the time has changed from legal to solar, however, the clock continues to display the legal h + 1 how can you adjust it? On the settings page the correct time is changed when saving
I will post an update soon
Hi, I also create this clock. But can't modify any API values from web interface for authentication problem. When I click on "Configure TimeZoneDB with API key" then it' prompt me for login. I tried several time to login with user=admin and password=password but refuse me to enter. Could you please what is the problem?
Read this post github.com/Qrome/marquee-scroller/issues/152 This should help you out.
Help Please....
Error:
C:\Users\Kailash\AppData\Local\Temp\arduino_build_989020\sketch\NewsApiClient.h:26:26: fatal error: JsonListener.h: No such file or directory
#include
^
compilation terminated.
Where to find this lib file "JsonListener.h" ?
Sorry about that, I missed including --> --github.com/squix78/json-streaming-parser-- -- as this one is used in the NewsApiClient. I have updated the README.md to include that one. Let me know how it goes. Thanks!
Hello! I've printed your case and it look amazing!
I would like to make some changes on the case. Its possible to share the editable file of the case so I modify it to my hardware?
I would like to place some buttons to setup the time.
Thanks.
All the best!
The case was designed in Tinker Cad -- the STL file is all you get. There are programs out there that will allow you to edit STL files. Thanks.
Hello!
Thanks for your reply.
In fact we can open the STL file with thinkercad, but the modifications are very limited.
Can you share, please, the thinkercad file? If possible to export and share the file...
Thanks
Have a great day.
Hello, sorry boring you. Can you give me some feedback on this? Thanks.
'DynamicJsonBuffer' was not declared in this scope ????? Any solution how to solve this problem ???
Solution is to read the readme file and use the non beta version of ArduinoJson.
Thank you very much for your code. It seems that I have succeeded. I can completely display the weather information of my city. The only problem is that the time cannot be displayed normally, but it always shows ---:--. How can I display the time normally?
Make sure you have an active account on GeoNames as well as the time client call. You can view some of the details if you run the Arduino Serial Monitor tool to see what is happening when it is trying to get the time data.
Thank you for your answer! I have now registered for GeoNames, but I have been receiving activation emails. I also found a surprise, ESP8266 inadvertently can display my time in the city, but can not be displayed after restarting!
Thank you for your answer!
I have a lot of NTP servers in the TimeClient.h file. There are "us.pool.ntp.org", "pool.ntp.org", time.nist.gov". I have tried these addresses, or the same problem. Because there is no VPN in China, I can't access the google network. But the NTP server can't access it. I really can't figure out what's going on!
Hi, thank you create this amazing project! Could you add RUclips function like views, videos, subscribers? thanks.
can i display the messages from repetier-server on this display?? octoprint i have not installed. thank you for this project and greetings from germany
3D PRINT AND MORE not currently supported. I have a buddy that said he may write the code for it.
Hello @qromer , thank you for your response, can i translate the weatherdata to german with the parameter &lang=de.
it work`s fine on follow line
//units = "metric&lang=de";// in openweathermapclient.cpp
What does the "geoname" feature do?
Hello, about the time, the problem can not be displayed, you said to register geonames.org Now I registered and activated my ID. Now it's time to put "const String GEONAMES_USER = "qrome" in the settings.h; // user account for www.geonames.org/ -- this service is used to lookup TimeZone Offsets" with my USER ID ?
Yes, you can use the one provided or the one you created. It looks like your issue might be that the TimeClient class can't reach www.google.com to get the time, you may need to edit the TimeClient. h file to a server that your clock can reach. You may want to change it to const char* ntpServerName = "time.google.com"; Or something that will give you the time. I have a feeling the one in the code now might be blocked.
Updating Time...
Connection failed
firstEpoch is: 1534429617
Getting TimeZone Data for 31.13,104.38
GET /timezoneJSON?lat=31.13&lng=104.38&username=bg8eqb HTTP/1.1
Waiting for data
{"sunrise":"2018-08-16 06:28","lng":104.38,"countryCode":"CN","gmtOffset":8,"rawOffset":8,"sunset":"2018-08 -16 19:44","timezoneId":"Asia/Shanghai","dstOffset":8,"countryName":"China","time":"2018-08-16 23:12","lat": 31.13}
rawOffset for Asia/Shanghai is: 8
Geo Time: 23:12
Version: 2.2
The above information can be seen to update to the time, but how can I tell the connection to fail?
LED MAX7219 is still displayed --:--
Hello, a really great project! Can I somehow also display characters like °C (the degree symbol in front of the C)?
Thanks. Some special characters are not supported by the font library used in the project. Sorry.
Thanks for the quick answer. Which file is the font library? Can I not customize an appropriate file before compiling?
Can i flash .bin fw that is on github on my esp8266 ? (Not wemos d1)
You can try. I think it should work just fine. It is easy enough to compile it for any of the boards that you might be using
Hi Qromer, with the present versions of Arduino and libraries the code does not compile saying that there is an obsolete API, do you know of an updated version on the internet please
Use the versions listed in the readme. It is a constant game to keep old projects updated with every library change. It will compile with the versions listed
@@Qromer Hi Qrome, Thanks I understand and it is good of you to do it, it is a Great Sketch Merry Christmas
How to replace instead of sources are countries? Can be? Is it complicated?
You are better off asking these questions on the GitHub repo where the code is.
can it shows clock only without the weather? please halppp me
No, it currently does not do a stock ticker. You can make these requests on GitHub where the code is hosted.
Display message after loading the sketch: Weather Data Error http / 1.1 401 unauthorized
I'm using version 2.5.2 of esp8266 - Arduino 1.8.8
Please post code questions over on GitHub not here thanks.
You probably don't have an active key.
@@Qromer I reset the Weather Marquee and it worked; thanks
Its an amazing clock project but i am having error while compiling the code:
exit status 1
no matching function for call to 'base64::encode(String&, bool)'
the error comes at Line 38 of OctoPrintClient.cpp while trying to compile following line:
encodedAuth = b64.encode(userpass, true);
i tried several base64 arduino libraries but none fixed the issue. Can someone suggest which base64 library should i use?
thanks
The base64 is part of the ESP8266 core code. You are pobably running an older version. Make sure you have updated to the latest version 2.4.1 and also make sure your board library is current. github.com/esp8266/Arduino/releases
i see, yes i havent had updated my arduino ide for past 1 year. i will try after updating arduino ide and then will let you know. Thank you :-)
after updating esp8266 core and arduino ide i can now compile and download the code but i cant see any new wireless network created by the clock (that is CLOCK-). Any clue what may be wrong?
the device directly had connected to my wireless router as my wemos already had the wifi settings stored from a previous code.
i have wemos d1 mini.not pro version.will all code fit into wemos d1 mini version ?
That is all I use. The wemos d1 mini. Make sure you select 1M SPIFFS when you compile.
I'm getting an error saying: "espcomm_upload_mem failed" at the end of the upload process. What does this mean?
You might get more help if you can share this over on the GitHub repository for the code. It is easier to support there.
Thanks. I figured it out. Bad connection to port.
Can you add not only US News please
I found city id from following link: "openweathermap.org/help/city_list.txt"
clock is not able to display correct time and correct temperature and humidity levels. Can anyone suggest how to configure time and city correctly?
i got it. i found that i need to set api keys manually in settings.h file. It will be great if all settings are stored through web interface than through code as once programmed people will not usually want to touch code again if settings need to be changed. Your efforts to build this clock are just too Great!
There are only a few things in the Settings.h file that are not managed in the web interface. The API Keys are one of them. The instructions state this. Typically that is not something that would change often and I am trying to keep the amount of configuration options down in the web interface.
I followed all your comments this morning. It looks like you had an amazing journey on each step of the project. Sounds like you have it all working now?
ok thank you
Hi
Is it possible to change the language of news and weather?
Yes on the news. The weather service even if you specify the language always returns the condition value in English. Not something to change in the code. Have you installed it yet?
Tak, zainstalowałem go.
Chciałem mieć wiadomości w języku polskim.
Na stronie jest kanał, ale w menu nie ma wyboru.
Pozdrowienia
Mixed screens. What am I doing wrong?
Check the GitHub repo for solutions like this. You probably bought a different LED module -- it is ok, you can change the orientation in the code. Look at the Settings.h file for LED rotation value. Default is 3. Try different values until it fixes it.
int ledRotation = 1; Work. Thanks :)
hello. great project, but can you help me please? error: espcomm_upload_mem failed
What board are you using and what board do you have selected in Arduino?
Qromer I use Wemos D1 mini Pro and i have also selected it in Arduino. I saw a video on Mert Arduino: ruclips.net/video/_jpMv5YaToE/видео.html
how to setup code? i don't do this. please explain it
This is a very similar project and there are some details on working with the code there. ruclips.net/video/Rm-l1FSuJpI/видео.html Same pattern if you follow the README.md file with it.
Very nice job,i place order to Dot Matrix Module and made one.
It'possible for you to share the source code please.
Thanks
I have updated the description with a link to the source code.
thanks you
What are the screw specifications?
Use 1.5 or 2mm self tapping screws. The holes in the model are only pilot hole so you can put pretty much anything in there you want.
@@Qromer Thanks a lot for the speedy reply!
Is a very fine Project, amazing. I want change the language of API Call openweather in GERMAN can you help me?
OpenWeather does support sending the language on the data call however, not all the fields come back translated. Especially the weather condition -- and that is the main one people want. It still comes back in English though you specify DE (German).
@@Qromer Now that I've seen your question! What do you want to change to German?
In the sketch, the Names of the Days of the Week and the Names of the Days of the Month can be changed; for example, in the TimeDB.cpp tab, in line 92, in String TimeDB :: getDayName () { for the Names of the Days of the Week and in line 120, String TimeDB :: getMonthName () { for the Names of the Days of the Month.
Any idea how to fix this issue with the Weather service? I have tested my API key and it is working correctly. News and other APIs also are working correctly. (I have removed the last 4 digits of the API Key)
Getting Weather Data
GET api.openweathermap.org/data/2.5/group?id=5376890&units=imperial&cnt=1&APPID=a69c15a88c0aff2d77649f1e859exxxx
Waiting for data
Error Does not look like we got the data. Size: 2
Is it blocked on your network? I just put my API key in your URL and I got the weather for "Newport Beach" -- have you tested it in Postman? Also, do you know that your API Key is active?
Yes it returns the weather in JSON Format when I check it using a web browser
What version are you running of the Marquee Scroller? Does it scroll an error message? Latest release is version 1.5. If you don't see an error message, then how many dots show on the display when it hangs?
I am running the latest (just set it up yesterday) It scrolls the weather without any information. (it doesnt hang)
Can you run it with the Serial Monitor running and see what the request and response looks like? I just changed my station to "Newport Beach" and mine is pulling the weather and data.
Please to connect app- COLCK86bb65 and thats all.....wi fi on the dots.....any one can help ???????
It is in access point mode. You must connect to it like you would a router.
Hello,
This doesn't work in the Netherlands.
Because we don't have city codes.
I don't know why you say this as I can see plenty of City codes listed in OpenWeatherMap for Netherlands. Amsterdam is 2759794.
@@Qromer
Thanks for the answer.
But how did you find the city code?
I didnt find it
I only saw GEO cords
@@Qromer
I found it.
Its in the url where you find the city code.
After you look for the forecast of your city.