How to resurrect an 80’s Hitachi MX-W01 CD Slimline System

Motto: “If you buy a quality product, you don’t need to replace it every 35 years.”

Hitachi MX-W01 original japanese ad

I bought the Hitachi MX-W01 CD Slimline System in 1986, that is, 35 years ago. It was my first proper stereo system, and so far, the only one… I used the receiver/player itself from the 80’s up to about 2011, when I put it in storage. However, the original speakers weren’t up to my standards neither by the look nor the sound quality; after an year of use I sold them to my younger stepbrother and replaced them with a pair of KEF C55 speakers. I wish I still had those, they were very good for 80’s speakers.

Back when I finally stopped using the Hitachi, it had three major issues:

  1. The radio station memory system was practically dead, it lost all stations after just 2-3 hours of power-off. When new, the stations stayed in the memory for almost two weeks without the device being powered up.
  2. There was an intermittent bad connection somewhere; I had to occasionally slam the deck to make the CD-player to wake up.
  3. For the last ~10 years of use it was situated so that before noon the sun was able to shine on it at full force, so it started gradually turning yellow.

A few weeks ago I decided to try to refurbish/resurrect the dear old Hitachi. Here’s how it went:

  1. There’s no battery in the radio memory system, but instead a large (2200 µF 6.3v) electrolytic capacitor combined with a diode, thus giving the radio circuit enough power to keep its memory working when the rest of the device is powered down. That capacitor’s electrolyte had obviously dried out during the 25 years of use. The capacitor replacement was easy enough, the original was replaced with a physically equal sized, but electrically larger 3300 µF 10v capacitor.
    (Note: The radio stations’ ‘stay-in-memory’-time is still not very long, just a few days; I suppose there’s some minor leakage current somewhere. Maybe I should have replaced the diode, too?)

    Radio/display board

    The memory capacitor is the big black cylinder in the middle.

  2. The bad connection issue fixed itself while I removed and refitted the radio/display board for capacitor replacement. Also, all the other switches & connectors I could reach without dismantling the device completely were disconnected/reconnected and cleaned out with PRF Contact Cleaner.
  3. The plastic covers/housings and other parts of most electronic devices made since the 60’s are usually made of ABS plastic. In pure form ABS burns quite easily, which is bad news safety-wise. For that reason a flame-retardant chemical (bromide or equivalent) is being added to the plastic… but that chemically-treated plastic has a nasty habit of turning yellow-brown over time when exposed to ultraviolet radiation from the sun.

    So much sickly yellow on these dismantled MX-W01 parts… Not nice.

    Ugly yellow
    Fortunately, at some point someone noticed that hydrogen peroxide (H₂O₂) has the power of reversing the yellowing process. That phenomenon has been utilized in the famous “retr0bright” process, However, I didn’t feel like sourcing and mixing the chemicals myself, so I used the second best option from a local supermarket: a hair color removing product “Garnier Nutrisse Truly Blond – Bleach Maximum Lightener L+++“, which of course also contains hydrogen peroxide. Other similar products may work equally well. If you have a choice, choose the strongest possible “blonding” agent.

    Now I’ll give the usage instructions of that “blonding” agent: Disassemble every part you are going to bleach (especially remember to remove every metal part, hydrogen peroxide will damage them). Clean the parts thoroghly with normal cleaning methods to remove grease etc. and then let dry. Refer to the package instructions of mixing the blonding agent paste. Apply the paste to the part with a brush to create an even ~1mm layer and IMMEDIATELY wrap it in a piece of plastic wrap film to prevent the paste from drying. Repeat with every part. Work fast because the hydrogen peroxide keeps evaporating from the paste. When all parts are wrapped up check that the paste is evenly spread under the film and fix if necessary. Leave them to be for 24 hours, if possible under a constantly burning plant lamp or a fluorescent lamp. (It may seem counter-productive, but in this case a little UV light helps hydrogen peroxide to do its job.) After the parts are ready remove the film and wash the parts in warm water. Let dry and reassemble. You’re done…

    MX-W01 parts under wraps… literally.

    Wrapped up parts with hydrogen peroxide paste
    With the MX-W01 parts the abovementioned process worked almost perfectly. The white body was completely back to its original, slightly pearl-white shade. In some of the grey parts they were still very slight darker areas, but you need to know where to look to notice them in the finished product. Maybe the paste layer wasn’t even enough, or the time of 18 hours I used wasn’t long enough… Cannot say for sure.

    Here’s the Hitachi MX-W01 in all its glory looking like a new deck, instead of a 35 year old! And everything is working, including the radio station memory and that wonderfully bright and clear VFD (vacuum fluorescent) display. It is a shame that manufacturers stopped using VFDs after the 80’s, instead opting for the clumsy and ugly, but cheaper and less power-hungry LCD technology.
    The sound goes from the 6.3mm headphone jack via an analog mixer to the Alesis M1 620 active studio monitors.

    Resurrected Hitachi MX-W01 CD Slimline System

Posted in Music | Tagged , , , | Comments Off on How to resurrect an 80’s Hitachi MX-W01 CD Slimline System

Useful snippets #5: GTK3 dark theme with Firefox

A long-standing problem with Firefox on Linux, when an user is using a dark GTK3 theme like Adwaita:dark, is the “bleeding” of the desktop colors to the actual web page. Because almost all web developers assume that everyone is using a light theme anyway, that “bleeding” can in some cases cause the web page to become unusable, and in any case it looks ugly.

There’s a widget.content.gtk-theme-override setting in about:config, which is supposed to fix the issue, but I’ve never managed to make it work on any Firefox version.

However, I noticed almost accidentally that, if firefox is started for example with a script

  1. #!/bin/bash
  2. GTK_THEME=
  3. firefox

then the “bleeding” does not happen. It seems that when the GTK3 theme-defining environment variable GTK_THEME is an empty string, Firefox get confused and defaults to the light theme on web pages, but the UI still respects the gtk-application-prefer-dark-theme = 1 setting in ~/.config/gtk-3.0/settings.ini.

Posted in Linux | Tagged , , | Comments Off on Useful snippets #5: GTK3 dark theme with Firefox

Light in a Box

Added a lightbox plugin to the site for easier viewing of the pictures. Should have done that years ago…

Posted in Uncategorized | Tagged , | Comments Off on Light in a Box

Useful snippets #4: setting Firefox background color in new tabs

When someone is using a dark(ish) desktop theme on Linux, it is very annoying when Firefox, while opening a new tab or window, slaps you in the face with a blindingly bright white page. But fear not, there are ways to counterattack!

It is easy to change the default background color for all pages by editing the property browser.display.background_color in about:config. However, this approach can cause serious problems on some websites; in the worst case you could end up with black fonts on a black background. It is quite surprising to notice how many websites actually leave the background color undefined; they could fix it very easily by just adding

background-color: #ffffff;

to the main css file. But even big media companies like BBC fail at this miserably…

The better way to counter the white flash would be to define the background color just for the new tabs and windows. The simplest way to do it is using a userContent.css file:

  1. Enable toolkit.legacyUserProfileCustomizations.stylesheets in about:config
  2. Create in ~/.mozilla/firefox/<yourprofile>/chrome/ a file named userContent.css with the following content:

    1. @-moz-document url-prefix(about:newtab), url-prefix(about:blank), url-prefix(about:home) {
    2. body { background-color: #073642 !important; }
    3. }
    4. .browserContainer {
    5. background-color: #073642 !important;
    6. }

    Defining just the about:newtab did not seem to work everywhere, so I took a belt-and-braces approach and forced the new color to everything I could think of.

  3. Restart Firefox.
Posted in Linux | Tagged , , | Comments Off on Useful snippets #4: setting Firefox background color in new tabs

EspoTek Labrador USB board on Raspberry Pi 4


EspoTek’s Labrador is an excellent single board, all-in-one USB oscilloscope / signal generator / power supply / logic analyzer / multimeter with a cross-platform Qt5-based GUI frontend. It is especially useful for use with Raspberry Pi-series computers. It works out of the box on RPi3 and earlier models, but unfortunately, as-shipped, RPi4 has a firmware bug which prevents Labrador from working.
To fix the unfortunate situation, you need to update the RPi4’s firmware to the latest version with a tool called rpi-eeprom.

  1. Make sure your system is up-to-date, and install rpi-eeprom.
  2. Change FIRMWARE_RELEASE_STATUS="critical" to "stable" in /etc/default/rpi-eeprom-update.
  3. Run rpi-eeprom-update to check the status of the firmware. The result should look somewhat like this:

    BCM2711 detected
    Dedicated VL805 EEPROM detected
    BOOTLOADER: up-to-date
    CURRENT: to 3.9.2020 12.11.43 +0000 (1599135103)
     LATEST: to 3.9.2020 12.11.43 +0000 (1599135103)
     FW DIR: /lib/firmware/raspberrypi/bootloader/stable
    VL805: up-to-date
    CURRENT: 000138a1
     LATEST: 000138a1

    The current VL805 firmware version is the important one here, if it is older than 000138a1, you have to update the firmware.

  4. The actual update happens when you then run rpi-eeprom-update with the -d switch (i.e. rpi-eeprom-update -d). The new firmware binaries are loaded during the following reboot. Ensure that the update was succesful by checking again with rpi-eeprom-update after rebooting.


For Arch Linux / Arch Linux ARM users:

I uploaded a Git version of Labrador GUI for Arch Linux to AUR. It supports 32-bit and 64-bit x86 architecture and several ARM versions (armv6h, armv7h, aarch64).

Posted in Linux | Tagged , , , | 1 Comment