Video demos

Static images don’t do it enough justice. So I made a timelapse and a movie demonstrating the features.

The finished product

After a lot of sanding and assembling the electronics I show you the end result.

image

image

image

image

First plexiglass cnc milling attempt

The outside ring of the clock will be made of plexiglass. This will act as a diffuser for the leds. The plexiglass was milled using a CNC. It was milled at 18k rpm with a 3mm endmill. The dept per pass was set to 1mm.

To try milling plexiglass I got a scrap piece of plexiglass, 200*100*10 mm. I setup the CNC for milling the entire circle and placed the scrap part some where along the cutting path.

By the looks of it, it would allow it to deeper. But the circle will be milled in 10 minutes so attempting a bigger depth would not gain much.

This is the end result, a real clean cut. Only the top part has some little dings but this could have been solved by glueing some thin triplex on top.

image

PCB test fitment into the baseplate

After a couple of hours sanding and filing. I could start the test fitment with a cutout in paper of the PCB and the breakouts. Everything fitted in the pockets correctly. So what was left to do: send out the gerbers for production. Expecting the first prototype from Seeedstudios within a week of 3.

image

Cnced the base plate

Yesterday final cnced the base plate.
It was quite some hassle to get it right. Multiple try outs with ups and downs. I was using the wrong end mills, they were just a little to short. Cutting length that was shorter than the material. When that was sorted out I forgot to fasten the model down. Only clamped down the material. This resulted in a model that came lose after the rough cutting. At the 2nd attempt it finally happend, first attempt done!
It requires some sanding but it’s acceptable for fitment.

image

image

Ledstrip gradient generation

For my ledclock I’ve implemented a little datatransfer. But I want to have a gradient on my clock. My data transfer implementation is quite simple, first the command leddata than it will follow with all the data.

To achieve this without to much effort I did the following:

  • Open gimp and create a file of 60×1 pixels.
  • Select the gradient tool
  • Export the file as 24 bits bitmap, 8 bit Red 8 bit Blue 8 bit Green to /tmp/test.bmp
    • Note that bmp orients the data in the file as gbr instead of rgb.
  • tail -c -180 /tmp/test.bmp > /tmp/leddata_test
    • A bitmap is constructed of a header and then rgb data. In this case I have 60 pixels of 1 byte per color so 60 * 3 bytes represent the gradient.
    • With the use of tail -c -180 I start counting backwards 180 bytes which results in the gradient data in /tmp/leddata_test
  • open cutecom
  • send the command leddata
  • use cutecom to transfer the data as plain and bobs your uncle

Bug fix for cheap eBay rtc.

Found on the Internet, this came up because I gave a colleague one of these rtcs from my private stock.

Possible Bug and Fix

If you have a module like this…and it is unreliable or not working at all, here is a possible fix.
– Remove battery
– Remove D1, R6 and R4
– Solder jumper wire in place of R6
– Inspect crystal soldering – fix if necessary
– Replace battery
The module should now work properly. It requires 5V power, but will work with 3.3V logic.
The DS1307 can be replaced with the newer pin compatible DS1338 for operation from 1.8V to 5V, or the TI BQ32000 for 3.3V (only) operation.

image

Why this is so

The battery backup circuit on these modules is of poor design. D1 and R5 provide a charging current to the CR2032 coin cell. Lithium primary cells such as the CRxxxx series should not be (re)charged. Removing D1 fixes this. R4 & R6 create a voltage divider between the battery and the DS1307. This raises the source impedance (spec sheet warns against this) and increases the current draw from the battery. The voltage divider was necessary because the battery voltage would float at about 4.2V volts due to the D1/R5 circuit! That would keep the DS1307 disabled if present on the Vbat pin. Replacing R6 with a jumper allows the full battery voltage to Vbat.
This information is copied from here: forum.43oh.com/topic/4131-ds1307-rtc-eeprom-from-ebay-possible-unreliable-operation/
and full credit goes to it’s author. I’m writing this guide to hopefully save someone the 3+ hours it took me to learn this.

Ledclock going strong

Yesterday I finally managed to get my ledclock to use the rtc and the ledstrips on the same bus. The transistor switching circuitry wasn’t necessary because both operate at a different frequency so they won’t interfere with each other.

 

Ledclock de setup

Welcome

Welcome to my project site.

Please also refer to www.github.com/fllitjes
Alot of my source code can be found there.