Belshazzar’s Clock
Over a number of years, I’ve experimented with various projects which use luminous paint and ultra violet LEDs to make raster or vector displays. You can see an indifferent video of the very first one here:
As these displays were mainly intended as installations at Maker Faires and EMF Camp, they tended to be on the big side, around 2 metres long and 500 mm to 1.5 metres high. Accordingly, they never found permanent homes, and because of the general pressures of installation work, there are only a couple of rough videos to record their existence. Here’s another one of Belshazzar 2, which was a vector display with a low power UV laser:
Belshazzar 3 through 5 (I think) passed without record.
OK, so why Belshazzar?
To quote Wikipedia:
Belshazzar’s feast, or the story of the writing on the wall, chapter 5 in the Book of Daniel, tells how Belshazzar holds a great feast and drinks from the vessels that had been looted in the destruction of the First Temple. A hand appears and writes on the wall in words of fire (my addition).
Well, product specs don’t come a lot clearer or simpler than that, and Rembrandt, showing remarkable prescience and consideration, made a mock up wireframe for me in 1635.
With generations of Belshazzars languishing in storage, I decided it was time to make a version of Belshazzar more suited to domestic environments, and settled on a clock. The other reason for making a luminous night clock is that I’m both somewhat insomniac and quite short-sighted, so I tend to wake up in the early hours and ask my partner what time it is.
The basic mechanical design uses a length of 100mm diameter ducting, painted with luminous paint and rotated on its long axis by the ubiquitous 28BYJ-48 stepper motor, which has a built in 64:1 gearbox and, crucially, will operate on a 5V supply. This made powering the device somewhat simpler. I designed 3D printed parts to support the drum and motor, and mounted the assembly on a plywood base.
All the earlier Belshazzars have been hand wired on matrix board or on home made PCB’s, but I’ve been learning KiCad and some PCB design over the last year so I decided to design a proper board which could be re-used for other projects.
The electronics are equally straightforward. An ESP32C3 dev board drives the stepper motor and a chain of 30 UV LEDs running off WS2811 chips. In other words, a string of UV Neopixels.
The software is even simpler. As Micropython has existing Neopixel and stepper modules, I didn’t need to write anything clever, and the main script is 110 lines long. The ESP32C3 has Wifi support, so time was supplied by NTP. However, the Micropython time module does not have full support for time zones, so currently the design shows UTC, until I can work out an elegant way of setting DST.
Another gotcha which is worth noting is that the ESP32C3 super mini (clones?) that I got from AliExpress have variable quality to say the least. The first batch I bought looked absolutely fine, but refused to flash, and it took me a number of hours to realise that they had been shipped with a straight ESP32C3 chip with no onboard flash memory! These boards would never work. They didn’t even break out the relevant SPI pins from the chip, so there wasn’t a way to add a flash chip. At £2 a unit it was hardly a financial disaster, but wasted my time and patience.
A second set of boards had a more subtle problem. The WiFi chip antenna they used, or possibly the matching circuit, was badly designed, which meant they tended to pull a lot of current when doing certain network operations, which resulted in the processor resetting itself. After a lot of Googling, I finally found the incantation to reduce the transmit power to a level which did not put too much strain on the power supply. It seems this is not just a property of cheap clones, apparently Adafruit’s board suffer from similar problems.
So what’s next?
Well I think the aesthetics of the design could be improved, mainly by having the drum resting on two rollers hidden under the base, which would also mask the LEDs and look somewhat more mysterious.
I’ve also experimented with a daylight version! I’ve made a drum which is covered in photochromic ink, which goes from transparent to blue when exposed to UV. Although the ink transitions quickly, in under a second, it also fades quickly, in around 10-15 seconds, which means the drum needs to rotate more or less continuously. I’m trying to find longer lasting pigments.
You can find all the assets to make your own clock on my Github repository https://github.com/mkarliner/BelshazzarClock
Stay tuned for more experiments with Belshazzar.