A Science Project: Bringing the Covox Speech Thing to 2017

Reading Time: 9 minutes

The Covox Speech Thing (CST) was a sound card released in 1986 by Covox, Inc to enable computers with parallel ports to have sound capability. Unlike modern machines, proper sound support was not a given on computers in that era and the Soundblaster by Creative has yet to be released.

As you will see later, the design is rather simple so I decided to revisit this old piece of hardware and see if it is possible to get it working on modern systems.

My remake of the Covox Speech Thing with a self-wrote media player software.

Video of everything in action

Video of the talk I gave about this subject at Hackware v2.6.

Slides of the talk I gave

If you are in a hurry to obtain the raw schematics and code, everything can be found in the following links.

Verified designs: Media player code, pure Covox clone, Covox clone with amplifier

Untested work: USB to 8-bit adapter, Covox clone with amplifier and USB 8-bit adapter


A Science Project: Windows for Workgroups 3.11 on vintage and modern hardware in 2016

Reading Time: 23 minutes

(This is a long 5600+ words post, I recommend reading this from a tablet or computer)

Windows for Workgroups 3.11 (WFW3.11) was an operating system (OS) released by Microsoft in August 1993 and ended support in December 2001. It is part of a series of OSes released by Microsoft at that time so it is common for people to refer to it as part of Windows 3.1x (Win3.1). The specific history behind its name and version number and be found on its Wikipedia article. Here is a brief list of first-impressions I have if I were to describe this OS.

  1. First Windows OS to have practical (installable) networking capabilities
  2. Last one to not have a Start Menu and legacy interface before Windows 95
  3. Last OS to require DOS as an initial install
  4. Last 16-bit OS


Here is a teaser screenshot showing that I managed to get WFW3.11 installed on a “modern” 2009 Thinkpad T400 with networking capabilities. Recognise some familiar applications there?

My talk on this subject

I gave a talk on this project at Hackware v2.2 on 7 September. Here are the slides and video.

Demo video

About 8 minutes of video for the vintage computing buffs. This shows the results of my work.

Why install WFW3.11?


(Partial) Reverse Engineering the NDP 2016 LED Wristband

Reading Time: 5 minutes

(Checkout the 2019 version here!)

The Singapore National Day Parade (NDP 2016) happened on 9 August 2016 to celebrate its 51st birthday. For those who had the opportunity to attend the actual parade or its previews/rehearsals, they will also get to receive a funpack where one of the items will be a wearable LED band made by a company called Pixmob.


This band receives infrared(IR) signals from the organisers and then displays the LED colour of their choosing. There is also an onboard accelerometer. After the event when the IR signals disappear, the (single-axis I believe) accelerometer will cause the Red LED to light up when a shock is detected.

Here are the slides and the talk video on this subject I gave at Hackware v2.1.


Repair Kopitiam specialty electrical tools

Reading Time: 13 minutes

I’m part of this voluntary social initiative called Repair Kopitiam (RK) started by the social enterprise Sustainable Living Lab. On a monthly basis, we teach Singapore residents how to repair their household electrical appliances, fabrics and furniture. Our volunteers are called repair coaches. This initiative is similar to Repair Cafes which originated in Europe. My area of speciality is of course in the electrical appliance department.

This post is however not about the intricate details of volunteering, it will be about the special electrical tools I have developed in the course of my volunteering in response to certain unique issues faced by the RK team.

A literally high-level view of the tools I developed.


Here are the slides and video of the talk I gave at Hackware v2.0 about these tools.

The problems


Installing Windows XP on a modern unsupported (Haswell) system in 2016

Reading Time: 13 minutes

(This is a long ~2900 words post, I recommend reading this from a tablet or computer)

Windows XP is the second-longest supported operating system (OS) in Microsoft’s history. Support by Microsoft finally ended on 8 April 2014 after a record-setting 12.5 years.  The number one rank is technically* held by Windows 1.0 at 16 years from 1985 to 2001.

*I say “technically” as that was when Microsoft finally declared Win 1.0 obsolete but I doubt Microsoft was updating Win 1.0 during its final years. This was unlike WinXP which was updated up to its final moments and even had an emergency patch after its support ended.

This page here also puts XP’s length of support in perspective with other Microsoft OSes.

Released in October 2001, it is almost 15 years old today.  I was only 11 years old when this OS was released so you can imagine I pretty much spent much of my teen years using XP machines other than Red Hat Linux of course.

Despite its age, XP continues to live on in embedded systems like ATMs, factory and medical machines where replacement costs and re-certification (timelines) makes them infeasible to be replaced in the near future. An extreme example is how the 23-year-old Windows 3.1 which crashed is still used in a French airport as of late last year.

The problem

I work in a startup called Algoaccess where we deal with medical devices specifically optician-related ones. Without going into too much detail, let’s just say we occasionally have to handle such older systems and test to make sure our product can work with them. This means we actually need a Windows XP installation for testing purposes. No, virtual machines like VirtualBox or VMWare will not cut it, we need a native installation for realistic testing.

My company could easily procure a machine of an older era with full Windows XP drivers. There are guides like this where people have used an older system to install WinXP in 2016.

But where is the fun in that? I saw this as an opportunity to determine if it is really possible to install WinXP on a much newer system.  It was also a good way to relive a bit of my childhood that way.

First thoughts? It shouldn’t be that hard right? I know drivers could be an issue but it shouldn’t be a show-stopper? Turns out things are not so easy to put WinXP on modern hardware.

The machine


A photo to show that I have successfully installed WinXP on this machine abet with lots of missing drivers.

A short video for “extra proof”

The target machine is a Lenovo Ideapad U330p which was manufactured in 25 July 2014.


Raspberry Pi 3 + UART/Bluetooth issues

Reading Time: 1 minute

The new Raspberry Pi 3 released on 29 Feb 2016 has issues with its UART port as the pinout GPIO 14/15 on the pin header is now based on a low throughput mini-UART which has baud rate problems.

To understand the issue better and know how to solve them you can see the talk I gave on this issue below. Both slides and the video are attached in this post. If you are intending to use the RPi3’s Bluetooth on Arch Linux ARM, I have my instructions in a Github gist here.

Happy playing with your Raspberry Pi 3!

The Engineers.SG page for my talk can be found here.


  1. BCM2835 datasheet: https://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf
  2. Original Github issue: https://github.com/raspberrypi/firmware/issues/553
  3. “enable_uart=1” explanation by RPi Foundation Engineer Phil Elwell https://github.com/raspberrypi/firmware/issues/553#issuecomment-199486644
  4. UART DT overlays: http://www.briandorey.com/post/Raspberry-Pi-3-UART-Boot-Overlay-Part-Two
  5. Detailed DT overlays: https://github.com/raspberrypi/linux/blob/rpi-4.1.y/arch/arm/boot/dts/overlays/README
  6. Arch Linux ARM Bluetooth forum issue thread: https://archlinuxarm.org/forum/viewtopic.php?f=65&t=9961
  7. My instructions to enable Arch Linux Bluetooth: https://gist.github.com/yeokm1/d6c3ca927919c61257cd


Eagle to DIY PCB Etching

Reading Time: 7 minutes

I design Printed Circuit Boards (PCBs) as my part of my job. I also have some PCB projects outside of work with my most famous project among my peers being my PCB name card.

A major problem PCB designers like myself face is time and cost. It takes about 2 weeks (1 week if you can afford to pay much more) between the time I send a PCB design (Gerber) file to a fabricator in China to the time I receive the boards. This wait time is frustrating as my work will stall till the boards come back and I can test them. There is also a minimum order quantity of 5-10 pieces which most of the time I rarely need during the prototyping process, 1 or 2 is usually more than enough. All these including the delivery costs add up to a hefty sum as one typically has to design a few iterations before getting it right.

Is there a better way?

A friend of mine Leon Lim introduced his technique of custom PCB etching to the maker community in Singapore for quite some time now. He uses the toner transfer method, heat press and chemical etching to remove unused copper. The process is detailed by him in 2 blog posts here followed by drilling here. This whole process can be completed within 1 work day which can help speed up the number of prototype iterations before sending for mass production.

I tried out this process including screen printing on my own name card as you can see below.


The only information missing is how does one generate the relevant image files for etching from your Electronic Design Automation (EDA) software aka PCB Design Software.

This is where this blog post will come in using the Eagle software as an example.


Pulau Semakau trip

Reading Time: 6 minutes

It is not everyday that one is like a tourist in our own country. I went on a trip with my fellow Repair Kopitiam coaches and others for a practically once-in-a-lifetime experience to Pulau Semakau, an island located 8km south of the mainland. It is affectionately known as a landfill island, where our incinerated trash gets sent.

Who would have known the cleanest public area in Singapore is the landfill itself!!! What a revelation! Our guide boasted that there are no cockroaches and other pests cos there is nothing left for them to consume. I also learned that the landfill island is actually a reclaimed combination of the original Pulau Semakau and Pulau Sakeng.

Costing some SG$600 million to reclaim and build in 1990s dollars, it is probably one of the most expensive projects undertaken by the government that are outside of the public eye and concern.


A view of the outside of the main administration building and the bus that will take us on the tour.