
ColorfulClock
PROColorfulClock
License
:GPL 3.0
Description
Project Description
[Thank you very much for LC EDA’s OSHWLab Stars]
ColorfulClock can also be called ColorfulPixel, inspired by AWTRIX pixel clock, but different from AWTRIX, it can support WiFi, ML302 (4G_MODULE), offline, satellite E108-GN02D (BDS/GPS/GLONASS), etc... The display uses WS2812 + 1.14' TFT dual display, used for text, animation and other function display.
[Note: The current implementation of this project is to call the Arduino library, so you can call me a rookie~~ O(∩_∩)O ]
[ *** This project will continue to be developed and will also be developed using ESP-IDF later*** ] 2023/09/13
Open Source Agreement
GPL-3.0
Project Related Functions
The main function of ColorfulClock is as a desktop clock ornament, which can change the clock display state according to the weather status of the user's actual geographical location (implemented through a generally fuzzy location of IP positioning). For example: when the weather status is sunny: a 4*4 mini sun symbol is displayed in the upper right corner, a thumbnail of the corresponding weather icon is displayed in rainy and snowy weather, etc...
The TFT screen on the left can display more content in a more specific manner, such as: real-time weather status, weather icons, personal memos, dates, countdowns, lunar date tables, etc. [can be added according to your own needs]
WiFi: As the main interface for obtaining relevant information, the reception duration, information type, etc. can be customized...
ML302 (4G_MODULE): When it is detected that WiFi has failed to update data multiple times, it will automatically call and obtain relevant information to wait for WiFi connection. [In actual use, why do you feel that the power consumption of 4G is higher than that of WiFi? There may be a problem with some settings]
E108-GN02D (BDS/GPS/GLONASS): When it detects that WiFi has failed to update data multiple times, it will automatically call and obtain relevant information to wait for WiFi connection. [Same as the 4G module, both use serial port communication, but the command set is different]! ! ! I also discovered a relatively easy-to-use satellite module, which can be used to achieve time adjustment [multiple satellite systems perform positioning, making up for the inaccuracy of IP positioning]! ! !
Audio: Added a 4Ω 3W small speaker, using I2S to play audio (the audio can be customized, played offline, and played online) [can be played alone, but not once integrated]
SDCard: Since the ESP32S3 N16R8 module is used, its storage space is sufficient for general operations, so the SD card function has not been expanded too much and only basic functions have been implemented.
Project Properties
This project is made public for the first time and is my original project. The project has not won any awards in other competitions.
Project Progress
The hardware design has been completed and no bugs were found after verification.
The code integration is completed.
It is open source, and the compressed package in the attachment contains all the information for this project.
Design Principles
Make a desktop ornament with a slightly more complete function? (The self-redemption of CaiGou.
Try to use ESP32S3 (a domestic IOT mainstream controller with built-in WiFi and BLE) to regularly obtain the required information through WiFi. After analysis, it is displayed through the WS2812 matrix. The TFT screen is used for auxiliary display (after actually receiving it, I found that 1.14' The screen is too small? We may draw the relevant adapter board later and use a larger screen.)
China Mobile ML-302 module uses AT commands to communicate with ESP32S3, and automatically switches and obtains data when WiFi fails.
! ! ! I also discovered a relatively easy-to-use satellite module, which can be used to achieve time adjustment [multiple satellite systems perform positioning, making up for the inaccuracy of IP positioning]! ! ! --> E108-GN02D(BDS/GPS/GLONASS)
ESP32S3 has built-in 16M Flash and 8M PSRAM, which can store some local files for offline use.
An SD circuit was also designed in this project, which can read text, video, audio, etc. in the SD card. It only implements basic functions and has not been expanded.
Try to use the built-in I2S to output the audio and play it (the online audio playback function will be added later, similar to the online karaoke station? 彳亍 --- It can be played alone, but it will not work once integrated. It may be a novice. The method of adjusting the library has failed?
Software Description
The code has been open source, please see the attachment for details.
Use Clion to assist development, the framework is PlatformIO + Arduino, crazy library adjustment method!
I'm Tiao Ku Shrimp!
There is a problem with the ESP-IDF driver ST7789V. It only displays the backlight and does not display the image. It may be a configuration error...%¥@(
Let’s use PlatformIO + Arduino to verify it for now...
Special reminder! ! !
Because this vegetable chicken is so delicious! Therefore, we cannot completely guarantee that the process of adjusting the library and the program code after integration will be bug-free. After all, the code and the people... If there is one that can run, it will be QvQ.
Physical Display
3D rendering
Back plate (don’t ask me why the process side is not removed)
Display board, the one on the right is the 1.14' small screen (too small
RGB disorder verification
RGB + LVGL
The effect after integration is completed:
Boot page
All lamp beads light up
Gradient tone display
Rainbow transition hue display
Random lamp bead gradient display
Temperature display
Left icon + clock display
Right icon + clock display
clock display
night clock display
Secondary screen bar graph display
Secondary screen system status display
Secondary screen calendar display
Weather status display on secondary screen
Design Considerations
ColorfulClock can also be called ColorfulPixel, so they are equivalent.
Notice! ! ! Try not to light up all the lamp beads at once unless you are using a 5V4A power supply! ! ! ! ! !
Rechargeable batteries can be purchased at Aobao, RMB 2.5 each (during actual use, it was found that the battery will quickly lose power after the main power supply is cut off, and cannot provide sufficient backup power for DS3231. I still don’t understand why?
The TFT screen can be purchased on Xobao, but currently the 1.14' (RMB 8.5) is a bit too small, too small for the eyes. TAT
Other
Project includes files:
ColorfulClock can also be called ColorfulPixel
1.README -> file description
2.ColorfulPixel_Firmware -> source code [developed using Clion]
3.MyFont_Resources -> text TTF library used
4.MyUi_Resources -> Squareline LVGL code base
5.QWeatherUi_Resources ->Japanese weather library
6.RelatedLibraries -> software related libraries
7.RelatedResources ->Hardware related files
8.ColorfulPixelSCH -> schematic related files
9.WS2812B_Pixel -> pixel generation principle [Rookie version (friendly for beginners)]
10.ColorfulPixel_3D -> 3D model and shell file
11.Other -> project related files
Project attachment size: 238MB [Exceeds the uploadable attachment size, so only the source code and pixel generation principle are added to this page to facilitate downloading]
Project attachment address: Link: https://pan.quark.cn/s/144b9535601e Extraction code: mLDf
Enjoy it!!!
Finished with flowers*★,°*:.☆( ̄▽ ̄)/$:*.°★*.
At this point, I would like to express my deepest gratitude to LC EDA for its OSHWLab Stars.
Designed by CRYOSTATx (from OSHWHub)
Design Drawing


Comment