[Usagi Electric] and his home brew computer

TMS9900-based Home Brew Computer

[Usagi Electric] is known for minicomputers, but in a recent video, he shows off his TMS9900-based homebrew computer. The TMS9900 CPU was an early 16-bit CPU famously used in the old TI-99/4A computer, but as the video points out, it wasn’t put to particularly good use in the TI-99/4A because its RAM was hidden behind an inefficient interface and it didn’t leverage its 16-bit address space.

The plan is for this computer to have 2K words of ROM, 6K words of RAM, and three serial lines: one for the console terminal, another for a second user console terminal, and the third for access to a tape drive.

Continue reading “TMS9900-based Home Brew Computer”

Reverse Engineering The Miele Diagnostic Interface

The infrared transceiver installed on the washing machine. (Credit: Severin)
The infrared transceiver installed on the washing machine. (Credit: Severin)

Since modern household appliances now have an MCU inside, they often have a diagnostic interface and — sometimes — more. Case in point: Miele washing machines, like the one that [Severin] recently fixed, leading to the firmware becoming unhappy and refusing to work. This fortunately turned out to be recoverable by clearing the MCU’s fault memory, but if you’re unlucky, you will have to recalibrate the machine, which requires very special and proprietary software.

Naturally, this led [Severin] down the path of investigating how exactly the Miele Diagnostic Utility (MDU) and the Program Correction (PC) interface communicate. Interestingly, the PC interface uses an infrared LED/receiver combination that’s often combined with a status LED, as indicated by a ‘PC’ symbol. This interface uses the well-known IrDA standard, but [Severin] still had to track down the serial protocol.

Continue reading “Reverse Engineering The Miele Diagnostic Interface”