Karate Game Mk2

posted 3 Dec 2017, 10:53 by Andy Lakin-Hall   [ updated 13 Dec 2017, 13:09 ]

Now I have a 3D printer, I thought I’d have a go at rebuilding the handheld karate game with a new smaller case. 

Case Design

I have designed the box shape in Tinkercad. It has two sections that fit together snugly. This is an early prototype for the box. I printed myself a dummy Arduino and PP3 battery that I could use for fitting without damaging anything. 


The lower section originally included a battery clip I downloaded from Thingiverse, but the clip part kept snapping off too easily. I redesigned the lower part to have a bulkhead to hold the battery in place instead.

I really want to have a 3D modelled character on the top of the box, and I want the box to be smaller to fit better in the hand. I designed the character in TinkerCAD using a flat design in Inkscape as a guide.



The karate guy on the front fitted around the switches and LEDs without needing adjustment.

When I tried to print the top of the box with the character in place, the result was not great. I don't have a heated bed on the printer, so the lower layers of the print became warped, meaning the lid wouldn't fit on the box. I could print it upside down so the lid fitted, but the top surface of the box and character became really scraggy. In the end I printed the lid and character separately.

I have smoothed and painted the character with acrylic paint, and then sealed it with several coats of varnish to give it some protection from wear.

Circuit Design

With the original version, I made the circuit with stripboard. This time I wanted to make a proper etched board. The circuit board will fit in the lid and directly support the LEDs and switches on the front panel. This give me much more room than the proto-board directly on the Arduino, so I have included the 220R resistors for the LEDs and the 10K pull-down resistors for all of the switches directly on the circuit board.

Here's the standard circuit for connecting a switch.

See https://www.arduino.cc/en/Tutorial/Button

I haven’t etched my own circuit boards for years or more! The last time I used rub-down transfers and a Dalo etch-resist pen. These days there are more sophisticated ways of doing it. The method I want to try is simple toner transfer from a laser printer page.

I exported an SVG of the lid I’d designed in Tinkercad, and imported that into Inkscape. This meant I was able to build an accurate 2D virtual model of where all the components should fit in the front panel, and where I needed to have copper tracks on the circuit board. 

I was able to position all the components on one layer of the drawing, and then draw the connections between each component and another layer. Once all the connections were in place, I went back and filled in any large areas of copper, so that all that needed etching away was space between the tracks.

I printed the circuit onto paper to gauge the size of copper board to cut. I popped to Maplin and grabbed a bit of copper board for a couple of pounds. This gave me enough for three goes at making a board.

I cut off a section of board to fit the circuit design, and then printed the circuit in reverse onto ordinary copier paper. I cleaned the board with fine abrasive and then cleaned off all the grease and fingerprints with nail-polish remover.

With the board clean, I placed the reversed print face-down against the copper and held it in place with a little tape. I used a hot iron and a sheet of baking parchment to press the design firmly against the copper. I was able to check the transfer has darken place by peeking at one corner. The board was very hot, so I had to be careful not to get a burn. 

When I was confident that the toner transfer had taken place, I then had to dissolve away the paper. The recommendation was to do this with alcohol. I didn’t have isopropanol, so I tried vodka instead; which worked quite well.

With the design transferred to the board, it was ready for etching. I bought a small bottle of ferric chloride etchant from Maplin and a flat-bottomed plastic container from Poundland. The board was immersed in the etching solution and gently agitated until the exposed copper was dissolved away. This took about 20 minutes in all. I washed off the board in a large bucket of clean water and then soaked it in a bath of nail-polish remover to help dissolve away the toner. The rest of the ferric chloride went safely back in the bottle. The nail polish remover didn’t do a great job of removing the toner, but a quick polish with a fine abrasive block cleaned everything up.

There are a couple of tracks that look like they need separating, and I will test everything with my continuity tester to identify any short circuits before drilling the holes.

First assembly

Here is the circuit board fitted in place and connected to the OrangePip.

Some of the fly-leads to the OrangePip are slightly loose, so I will need to upgrade them to improve the connection. I uploaded the software I previously created for the game into the OrangePip and powered it with a PP3

All the LEDs work, the toggle switches and sound too, but the start button doesn't work because I made a mistake on the circuit board and forgot the biasing resistor. I'll redesign the PCB for the next iteration, but for this one I will try to put in some fly leads to work round the problem.