I've always belived that it's all about time, the key is in not spending time, but in investing it..
So it's so important for me to do a clock as i always wanted to make my own one with the features i've always wanted in it and i decided to start by the simple features of time and date with numbers and words and to make modes for it .. and that's the things i will make for NOW.
In future work i will made it to speak the time every hour and also to raise it's brightness in darkness automatically.
Also planing to make an alarm on it and a temperature/humidity monitor.
So it's okay to start with the minimum features now.😉🌟
I used fusion360 to design and assymble my 3d and 2d parts of the clock i made
Fusion360
Fist make the 2D sketch for the clock in these sizes (80mm X 170mm)
Second make fillet for the edges, then make a smaller rectangle .. and make fillet for to make the hole of the clock.
Here we're making the hole of the led matrix which its size 131 x 52 mm in a new component.
Then extrude the 2d sketch to a 3d model for 5 mm.
Then start to make the back of the clock thee same sizes of the clock.
Now make a small holes for the screw and nuts to fit in ( a circle of 3mm)
Here start to make the holes of the components the arduino the same sizes declared in the photo
Make a hole also for the power source (adaptor) rasonable with the arduino hole
Here i made a holes for the place of the speaker after i measured the dimentions of it and then i made the holes for the screws and nuts to fix it in them
Here i added holes for the four pushbuttons i will use to set the clock .. and then i added text to be printed down the holes, also i added holes for the LDR and the screw of it to fix it , and also a hole for the potentiometer to contrl the brightness
Here i started to mount the components in the clock
Here i made jointing for the back of the clock to it
Also here i made second back but smaller than the hole of the clock's back to put it inside like the mechanisms of the clock door
I added a place for the slide switch that i used as an on/off switch
That's the finl result for the model ,
I made holes to mount the nuts inside them for the screws to be fixed well
Laser wok software
cura software
Polywood
PLA filament
El Malky ML149 CO2 Laser Cutter
To afford the plastic grames make sure you put the body on this side on cura
And the layer hight 0.3mm
The infill is 10%
also if you want to make the back of the clock 3d printed too you can adjust it as shown in the second pic and the file will be available below.
I decided to make these parts by laser cutting
Here this is the parts of the supports before i cut them off the body
(1)
First connect the (+) and (-) of the adaptor to the (-)&(+) of the breadboard
then put the regulator to make its face in front of you and the connect thr left terminal to the (+) of the breadboard and the middle terminal to the (-) of the breadboard
then connect the (Vin) of the arduino to the (+) of the breadboard
Now start to connct the 5V and GND of the arduino to the other side of the breadboard as shown in the pic
(in the next steps you should put the GND o the arduino with the (-) of the adaptor on the other side of the breadboard to unify all the grounds)
(2)
Now connect the RTC module by connecting the 5V to the (+) of the breadboard, and GND to the (-) of the adaptor side of the breadboard
Connect the SDA pin to the A4 analog pin on arduino
Connect the SCL pin to the A5 analog pin on arduino
(3)
Now wire the LED Matrix by connecting the GND to te (-) of the breadboard
And connecting the VCC of the matrix on the right terminal of the regulator to power the matrix by the voltage and current it needs
Start connecting the CLK to pin (9) of the arduino
Connect the CS to pin (8) of the arduino
And finally connect the DIN to pin (10) of the arduino
(4)
Now connect the two pushbuttons :
The FIRST pushbutton one terminal to pin (2) on the arduino
The SECOND pushbutton one terminal to pin (3) on the arduino
Then connct the other terminal of each pushbutton together on the bredboard then take a common wire from them and connect it to the unified GNDs
(5)
Finally connect the ON/OFF switch by cutting in the (+) wire of the adaptor and connect it to one of the switch terminals and connect the other terminal to the (+) of the breadboard
Half breadboard
Adaptor 9V was the power source because the arduino can only power the RTC module wih 5V .. so i needed from 7V to 9V external power source to put it on the Vin pin in arduino to power the LED matrix .. but by adding a regulator so that the Matrix can take the current it needs.
pushbuttons (input components)
RTC module (input component)
ON/OFF switch (input component)
32x8 led matrix (output component)
Power jack/connector plug female
Regulator
First include these libraries
Now define varibles of LED control of matrix and the intesity of the light (brightness) and clock modes of 12 or 24 hour
Define the characters of the days of the week short and full, and the char. of the date too
Then define the modes of the LED with the RTC
Define the pins of the pushbuttons as an input pullup
Turn on the pullup and then set the serial begin
Initialize the matrix panels as shown in the code
write the cases of the modes of the LED matrix in the void loop
starting with the default mode at case 0 as it's the first press on the pushbutton
Then in the pics down start to put the modes that the clock should do if it gets signal from an input (the pushbuttons)
Then add the char. of the clock in words (the numbers in words)
(The code is long somehow so check the file down and compile it to check if there's any errors before uploading)
But briefly let's say what the action that this code take to the output components if it get any signals from an input component:
First the code will run the main loop (void loop) of the cases above and always get the time from the RTC module
Second start checking on the cases :
(1) IF (button A pressed) ==> (INPUT), then check the number of the press (0,2,3,4) from the cases above, And implement the mode of the case on the (LED Matrix) ==> (OUTPUT)
FOR EXAMPLE: if it read buttonA pressed on case 1 so implement the small mode of the time.
(2) IF (button B pressed) ==> (INPUT) then check the display of the date and start to show date in words on the (LED Matrix) ==> (OUTPUT) and return to the mode that i activated before for the time.
And here we put in a new loop for char. of the time in words
Here i started by mounting the LED matrix by sticking it to the x-ray paper (i mentioned how i used it in the overcoming challenges below), then i sticked it to the hole of the matrix in the clock from the inside.
I mounted the RTC module in the ceiling of the clock by a screw and nut .
Also i put the pushbuttons after wiring them on their places in the holes i made.
then i connected all the wires of the pushbuttons, the RTC and the LED matrix to the arduino and the breadboard.
Here i was testing the components functionality before mounting them.
this is after mounting the LED matrix with the x-ray paper and then to the clock's body from the inside.
Now here i started putting the arduino and i fixed it with one screw and nut
And then i put the breadboard by sticking it with the doubleface down it.
Here i fixed the power jack and the ON/OFF switch in their places in the wood back of the clock and then i fixed it to the body by screws and nuts.
And this is the final result after closing it successfully.💥
Special thanks to the most supportive, encouraging and helpfull instructor ever Esraa Rageh for always being there for any question anytime, so thank you for your love and patience ❤️
Mainly the challenges were in designing process ..
So i advice you to take care of where you mount the components inside the design because i put the speaker above the arduino .. so i had to change the place of the arduino by drilling the holes of the arduino screws to fix it ..
Also the dimentions of every component is very important to be accurate, to fix the buttons and the LED matrix well without any defects
I advice you to take the dimentions before and after wiring to include the size of the whole components with the wires especially the LED matrix because you might want to change the direction of the pins .
The place of the Matrix was small in the design so i couldn't fix it well so i decided to make a trick which was so beautiful trick, it helped me to fix the matrix and also added awesome view for the clock interface, I added a piece of an old x-ray paper on the matrix then i glue it in the clock body from the inside so only the illuminated LEDs that will appear on the screen when the clock is ON.
As shown i made a place for a speaker to make the clock say the time every one hour and also added more two switches to make alarm and also a place for the LDR to control the brightness of the LED matrix automatically
So as i mentioned before these are my future work on my project and of course i'll be working on it soon.. so stay tuned 🤩✨