I can't stop building clocks... This time with a VFD display and a subwoofer! - Page 1
Forum section: electronics / projects

author: akasaka
author_rank: Regular Contributor
timestamp: October 23, 2024, 02:11:14 pm
content: So a while ago I've posted about a big plasma display and a clock I've built out of it here on the forum.Lo and behold, a few optimizations to the firmware ended up making it somewhat more modular and made adding support for new displays much easier (as long as they're 16px tall). I've added support for the Winstar/Vishay WS0010 to make a tabletop devkit instead of lugging around the big chunk of glass and called it a day.Until... fast forward to a week ago, and I'm in Osaka for a live event, Hatsune Miku Magical Mirai. Of course, I headed to Kyouritsu Digit near Nipponbashi, which is like a parts shop from heaven. And among other things, one small display case tucked away in a dusty corner caught my eye:Then I went on a trip to Nishinomiya, then back, and the thing was still worming around my mind, so I came to Digit again and asked to show me the two last 16px tall display evaluation kits they've had in stock. Some head swinging between the two and checking my credit later, I end up buying bothThose are the Noritake ITRON GU-112x16-7000 and GU-140x16-7000 evaluation kits, which is a fancy name for an acrylic stand with a bunch of screws, datasheet CD and a power supply included with the part itself. For 10k yen apiece, not a bad deal I think.It also got me into a somewhat insightful conversation with a friend of mine, who said "Noritake... I thought they only make cutlery and plates and all that!". Well huh, I've always thought they specialize on vacuum tubes and displays. The more you know!One of the CDs was rotten and the testing tool in the other one was written in Excel 98 macros, so that didn't fly, but at least the datasheets came in handy!Then I also did my first order at JLC PCB, to avoid the dread of having to perfboard a few dozen connections again. Needless to say I had to do a perfboard worth of bodges on them later down the line anyway, and in hindsight going with SMD would have made things so much smaller:Quick run to the Daiso next door to buy a small transparent box, a bunch of cutting and drilling ensued, and the first prototype was working in roughly an evening's worth of time. The driver wasn't very complicated either, and most of the debugging time was spent realizing I can't do fast enough communication without getting the BUSY line back to the MCU properly, and all sorts of my own typosIt's now available as part of PIS-OS:https://github.com/vladkorotnev/plasma-clock/blob/develop/src/display/gu7000.cppMore drilling and bodge wires to add a light sensor, as well as a motion sensor for saving the display runtime when nobody is watching and implementing the smart wake up in the alarm. The Panasonic PaPIRs series is extremely tiny (10mm diameter and about 20mm depth including leads), and comes in black, which made it perfect for this project. Some sticky button tops coated with glow in the dark green paint matching the filtered color of the VFD perfectly. And the hardware is done!Well, not the most beautiful of the backsides I'm sureand all the labels are in Russian because that'll go to a long time friend over there who has also always been a fan of the ITRON displays and VFDs in general.However, the most eagle eyed of you have probably spotted a silhouette of a Taptic Engine inside — that linear motor based vibrator out of an averagely recent iPhone. And now, you might wonder what its purpose is.Originally, I wanted the clock to tick not just through the piezo speaker, but also tactile, as if something mechanical is present inside when you pick it up. I had one of those Taptic Engines lying around and just wiring into the test pads on its bottom I was able to get this done. However, this is not theonlypurpose of it.Not like the ESP32 has no DAC or something, but that would be boring. So instead I synthesize 1-bit chiptunes right on the chip, writing covers of tracks akin to those you might have heard on the ZX Spectrum 48K back in the day :-)Like, give those a listen (turn down your volume!! If you're not used to 1-bit music your eyes may bleed, consider yourself warned):*https://soundcloud.com/vladkorotnev/pinocchiop-god-ish-1-bit(Rendition of PinocchioP — God-ish)*https://soundcloud.com/vladkorotnev/omega-en-elmegyek-pis-os(OMEGA — Én elmegyek, the maestro's of 70s progressive!)*https://soundcloud.com/vladkorotnev/emon-shake-it-pis-os(emon — shake it!)*https://soundcloud.com/vladkorotnev/kotoko-re-sublimity-pis-os-1(KOTOKO — Re-sublimity, that one pop song that sounds like someone played a proper Amiga module on the radio by accident)*https://github.com/vladkorotnev/plasma-clock/blob/develop/docs/rec/stars.mp3(Roxette — Stars)*https://github.com/vladkorotnev/plasma-clock/blob/develop/docs/rec/stasis.mp3(Minamotoya — Stasis)While they do have the higher pitched parts that reproduce fine on a piezo buzzer, they also have quite some bass to them, which on the piezo just ends up being a fart noise without much meaning.And that is where I discover an unintended feature of having that Taptic in there. Since it's perpendicular to the table, and the feet are some solid resin, it transfers the vibration very well to the nightstand/table/whatever surface you have the clock on.And because I didn't use a separate output on the MCU for it and just wired it to another buffer on the buzzer line... the Taptic also plays the melody. Thus, once you set the clock on a desk, the buzzer plays the higher pitches, and the taptic, through your desk, plays the bassline.In the end, it's a clock with a VFD display and a SUBWOOFER! When's been the last time you've seen something like that, heh? ;-)

author: RoGeorge
author_rank: Super Contributor
timestamp: October 23, 2024, 06:54:31 pm
content: Funny build!Since it's for a friend, make the clock to play anime soundtracks at 3 AM. Not every night, only once a month or so, and at a random date each time.

author: akasaka
author_rank: Regular Contributor
timestamp: October 23, 2024, 11:47:59 pm
content: Thanks George!Given the friend is a developer too I am pretty sure the first thing he'll do is flash the firmware from the public source code just to avoid this kind of thing!However it also has a voice synthesizer in it (AquesTalk — pretty damn impressive thing for a few KB of flash and just 512B of RAM!), so maybe I can hide a funny phrase or two somewhere