DIY Funny Clock: 100% Open Source Materials!

Click on the above“Big Fish Robot”, select“Pin/Star Public Account”

Benefit content delivered to you first!

DIY Funny Clock: 100% Open Source Materials!

This article is reprinted from the public account | Daerwen said

Author:Zhi Hui

The creative prototype of the funny clock originated from a foreign Arduino project. After watching it, I was deeply impressed by its silly vibe, so I designed one myself, improved the structure, and added some extra features.

Most of the materials for making this funny clock can be purchased online (including part processing), and the cost is not high. In the tutorial below, the main control circuit board I used is self-designed and processed.

For beginners, if you don’t want to make and solder the PCB yourself, you can directly purchase the recommended development board below, which can achieve exactly the same functionality.

First, it should be noted that since this is an electronic DIY project, it is best to have a little electronic foundation: knowing Arduino would be perfect;

If you don’t know, it’s okay. The circuit connections are no more than 10 wires, and the code is already provided, just download it with one click.

At the end of the article, I will attach the method to obtain the open-source materials for this electronic clock.

The handwritten time-telling function of the funny clock looks very tiring

Materials

DIY Funny Clock: 100% Open Source Materials!
3 9g servos 10 yuan
1 whiteboard pen 3 yuan
1 NodeMcu ESP8266 development board 15 yuan
1.2MM Z-shaped wire for servo lever 1 yuan
Several M3x3 flat head screws
Several M3 nuts
Several M3x12 screws
Several M3x6 T-type connecting screws
A batch of acrylic laser-cut parts
DIY Funny Clock: 100% Open Source Materials!
DIY Funny Clock: 100% Open Source Materials!
DIY Funny Clock: 100% Open Source Materials!

Production Process

DIY Funny Clock: 100% Open Source Materials!
After getting the materials, you can assemble it according to the 3D model file. The assembly is very simple, but some places need to pay attention to the order.
Some students may not know how to view the 3D model files. Here’s a brief explanation, it’s very simple.Windows 10 actually comes with a 3D file viewer, and the following software can be used to open STL format 3D files.
DIY Funny Clock: 100% Open Source Materials!
Here I recommend using 3D Builder to view. After opening, you can freely rotate and zoom to see details ↓
DIY Funny Clock: 100% Open Source Materials!
A video of an explosion diagram for reference:
Here is a pile of acrylic parts I processed back:
DIY Funny Clock: 100% Open Source Materials!

First assemble the servo arms, note that some places on the body are fixed with screws and nuts, while others may need to be glued with 502 glue.Do not get the orientation of the servo wrong ↓

DIY Funny Clock: 100% Open Source Materials!

Then install the gantry and the pen-lifting servo ↓

DIY Funny Clock: 100% Open Source Materials!

Next, install the left and right arms. The hinge of the arm is fixed by the connecting screws mentioned in the materials above. Both the big and small arms are 3mm thick, so the length of the connecting nuts is 6mm just right;the big arm and the servo are glued together using the connecting parts provided with the servo and 502 glue ↓

DIY Funny Clock: 100% Open Source Materials!

It is important to note that do not install the screws on the arms and servo shaft that are circled above first, as there will be a calibration process for the servo angles later. After calibration, install the fixing screws.

DIY Funny Clock: 100% Open Source Materials!
This is how it looks after the servo arm is installed on the frame. The connecting hinge of the two uses the connecting screws from the arm.
DIY Funny Clock: 100% Open Source Materials!The connection between the pen-lifting servo and the arm uses a servo connecting rod wire, which needs to be bent with pliers. Like the arm servo, the fixing screws for the arm plastic parts should not be installed first. Wait until the program is downloaded and calibrated before fixing.
DIY Funny Clock: 100% Open Source Materials!
This is what the final product looks like. The back is made of transparent acrylic. Because a light-sensitive resistor is added to the PCB, it can automatically stop working after the lights go out. ↓↓↓
DIY Funny Clock: 100% Open Source Materials!
After the hardware assembly is completed, the next step is to connect the circuit. As shown in the picture above, I used a small PCB circuit board designed by myself, and I have open-sourced the schematic and PCB files.
DIY Funny Clock: 100% Open Source Materials!
If you don’t want to process the PCB yourself, I will introduce the circuit connection method using NodeMcu:
DIY Funny Clock: 100% Open Source Materials!
As shown in the figure, the yellow signal wires of the left, right, and pen-lifting servos are connected to the D1, D5, and D6 pins of NodeMcu respectively. The black Gnd wires of the servos are all connected to Gnd, which is the negative power supply, and the red Vcc wires are all connected to the positive input of the power supply.
There is nothing else to connect, nice & easy~
Software Debugging
DIY Funny Clock: 100% Open Source Materials!
The next step is to upload the program to the development board. If you have used Arduino before, it should be no pressure. First, install the ESP8266 board package and the two required library files for the project.
Open the Arduino IDE, select the board and port, and click upload. The IDE configuration is as follows, and the port should be selected based on your actual port ↓
DIY Funny Clock: 100% Open Source Materials!
For students who are not familiar with Arduino, first go to the Arduino official website to download an IDE, the link is:
www.arduino.cc/en/Main/Software
Then, extract the ArduinoLibraries in my project to the directory on your computer:
C:Users[Your Username]AppDataLocal
Extract the downloaded Arduino IDE, right-click on the file in my project:
ArduinoDoubiBot_FirmwareDoubiBot_Firmware.ino
Select: Open with – Choose another app – Find arduino.exe in the IDE directory, and then configure it in the same way as shown in the configuration diagram above. Plug in the development board and click the upload arrow in the upper left corner, wait for the upload to complete and it’s done.
Here’s an explanation of some of the contents in the code:
//#define DRAW_WEATHER//#define DRAW_TIME
These two lines are commented out, so by default, there will be no action after downloading the program. If you want to handwrite the time, delete the // in front of the second line; if you want to draw the weather, delete the // in front of the first line.
const char* SSID = "***";    // The name of the WiFi to connect to
const char* PASSWORD = "***";    // The password of the WiFi to connect to
const char* CITY = "shanghai";
Everyone can understand this, just change it to your home WiFi name and password. If you want to use the weather, change the CITY below to the lowercase pinyin of your city.
// uncommet this to do calibration, code will be blocked here
control.Calibrate();
This line is crucial. The calibration mentioned earlier is set here. First, after modifying the code according to the instructions above, when you download and run it for the first time, the servo will power on and turn to a position and then stay still, because the code will be blocked at this step.At this point, you need to adjust the positions of the three servo plastic arms to the following state:
DIY Funny Clock: 100% Open Source Materials!
The two arms are in an L shape
DIY Funny Clock: 100% Open Source Materials!
The pen-lifting servo is at a 45-degree angle
Once all adjustments are made, uncomment this line:
// uncommet this to do calibration, code will be blocked here
// control.Calibrate();
Upload the program again, and you will see the robot start to draw things. Mission accomplished~
The video below demonstrates the effect of sending commands to the funny clock through the computer terminal. Note that the bottom left corner of the whiteboard is the zero point coordinate.
For detailed code comments, you can refer to the project files I provided. I wish you all a happy time.
Acquisition Method
1. Reply with the keyword:Electronic Clock
2. Follow the public account【Daerwen said】, reply with the keyword:Electronic Clock
DIY Funny Clock: 100% Open Source Materials!
Hello everyone, I am Zhang Qiaolong, an electronics enthusiast. I write some technical articles about the combination of hardware and software. If you find the article helpful,please share it, it is also our motivation to continue updating.
DIY Funny Clock: 100% Open Source Materials!Long press to identifythe QR code in the pictureto follow

Leave a Comment

×