[Fran] has been curious about the innards of Tivoli Audio’s Model One radio, but was reluctant to shell out $200 just to tear it apart. But she found one recently on eBay, won the auction, and proceeded to do a review and teardown. Spoiler alert, she was disappointed.
Physically speaking, the radio looks great and has quite an array of I/O connections. The geared tuning knob looks cool, but is heavily damped which [Fran] isn’t keen about. Turning it on, a few more quirks are discovered. The volume control is out-of-whack — it appears they substituted a linear taper potentiometer where a logarithmic taper was called for.
Another problem, at least in the RF-dense metropolitan areas like Philadelphia, is the FM tuner’s station-lock feature. It is so strong that it can be impossible to tune in weak stations. This is especially ironic since, according to Wikipedia, that was one of audio engineer Henry Kloss’s main goals when founding Tivoli Audio back in 2000:
Their first product was the Model One, a simple to use mid-century modern designed table top radio with a high-performance tuner, receiving FM radio in congested urban locations, while maintaining the ability to pick out distant or low power stations. Kloss had noted that the mid 60’s wave of Japanese radios lacked the ability to receive FM stations in congested locations, and this became a defining goal of his radio designs throughout his career.
Interestingly, many folks in the YouTube comments say their Model One radios have none of these issues. We wonder if [Fran] has obtained a damaged radio, or maybe a newer version produced with less attention to detail. If you have a broken Model One radio, before tossing it, consider the hack we wrote about last year, turning it into an internet radio.









[tomek] was aware of this hip knowledge domain called Digital Signal Processing but hadn’t done any of it themselves. Like many algorithmic problems the first step was to figure out the fastest way to bolt together a prototype to prove a given technique worked. We were as surprised as [tomek] by how simple this turned out to be. Fundamentally it required a single function – cross-correlation – to measure the similarity of two data samples (audio files in this case). And it turns out that
At this point all that was left was packaging it all into a one click tool to listen to the radio without loading an entire analysis package. Conveniently Octave is open source software, so [tomek] was able to dig through its sources until they found the bones of the critical xcorr() function. [tomek] adapted their code to pour the audio into a circular buffer in order to use an existing Java FFT library, and the magic was done. Piping the stream out of ffmpeg and into the ad detector yielded events when the given ad jingle samples were detected.