Matrix Orbital compatible display controller for M50530-LCDs

I got hand on some quite large LCDs (40x3) which use the Mitsubishi M50530 as controller. Since this controller is not HD44780-compatible it is not supported by the WinAMP LCDplugin. At least I found a data-sheet for this controller, so I started to think about how to "fix this". :-)

Matrix Orbital have designed LCDs which can be controlled via a serial (RS-232) interface. Luckily also the WinAMP LCDplugin supports this de-facto standard: They simply write every character received on RS-232 to the LCD except for ASCII-code 254 which is interpreted as command-flag followed by one or more bytes defining the command. See their web-site for details.

Using again an Atmel AT90S2313 and Bascom it was not very difficult to build some kind of "emulator" which is able to simluate a Matrix Orbital compatible LCD to WinAMP and controls the 40x3 M50530 LCD display. As I'm rather lazy I only implemented commands needed by WinAMP and not all of those featured by Matrix Orbital. Feel free to expand it yourself :-)

I made a small PCB including a primitive step-up-converter from 5 V to 12 V since the M50530-LCD needs 10 to 13 V contrast voltage and I wanted it to run from 5 V because I power the LCD from the PC's USB ports. An archive containing scheme, PCB, source code and a HEX-file is waiting for download here. Again you're free to use it for non-commercial purposes as long as you give credits in your source.

Please note: The WinAMP LCDplugin seems to be buggy when it comes to outputting custom characters on Matrix Ortibal displays via the %c macro. At least I checked my sources over and over and came to this conclusion. The plugin simply addresses the custom characters in a wrong way: Character number n in the plugin is character number n+1 at the display. If anyone finds a mistake in my source it would be nice to hear from him :-) ... I gave it up since it is not very important for me.