Close
0%
0%

RETRO 1 - Home Computer Console

Modular, customisable, 3D printed, retro-style case for a home computer

Similar projects worth following
Do you remember the VIC20, the C64, the Electron and other home computers? I've wanted to build something like them for ages, but I can never find the right type of case to house them in. It would have to fit a keyboard, the computer itself and have a pleasant, sloping front, look like it's from the 80's and be affordable.
I haven't yet found a case that meets all of those criteria and I can't bring myself to butcher a vintage home computer!
So I thought I'd bite the bullet and make a 1980's looking Home Computer console, that will hopefully be useful to others too. To keep things straightforward and accessible, I decided to base it on the fabulous PicoMiteVGA "Boot to BASIC" project by Geoff Graham and Peter Mather.
Additionally, I wanted to try and get the video output to be HDMI, rather than default VGA.
Ideally, I will be able to design it to be modular such that it can be used to house other projects, boards, etc.

So, we're going to need to do some CAD, therefore we'll need some CAD software.

There are some nice free-to-use choices out there: 

  • tinkercad.com, easily accessible on the web and runs in your browser
  • Microsoft's 3D Builder, built into Windows 10 (and maybe Windows 11 too)
  • FreeCAD, a fantastic and powerful CAD tool for pretty much everything. And it is free!


We'll also need to set up our 3D printer or find an online service that will print the parts for us.

I chose to go with FreeCAD to do the design work and dig out my 10+ year old 3D printer to print it on. The Microsoft 3D Builder tool will be extremely handy to quickly view and make tweaks to the STL files, should there be any weirdness in them due to me being rubbish at CAD.

Irrespective of my choices, the final STL files which can be directly printed on most, if not all, home 3D printers will be available here: RETRO 1 - Home Computer Console

IMG_20240117_190130_325.jpg

Two colour logos by manually swapping filament part-way through the print

JPEG Image - 329.20 kB - 01/20/2024 at 18:47

Preview

IMG_20240114_152250_527.jpg

View of the RESET button, Micro-USB power connector and the SD CARD slot with SD Card in it

JPEG Image - 265.66 kB - 01/20/2024 at 18:46

Preview

IMG_20240116_163935_206.jpg

Inserting the PCB after fixing the PCB holder in place

JPEG Image - 260.16 kB - 01/20/2024 at 18:44

Preview

IMG_20240116_163344_308.jpg

Fully assembled VGA-to-HDMI adapter rear port unit

JPEG Image - 279.81 kB - 01/20/2024 at 18:39

Preview

IMG_20240114_155336_225.jpg

Fully assembled case body

JPEG Image - 200.65 kB - 01/20/2024 at 18:38

Preview

View all 8 files

View all 8 components

  • Working on adding Audio-Out circuit

    The Lab Guy02/03/2024 at 18:22 0 comments

    The MMBASIC interpreter on the PicoMiteVGA supports a couple of audio output methods as standard.

    I am currently breadboarding the various options to try and get a nice version for this project.

    The VGA-to-HDMI converter that we have used in this project also supports an audio input (possibly stereo), that it incorporates into the HDMI and sends to the monitor.

    If we can get a sensible connection to it, we then have a choice of building either on-board amplifier and speaker (like a ZX Spectrum or BBC Micro), or TV/monitor sound out (like the VIC20 or Commodore 64).

    Next update when I get a satisfactory solution.

  • CAD files now on github.com

    The Lab Guy01/26/2024 at 21:00 0 comments

    Created a repository on github.com and uploaded the my current set of files to there. Here is a link to that repository.

    the-lab-guy/retro-1-computer: CAD files for 3D printing a case for a retro 80s-style home computer project (github.com)

    They files are in the state that I was using them in, so forgive me if they look a bit messy.

    I hope to find some time to perhaps split up and organise them so they are easier to access.

  • Where / How to put the CAD files?

    The Lab Guy01/24/2024 at 17:08 0 comments

    I don't know what format or level of detail or anything about sharing CAD files, yet. Never had to do it before.

    As soon as I get some inspiration from what others have done and seems reasonable to me, I will do so  and add links to this project.

  • Removing unwanted pins from a Female PCB Header Connector

    The Lab Guy01/23/2024 at 15:20 0 comments

    Do not try to pull the wires out of the header connector on the mini-USB cable.

    Each wire is crimped into a metal receptacle, which I refer to as a pin for convenience.

    Each pin is latched into place by a tiny little "finger" of plastic, or latch.

    To remove the pins without damaging them or the connector body, proceed as follows:

    • Using a scalpel or a very small flat-bladed screwdriver, lever up by a half to one millimetre one of the latches. Do not lift higher or use excessive force.
    • While holding the latch in this position, gently pull the wire for that latch out from the header body.
    • Repeat for the rest.

    When it comes to putting the RED and BLACK wires back in, in the place we want them, push them in whilst ensuring the pin is the right up to latch into place again.

  • Keyboard Modifications

    The Lab Guy01/21/2024 at 17:16 0 comments

    The Perixx PS/2 keyboard suggested in the Parts List (PERIBOARD-409) is built to be used on desk and as such has a nice casing already.

    However, we want to put it in our custom case, where only the top will be visible.

    So, we need to :

    1. Place the keyboard face-down on a soft flat worksurface.
    2. Unscrew 11 crosshead screws from the back of the keyboard. Note that there is a screw under the "Q.C. PASSED" sticker and one more under the big "perixx" sticker, under the square-logo, to the left of the FCC symbol, near the bottom.
    3. Remove the back cover by prying open the clips located at either side, roughly in line with the TAB and ENTER keys, using a small, flat screwdriver.
    4. Get a rectangular piece of 2-3mm thick perspex / acrylic / wood, cut to approximately 30cm (1ft) long by 10cm (4in) wide. IF YOU DON'T HAVE ANY MATERIAL TO USE FOR THIS STEP then just cut out the large flat rectangular section of the keyboard back cover and skip step 5.
    5. Using the base cover of the keyboard as a guide, mark out and drill the three holes that run across the middle of the large flat area in the case, onto the perspex / acrylic / wood.
    6. Screw this prepared piece of perspex / acrylic / wood onto the back of the keyboard, such that it holds the membrane switch circuits in place, like the back used to.

    Optionally, if you have a soldering iron, etc. or some small screw terminal blocks, you can also shorten the keyboard's PS/2 cable.

    Simply cut the unwanted length of cable from between the PS/2 plug end and the keyboard controller end. Make sure to leave enough cable either side for you make the wiring connect. Maybe 15cm (6in) or so.

    Strip back the sheath and insulation from the two ends of cable and join the same coloured wires to each other, using your preferred tools / method. Be certain to use heatshrink or insulating tape to prevent short circuits between joints.

  • Nozzle Clogging Pains and Solution

    The Lab Guy01/20/2024 at 15:46 0 comments

    Having never used PLA before, I immediately noticed upon first handling that it seems rougher and drier, than ABS.

    However, as all good engineers, I ignored this fact and stormed on, on the basis that if it works for everyone else, then its bound to work for me.

    The first few test prints I did went well and so I tried printing my early case design prototypes (just coarse approximations of shape and size at this stage).

    After a couple of hours, the printer nozzle clogged and ruined the print. So I cleaned it out, following guides I found online and various YouTube videos. Then started printing again. Then it clogged and I got cleaning and then started printing again. Read this paragraph over and over whilst burning some money, several times.

    Anyway, to cut a long project log entry short, 3 weeks went past with me disassembling, re-assembling, poking, cleaning, retracting, extruding, bed-heating, extruder cooling, tweaking settings, etc, etc.

    No joy!

    So, I sat back and thought back a few weeks. It was working and now it isn't. I changed nothing but the filament material. Hmmmm. The ABS was smooth and oily, the PLA is rough and dry. Hmmmmm. What if I oil the nozzle? Will it catch fire? Will it kill me? will it dissolve the filament or the print bed? What if it just works?!?!

    The last one had me hooked. I removed the (cooled down) printer head assembly and put a drop of machine oil in the feed tube inside the head, re-assembled it and then extruded the PLA through it.

    Yes, there was some visible smoke, but the extractor dealt with that. It cleared up within a minute or so. I extruded about 2 feet out of the nozzle for no reason at all.

    Next, I tried printing my 3D models... they printed out perfect, no clogging, no residue, no staining. Perfect. 

    Fantastic, I thought. But what about when the oil dries out? So, in order to maintain this level of reliability, I have made this checklist a habit when using PLA:

    1. put a couple of drops of machine oil (mineral oil, bicycle oil, 3-in-1 oil, light oil) on a cloth or tissue
    2. trim the PLA end and rub the oil onto the first inch-or-so of the filament. Let it "soak" a little.
    3. Feed and extrude up to about a foot of filament.
    4. Print stuff without fear of nozzle clogging.
    5. withdraw the PLA when I have finished printing for the day

  • CAD Software

    The Lab Guy01/18/2024 at 21:10 0 comments

    Initial 3D printing tests were done with small objects downloaded from Thingiverse.

    Then I tried Tinkercad.com and Windows 10's built-in 3D Builder app, interchangeably, just to try and get the hang of using these tools as an easy way to get started on CAD.

    Both had their strengths and weaknesses as far as I could tell from my perspective. I would highly recommend both of these tools to anyone who is starting out in 3D printing.

    As I gained confidence, I started looking for a more complete CAD package to help me design and chop up objects to fit on my 3D printer, more easily.

    I eventually discovered FreeCAD, which would later become my tool of choice for pretty much all of this project.

  • Rejuvenating my 12 year old 3D Printer

    The Lab Guy01/18/2024 at 21:01 0 comments

    I have an old 3D printer, an UP3D mini to be specific. It has a build volume of just 10cm x 10cm x 10cm. That's pretty small by modern standards.

    Additionally, the bed-heater is fixed at 60 degrees centigrade and in it's original factory state, it only supported ABS filament because the nozzle temperature was fixed at 270 degrees centigrade (or something like that).

    Also, the ABS prints would always warp during printing and turn rather poorly, unless they were very small. :-(

    So one day not too long ago, I grabbed the latest firmware and desktop software, and got to upgrading, just for something to do.

    To my great surprise the software upgrades added the ability to adjust the nozzle temperature and added profiles for PLA filament too. Woohoo!!!

    I tried out some small test prints with PLA which came out great. So I tried some bigger prints, which also came out great and un-warped. Finally, I tried some 10cm x 10cm by 6cm prints and lo and behold they were awesome. No warping, easily removed from the print bed, no ABS stink.

    And so was born my idea to try printing something BIGGER than my printer volume.

View all 8 project logs

  • 1
    Acquire a PicoMiteVGA computer

    If you don't already have a working PicoMiteVGA lying around, then jump on ebay and search for "picomite".

    The search results should turn up multiple options for you, ranging from bare PCBs from around £10, to fully assembled and running boards for £25. Most of the lovely ebay sellers even deliver for free!

    If you want to solder on your own components or get your PCB made, hop over to Geoff's Projects - PicoMite VGA page for full details.

    Don't forget to download and flash the Raspberry Pi Pico with the PicoMiteVGA firmware.

  • 2
    Connect and Test the PicoMiteVGA

    Assuming that we have our working PicoMiteVGA, a PS/2 keyboard and a VGA to HDMI converter, let's get started.

    Make sure that the Pico is NOT connected to a USB port on your PC or powered by any other means.

    1. Plug in the PS/2 keyboard
    2. Plug in the VGA to HDMI adapter
    3. Connect a USB cable to the side of the VGA to HDMI adapter
    4. Connect an HDMI cable from the VGA to HDMI adapter to an HDMI monitor input
    5. Turn on the monitor and select the correct input, if necessary
    6. Power on the VGA to HDMI adapter
    7. Power on the PicoMiteVGA

    If all is good, you will see the keyboard LEDs blink and then settle on NUMLOCK and the PicoMite VGA BASIC banner and a blinking cursor on your HDMI monitor!

    If you get nothing, you could try:

    • Connect the PicoMiteVGA video output directly to a VGA monitor
    • Try a different HDMI monitor or TV
    • Power off and then power on the Raspberry Pi Pico
  • 3
    3D Printing the case parts

    Retro Style Home Computer Case by thelabguy - Thingiverse

    https://www.thingiverse.com/thing:6444015

    Assuming that you have the same keyboard as me, the easiest thing to do will be to download the STL files from Thingiverse, using the link above and send them to your printer.

    Remember to print off enough "pegs" to align and join all the pieces to each other. 

    I printed the case body parts in their horizontal orientation, with the top surface horizontal and the ramp at the bottom sloping up, AWAY from the print bed. This meant that the top of my retro home computer had a nice smooth finish, and the ramp underneath had the nasty 'stepping' effect when printing shallow slopes, which I preferred hidden.

    For me printing at 0.25mm per layer worked fine and the final print quality was acceptable. I switched to this from the default 0.20mm per layer because it saves hours of printing time. But there's no need to fiddle with settings on your printer if you'd rather not.

    I printed the PCB holder and rear ports in black because that reminded me of how old home computers used to look.

View all 9 instructions

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates