It was a long & hard process between 1 month of commutes, but Heroineclock I was finally shut down after 13 years of blinking & replaced by a much better Heroineclock II, factoring in much more experience.
All the Chinese options which appeared in the last 13 years were studied & found to be too expensive. The largest Chinese digits were 12" tall & $50. EL wire would cost a fortune. Projectors were too dim & small. Superbright red LEDs had dropped from 22c to 15c & become much brighter.
With the new experience, power consumption dropped from over 20W for Heroineclock I to 7W, yet light output increased greatly. The audio synthesizer was much more sophisticated, with 3 square wave oscillators & decay timing. The clockspeed was increased from 20Mhz to 40Mhz to allow the improved audio. The new speaker driver was a real PWM driven class D with the 0 crossing at 50% duty cycle. The speaker brought the total current with all the LEDs & sound to 0.6A.
The flaky buttons & switches which plagued Heroineclock I were replaced with an IR remote. It was a 1st experience decoding an IR remote & it revealed IR receivers don't output RS232 but PWM. The IR decoding ended up really schmick for it to handle the rapid button presses involved in setting a clock. Modern LCD TV's have horribly slow IR parsing, in comparison.
The shift registers which drove Heroineclock I's LEDs were replaced by direct wiring to 1 GPIO per segment. A PIC18F6585 replaced the old PIC16F877. It had a massive number of pins, but only enough actively driven GPIOs for 27 segments. Instead of PNP transistors, the LEDs were driven by NPN's, allowing higher voltage. Instead of wiring the LEDs in parallel with massive amounts of current supplied to 2.5V bus lines, they were now 5 in series with 10V bus lines. The total current with all LEDs on was now 0.5A instead of 10A.
There's a small program to convert MIDI files into data tables for the clock to play back. For the simple clock chimes, it was easier just to enter the data tables manually. Having infinite note length & relying on the software decay made a more pleasing sound than having a defined note length.
For all the improved electronics, the whole thing could have been done much more easily with a raspberry pi playing mp3 audio. But the PIC would still have been necessary for multiplexing the LEDs & it was cheaper to leave out the additional raspberry pi. It was still a bit satisfying to use in a practical, modern application, a retro 8 bit platform with the kind of massive PLCC package that adorned high end electronics, 30 years ago.
Source code for Heroineclock II & thermometers: