Building a Subscription Counting Clock!
The HackMakeMod Subscription Counting Clock is the perfect project to get started in the maker hobby! Even if you don't care to keep track of social stats, it's a great looking clock that always has perfect time!
This project touches on key disciplines worth learning for future projects that include Electronics, Programming and 3D Printing.
Click here for the DIY kit on our store.
Supplies and Tools:
- 2 x Ribbon Cable Connectors
- 1 x D1 Mini ESP8266 12F Micro Controller
- 1 x Cricut Premium Vinyl - True Brushed
- 4 x Foam Edge Spacers
- 1 x Double Stick Foam Pad
- 1 x USB 5V Wall Charger
- 1 x Micro USB Cable (6ft)
Tools and Supplies you'll need:
- Soldering Iron
- Solder
- Wire Cutters or Flush Cutters
- Wire Strippers
- Double Sided Tape (or anything else that can mount the ESP chip to the back of the LED boards)
- Your Undivided Attention
The Enclosure
If you're going to be printing the enclosure with your own 3D printer, you may want to start that first. This print took 6 hours for our printer!
Download our enclosure designs HERE:
(These 3D models do not require supports)
For 256mm x 32mm size matrix displays (Most Common)
- Display Enclosure (face needs to be covered with vinyl)
- Display Enclosure with Printed Face
- Back Cover
- Back Cover for wall mount
For 260mm x 32mm size matrix displays
- Display Enclosure (face needs to be covered with vinyl)
- Display Enclosure with Printed Face
- Back Cover
- Back Cover for wall mount
There are four models:
- Main Enclosure with open front
- Main Enclosure with thin 3D printed layer (no need for vinyl)
- Simple back cover
- Wall mount back cover
We designed a split version of the housing for those of you that have smaller print beds. The two halves can be super-glued together after printing. Note: It is not necessary to glue the back cover. Both halves can be installed with a friction fit individually.
The split version can be downloaded HERE
https://a360.co/30xHtEb (These 3D models do not require supports)
After printing, use super glue to hold the two enclosure halves together. The back cover functions as two independent halves and doesn't require gluing.
Building the Electronics
On the LED Dot Matrix modules, you'll see a few things: A series of numbers on the sides, an IN and an OUT marked on the PCB (printed circuit board), and "VCC, GND, DOUT/DIN, CS, and CLK."
Under the DOUT Remove one of the LED displays from one of your displays with a careful pull. This will give you space to connect them easily.
Connect the 5 pins from the other board's IN to the OUT on the board you just pulled an LED from.
Position them at 90 degrees, and slide the 5 pins into the holes on the other PCB.
Once inserted, bend the pins back to a straight line (You may even bend them beyond straight to secure the connection).
Solder the now connected pins that are now through the board marked OUT.
Reconnect the missing display. Make sure you put the numbered side back in proper orientation.
Remove the extra input pins on the side of the board. We're going to be soldering to the back pads of the PCB, so the extra pins are not needed.
Cut the wire to about four inches and strip a quarter of an inch of the wires bare on each end.
Take your soldering iron and tin all of the wires on both ends. Trim off any extra length you don't need, especially if it's bulging at the end of the wire.
Solder your "IN" PCB pads to your freshly tinned wires.
It can be helpful to apply a little fresh solder to the pads first, then with the iron still there, apply the tinned wire and let it sink into the pre-applied solder.
Note: Wire colors may vary from kit to kit.
Take note of which wires attach to which pads!
Next, solder your wires to the appropriate places on the ESP8266 chip.
For your power wires:
5V - VCC
G - GND
D5 - CLK
D7 - DIN
D8 - CS
Here's a wiring diagram for example
Stick your ESP8266 to the back of your LED PCB with some padded double sided tape.
You're all done building the internal parts. Hold off on inserting the hardware into the case. We recommend installing and testing the software before completing the build.
The Software
At this point, we need to get the resources that will communicate information to our ESP8266 board. There's a number of downloads, so follow closely!
Go to https://www.arduino.cc/en/software. Download the appropriate version for your operating system and install the program. We're going to use Arduino IDE to upload our code to the ESP8266.
Go to https://github.com/nodemcu/nodemcu-devkit/tree/master/Drivers. Download the appropriate driver for your operating system and install. This will allow the ESP8266 to connect to the internet.
Once installed, open your Arduino.IDE program. Click on "Tools," and find "Manage Libraries."
Once there, search for the Libraries listed below. The library search bar is case sensitive. Make sure you search for these properly or they won't show up.
You may need to restart the program or your computer after downloading all of this!
After installing all the libraries, we need to ensure Arduino.IDE knows what we are working with and where to find it.
Go to preferences...
In the "Additional Boards Manager URLs:" we need to add this line...
https://arduino.esp8266.com/stable/package_esp8266com_index.json
If you already have it... Great! If not, just click on the little window pop-up box and add it. You may, or may not have other lines in there already.
Next go to --->"Tools" --->"Boards Manager"
Then search:
esp8266
After you install esp8266 got to...
Tools -> Board -> ESP8266 Boards ->
Then select: LOLIN (WEMOS) D1 mini (clone) for the microcontroller included in our kit.
Next, connect your power USB cable to the ESP8266 and connect to your computer.
Then, select the correct serial port in Arduino.IDE. Typically it will show up as COM3, COM4, or COM 5. Once selected, we're going back to the internet to get our code.
DoLibo Makes It EASY!
Go to code.DoLibo.com Register an account and log in.
Next choose this project in the project list...
Paste the URL of the YouTube channel that you'd like to follow into the DoLibo Code Helper YouTube Channel input. Click the "Check it!" button afterwards just to confirm you have the right channel.
Select the correct time zone as well as other adjustable options to personalize your display. Also make sure to add your network name (SSID) and password so the display can gain access to the internet.
Now, click "Do Code!" button...
Once the code is generated, click the "COPY TO CLIPBOARD" button in the upper right corner...
Then, go back to the Arduino.ide. Select All of the text that starts in the program, and paste the new text over all of it. If you don't get rid of that start-up text, this won't work!
If everything has gone right, and you've selected all of the information correctly, click the arrow (Upload) and send your information over to the ESP8266. If you hit an error, check back over the libraries and make sure you have everything installed and plugged in correctly.
Once the files are uploaded the display should reset and show the "Loading..." screen...
Final Touches
We're almost done! Once you see the display come up correctly with your channel information, all that's left is to put the clock in it's enclosure.
To support the electronics, place your four foam pads inside the enclosure, opposite to each other. Place two on each side.
Then, gently and carefully, push your the electronics into the enclosure. The foam pads roll under a bit as you push the LED displays in. That's ok as long as it's a snug fit.
Next, Remove the backing to your vinyl to expose it's sticky side. Apply the vinyl to the front of the enclosure. Make sure to leave excess vinyl on all four sides of the enclosure.
After smoothing out the vinyl, lay the enclosure down on a clean smooth cutting surface. Cut to the excess vinyl with an Exacto style knife.
Give your USB cable a small coil as you place it in so the ESP8266 has some slack and isn't putting unnecessary strain on the USB connector.
After that, plug the charging cable into a 5V wall plug, close the back of the clock frame, and plug your clock in!
FINAL DISPLAY
Congratulations! Now you never have to go searching online for your subscriptions again. The time of day, day of the week, YouTube subscriptions and views will start to roll by on whatever time transition you decided. If this guide has been helpful for you, give it a share and show off your piece with #HackMakeMod! We'd love to see your work!
It is our mission to help you have a path to a successful project! If you have difficulty following our instructions please let us know: support@hackmakemod.com