What should I do with a free Velleman MK158 kit?

Last week when I met up with some other local makers, there was a box of strange kits on the table, surplus to requirements, offered for anyone who could think of something interesting to make with the bits. I grabbed one, as much for curiosity as anything else, and I have now had a look in more detail.

Velleman MK158 parts

Each kit is a Velleman MK158, intended to make a somewhat ugly single-line display module. It seems these kits are no longer produced, but they do have a selection of possibly interesting bits inside.

The display is a GDM1601C module, rev 2.0, made in China in 2001. The datasheet indicates that it has a KS0066U display controller (or equivalent). A quick scan of that datasheet looks as if it implements a fairly familiar protocol, so the display should be fairly easily re-used.

The “brains” of the kit is a PIC16F630 with 1024 words of flash, 64 bytes of SRAM, and 128 bytes of EEPROM, 12 digital I/O pins, 1 comparator and two timers (one 8-bit and one 16-bit). This is not very meaty compared even to the smaller Atmel Microcontrollers I have been playing with, but it’s obviously capable of some useful stuff.

The rest of the components include the slightly ugly case, a PCB, a socket for the PIC, some screw terminals, long-stemmed push buttons, a small 7805 regulator, some BC547C transistors, a 5V zener, a 1N4007 diode, a 1KOhm trimmer and a bunch of resistors and capacitors (including twelve “zero ohm” resistors – essentially just some lengths of component lead).

All of these seem like common and potentially useful components. Even the PCB would do OK to power up the PIC and bring out its pins to a variety of connection points.

However, I can’t think at the moment of anything, interesting, clever, or even funny to do with it or with some of its bits. So I’m open to suggestions. Any ideas?


  1. The first thought that comes to mind would be implementing a (possibly low-speed bit-banged) UART over the IO pins, and have the LCD display messages sent to it over serial from the Raspberry Pi?
    (or with 12 IOs available you could even implement a simple ‘parallel’ interface)

    Or you could re-implement your “learning countdown timer” with a more fancy text-based countdown interface?

  2. I intend to use MK158 as the display of an openwrt wifi radio, to show which station is playing, then what time it is and what temperature is inside the room (having a TEMPer USB sensor for temperature).

Leave a Reply

Your email address will not be published. Required fields are marked *