Make Your Own 'Home Computer'




About: I enjoy making things - both hardware and software. I run a small company that makes the Open Source Espruino JavaScript interpreter ( as well as the R4 and Morphyre Music Visualisers...

Many of us learnt to program on a Sinclair Spectrum, Commodore 64, BBC Micro or similar - 8/16 bit Home Computers. These computers booted straight up to a command prompt and encouraged you to write code and play with them.

You can now make your own (that runs JavaScript) in a few hours using a Espruino Pico microcontroller!


  • An Espruino Pico
  • A piece of plastic of wood to act as a base
  • A Breadboard
  • 4x 4x4 KeyPads
  • Lots of Stickers
  • 40x Male->Male Dupont-style Jumper wires - a multicoloured strip of them makes life a lot easier
  • An old VGA cable


Step 1: The Keyboard

  • Stick your 4 KeyPads next to each other on your base (they're sticky-back). You may want to trim their edges down, but be careful not to trim too far or you might cut some contacts off.
  • Stick your breadboard down in the middle - it's sticky-back too!
  • Split the jumper wire into 4 lengths of 8 - try and keep the colours the same on each.
  • Stick the wires into the KeyPads, making sure the colours all match. Fold the wires back and tape them to the rear of your base. You might want to add some sticky feet to save the wires from getting bent at too much of an angle.

Step 2: Wiring

  • Now you need the extra pins on your Espruino Pico. Get some solid core wire and solder it to the 0.05" pins, checking none of them are shorted!
  • Put the Pico into the left-hand side of the breadboard, strip and place the wires as in the picture above.
  • Now you need to wire the keyboard. Do it as shown in the picture (check the colours of wires), with left to right:

    • KeyPad 1 First 4 wires -> B6,B5,B4,B3
    • KeyPad 1 Second 4 wires -> B9,B8,A8,B7
    • KeyPad 2 First 4 wires -> B6,B5,B4,B3
    • KeyPad 2 Second 4 wires -> A4,A3,A2,A1
    • KeyPad 3 First 4 wires -> B10,B13,B14,B15
    • KeyPad 3 Second 4 wires -> B9,B8,A8,B7
    • KeyPad 4 First 4 wires -> B10,B13,B14,B15
    • KeyPad 4 Second 4 wires -> A4,A3,A2,A1

Step 3: Wiring Up VGA

  • Cut an old VGA cable in half and strip out the wires. The colours of the wires will be different, so use a multimeter to work out which wire goes to which pin on the VGA cable (they're numbered in the diagram above).
  • To make connecting easier, you may want to cut up some of the left-over dupont wires you used for the keyboard and twist/solder them onto the 4 wires from the VGA connector.

Step 4: Keyboard Keys

  • Take the sticky labels and put them on all the keypad keys.
  • Label each one the way you want the keyboard. It'll be easier if you do it as in the picture above (as that's what the software is for), but if you're used to non-english keybaords and want to use different keys, go for it!

Step 5: Software

  1. Next, you need to program the Espruino Pico. Follow all the instructions at to get the Web IDE working and update the firmware to the latest version.
  2. Download the attached code file
  3. Then, in the Web IDE, click load and choose the code file. It should bring it around 100 lines of code.
  4. You'll see pretty clearly there are two sets of strings that say things like QWERTYUIOP - these are the KEYMAPLOWER and KEYMAPUPPER variables. If you used a different layout for your keyboard, put the new characters in the right order in these.
  5. Click 'Send to Espruino'
  6. When that is done type save() in the left-hand pane of the IDE. It'll save the code to Espruino and your Home computer should start working!



    • Gardening Contest

      Gardening Contest
    • Woodworking Contest

      Woodworking Contest
    • Classroom Science Contest

      Classroom Science Contest

    14 Discussions


    2 years ago



    3 years ago

    hello dude, awesome project bro


    3 years ago

    I wish I could Favorite it more than once. I was wondering if you could tell me what type of code is used to program the Espruino.

    1 reply

    Reply 3 years ago

    Thanks! You program Espruino in JavaScript - it's an interpreter, so the code you put in isn't compiled - it still exists as human-readable text in the chip, in case you need to edit it later.


    3 years ago

    It's funny, the only thing I think of when I see this is, "I wonder if I could get Doom to work on it!" Then I get really excited at the thought of re-living the 90's.


    3 years ago

    So funny, creative and astonishing piece of work at the same time.


    3 years ago

    Very, very cool. Wow! What more can I say?


    3 years ago

    Yes, definitely takes me back to ZXSpectrum and the like.

    I had not heard of the "Espruino Pico" before, I'll have to take a look.I wonder if there is a market for a zxspectrum like re-do with one of these at it's heart..........


    3 years ago

    Man this is the most rudimentary computer I have ever seen. Cool!


    Reply 3 years ago

    It's just a normal VGA monitor - it looks a bit rough because it was salvaged from something, but pretty much any VGA display should work!


    3 years ago

    Nice =D