Feeds:
Posts
Comments

Archive for the ‘Media/Anime/Games’ Category

Building the NESPoise

UPDATE: The NESPoise will go on sale as the Rabbit Engineering Model G1 starting November 1, 2014 – see the product page for details.

Click on any image for a full-size view.

Meet the NESPoise – a posable, desktop NES clone arcade machine. I’m very happy with how this machine turned out – especially the industrial design aspect. So how did this thing come to be? Well, I had a bunch of leftover parts from a couple of projects, and decided to use them up – an arcade stick plus buttons, and a whole Retrobit RES – these little NES clones are fantastic for modding into other projects. The answer was obvious – time to make a mini desktop NES arcade machine (well, it seemed obvious at the time).

If I was to make a desktop (i.e. non-portable) machine, I decided to go for a large screen – 7″. I found a car DVD screen that runs on between 8.5V and 13V on Amazon for about $40 – better not fry it. You can set 4:3 or 16:9 aspect ratio on it with a little wireless remote; I happen to like 16:9 so that’s what’s shown in the pictures. Then I did some sketches. First idea was a traditional arcade machine shape:

Here is an OpenSCAD test:

Let’s face it, that is pretty boring, and due to the constraints of having to insert the NES cartridge, is a little wide at the bottom. Plus – big problem – the viewing angles of these car screens is not great, so you would have to scrunch down in front of it to see all the colours properly (I noticed this problem on the NESPo, but there it didn’t matter because you hold the entire device up to your face).

Then while sitting at the Portland Retro Gaming Expo (while manning the booth for the Seattle Retro Gaming Expo – represent!) I though, hey, why not go crazy and do a cylindrical NES arcade machine? It opens like an old jewelry box, and has the screen on the inside of the top half, and the controls on the bottom half. Moral of the story – always take a sketchbook with you, you never know when inspiration will strike:

In terms of pure design, it was interesting, but hard to pull off – lots of hinges and springs that would reduce the chances of success a little too much. So back to the sketchbook. While sitting at my desk and looking at my lamp, I was reminded of the traditional 1930s British Anglepoise lamp (designed by George Carwardine, who was actually a car suspension designer), which I have always liked. This lamp allows you to pose the head any way you need, while maintaining the angle by use of counter-tension in the parallelogram shaped lower arm:

Americans often mistake this as a Luxo lamp; but Luxo lamps are actually a licensed and modified design by Swede Jacob Jacobsen – you can tell a Luxo from an Anglepoise because Luxo has  parallelograms both above and below the elbow, while Angleposie has one below the elbow only.

So what about a NES arcade that is based on the Anglepoise concept? It would allow you to angle the screen as you need, and would definitely have a cool mid-century retro look (let’s face it, the NES-001 was basically a plastic brick, and could do with a makeover). Some more sketches:

This was looking very promising, so time to hit OpenSCAD to see if all the pieces would work.

It would be a multi material project – the black parts would be black 3D printed PLA, while the red parts would be varnished luaun plywood, to give it that great woodgrain VCS style retro look. The arcade buttons and stick top would also be black.

Now to worry about the design. It’s actually two design problems – the arm which must be adjustable but capable of holding up the weight of the screen, and the base which must enclose all the electronics and provide a stable cartridge slot. I spent a fairly long time on design, because I learned with the NESPo that you can save a lot of time, frustration and material by simply reviewing part fit more carefully in OpenSCAD before printing. It really paid off – I only had to redesign one piece, and that was a fairly small one. All of my multi-hour prints were correct the first time. Here are some of the almost final OpenSCAD views:

The arm and screen casing

Unlike the traditional Anglepoise design, I opted to not use a sprung parallelogram at all – that’s fairly complex, and really best done in metal. So I took a chance that I could generate enough friction using a threaded rod and nut. I printed a cylinder that housed a nut, and the two of these compress the arms against a central cylinder. Turns out this generated more than enough friction to hold the weight of the screen in place.

The screen casing itself is fairly straightforward – a rounded box with internal bracing to hold everything in place.

The screen casing is the largest single piece I’ve printed yet – it took up most of the Replicator’s print surface, and took around five and a half hours. People generally warn against printing large pieces as they warp and shrink, and while I did get a little shrinking on one of the corners, the piece cane out pretty well.

Once the casing was printed, I cut a frame from luaun plywood on the CnC router. This traps the actual screen in place, and gives the casing a lot of torsional strength.

Here is the weight carrying test of the arm:

And of course, testing to ensure I didn’t kill the screen while putting it in the case:

The base

This was the complex part in terms of printing – to begin with, in order to fit both the arcade stick and the NES cartridge, the body would be too large to print as one piece. So while designing for structural strength, enclosing all the bits, and being easy to assemble, I had to figure out a way to split it into sub-assemblies that could be glued without creating ugly seams.

Here is ultimately what I came up with: A five part base. The front of the machine would be a single piece so that there is no glue seam facing the player. The sides and back are four parts. The reason for having four parts is to ensure that the cartridge slot prints correctly (avoiding overhangs, etc). Here are some exploded views of the base:

All those holes in the cross wall reduce the amount of plastic used in the print, but also (more importantly) allowing easy assembly to enabling the threading cables through between the front and back halves of the base.

The five parts took about fourteen hours total to print. After my good experience with Zen Toolworks white PLA on the NESPo, I decide to use their black PLA for the base, and it did not disappoint. It’s a very deep black, only a little shiny, and the spool did not give any feed issues during the long prints. Here is the front piece of the body, fresh out of the printer after five hours:

In case you are wondering, I use an aluminium print plate with blue painter’s tape, and regular L’Oreal hairspray. Using all this and leveling the print plate after every large assembly gives me great adhesion during prints. Here are the rest of the body parts:

Once all five parts (and gluing reinforcements) were printed, it was time for a dry fit – just stack/balance the parts to ensure they fit together. This will let you know if any of your parts are too distorted/shrunk to glue. Happily, all five were just fine.

Then the nerve wracking bit – gluing all the pieces together. This carries two risks – one is that you misalign something while gluing (meaning you need to reprint, as superglue makes an inseparable bond between PLA parts); and the other risk is that superglue fumes will cloud up the beautiful deep black color of the PLA parts while setting (superglue gives off fumes while setting that will leave a milky residue on whatever they land). By careful clamping and correct ventilation I managed to avoid both of these pitfalls.

At this point I cut the top and bottom decks of the body on the CnC router. The top was luaun plywood (to match the screen casing), and the bottom was MDF. The plywood was given eight coats of satin varnish, while the bottom was sprayed matte black. At this point, I could assemble the entire case and test the fit of everything together before moving to assembling the electronics. It is very important to test as you build, so you can catch errors/bugs as early as possible.

Once everything lined up, I tapped all the holes in the case to allow the #6 screws to close the whole thing up. Tapping is fairly boring, so I spent the time listening to Seattle band Cumulus – it’s good modding music.

First step in assembling the electronics was removing the Retrobit RES from it’s case, and adding enough ribbon cables/connectors to allow me to move things to where I needed them. Once this was done (but before assembly in the base) I tested all the electronics to ensure I hadn’t missed or broken anything. The only thing I modded in the electronics was to replace the Retrobit voltage regulator with a beefy 7805 on a nice big heatsink. And of course, the power LED was replaced with a logo light, similar to that in the NESPo (more on this baby later).

Actual assembly was done in layers. The reason for this is that there are a lot of cables inside the body, and you want a nice, tangle-proof channel for the cartridge to slide into the connector – it would be extremely annoying to have to deal with the cart getting snagged with cables. This kind of thing makes the difference between a cool thing hacked together, and a device designed with the user’s experience as first priority. Everything should be smooth and trouble free, from the feel of the buttons, to inserting the cart, to having the controls nicely spaced out; the user wants a great end-to-end experience with every aspect of your device.

Here is layer 0, which has most of the electronics attached to the base (with hot glue, of course!):

Then above that is layer 1, which is the bottom of the cartridge channel, and the Retrobit NES main board (with the cartridge slot):

Then layer 2, which is the top cover of the cartridge channel.

This is how it looks when a cartridge is inserted (making a delicious cartridge sandwich):

And here is the magic outcome – when looking at the back of the machine directly into the cartridge slot, notice how there are no cables in the way (and it makes for a very neat looking product all round):

On the left of the cartridge slot you can see one cable – that is the video power and signal, but it is actually behind the cartridge slot, so cannot get in the way. Also notice the power socket (bottom, just left of center), ready to take a 9V wall wart (power supply is at least 9V to reliably power the screen, but you could safely use a 12V wart also, as the 7805 is rated up to 18V).

And of course, the logo light (which acts as the power light). This is becoming a trademark of sorts!

It uses the same design as that in the NESPo – a frame with the lettering, inside which is a “lens” made of natural PLA, into which go three LEDs.

Here we are, ready to close up:

Screw everything together, and hey presto.

If you’d like to try building your own, you can get the source files at Thingiverse.

Read Full Post »

Steve and I had talked about making a tiny arcade machine for his little chibi Street Fighter guys (street fighter guys fighting each other but in their own game – very meta). It would be great a little project to make with the Replicator 2. So I got to thinking that it would be cool to make one, but a static piece of plastic would be too boring.

So while browsing Amazon one day, I noticed an odd little novelty item – keychains with a little 1.5″ screen to use as mini picture frames. Then it hit me – these would be a great bit to stick into my mini arcades – load ’em up with some screenshots, and presto, nice little desk toy…

On Amazon the screen ran for about $11, but on EBay you can get these ones from HK for about $6; much better. They have their own little 3.7v battery which you can charge via the built in USB plug. So I built a features list:

  • Should be easy to reach the USB plug for charging/changing the pictures
  • You should be able to change the side/marquee art easily to change the theme of the machine
  • All the features of the picture frame (it has a clock, auto off settings etc) should be easily accessible
  • It would have little red illuminated coin slots at the front.

The first step was to carefully measure all the non-printed parts (the picture frames, tac switches, magnets  and LED). Here are some keychain screens without their casings. Everything is square and therefore easy to print frames and attachments for:

Mostly the breakdown of the parts was based on printability (to avoid overhangs, etc). The sides I would attach with magnets – that would let you have easy access to the USB plug, as well as swap out the cabinet art. To avoid the problem of swapping out marquee art, I designed the machine to have no marquee (although an illuminated marquee would have been awesome too – maybe for V2).

So now off to design. I used OpenSCAD and InkScape again, and this gave me a good chance to learn some more features. They are a very good set of tools. Spending time designing in OpenSCAD pays off big time. Every hour you spend in design saves you two hours of aggravation after printing, kids. Here is the final design:

The cabinet consists of these printed parts:

  • LED holder/coin slots (printed with natural PLA which is translucent clear, and works nicely as a light guide)
  • shelf for tac switches (with indentations for each tac switch to ensure they are spaced correctly)
  • cover/faceplate for the tac switches
  • body
  • sides with theme art

Once I felt I had the design nailed down, did some test prints to make sure the enclosure would fit together, and find bugs (I write comments directly on the piece when doing this, as it’s easier than describing where the issue is).

There were a good number of issues I didn’t spot in CAD, so back to the design board to get those ironed out. Once they were sorted, I printed another prototype shell (which turned out to have only one bug in it, which I fixed in the production shape). I find natural PLA to be a good material to do prototype prints in, because it is translucent, and so you can see a little of how things interact internally.

But before I this prototype lit up, I had to take care of the electronics. On taking apart the picture frame, everything was fairly simple – there were four buttons to be surfaced on the arcade machine, and you could tap those directly on the PCB (even though they use surface mount – you just need to be a little careful with your soldering iron). I surfaced those conenctions to a little .1″ header, to allow me easier assembly. Here is where to tap the PBCs:

The one cool feature I wanted was a little light illuminating the coin slots. For that I needed to find a 5v source on the PCB. I ended up tapping that from the screen’s back light (which is on the other side of the PCB):

Add a resistor and LED, and you’re good to go. Here is the “electronics package” ready to be inserted into the cabinet. Notice it is running (to test I didn’t fry it during soldering), and also note one end of the header is painted red – that’s to allow me to connect it the right way round to the buttons later (flip it around and you could fry some stuff, so pays to put a little indication of handedness in there):

The next step was to put the switches into the cabinet. I super glued the button spacer piece to the cabinet body, and then hot glued the switches to the spacer (maintaining the correct spacing is important, because there is a little cover piece with holes that goes over the switches, and if the spacing is wrong the buttons will be obscured). I cut the legs of the switches in the following way to allow for better soldering.

All the bottom legs are wired together and then to ground (i.e switch 1 to switch 2 to switch 3 to switch 4 to ground), and then the top connection goes to one of each of the buttons we surfaced to the header in the step above. This part was a bit annoying, because the heat form the soldering iron would cause the hot glue to let go sometimes, resulting in a messy re-glue. I will have to try harder with superglue if I do this again.

The final electronics related step is to insert the LED into the LED ‘lens” which pops out through the coin slots. This is printed in natural PLA so that they light can shine through. I added some black electrical tape around the edges to ensure the light escapes only out of the front of the lens – it ensures a brighter light, and also prevents a weird red glow from seeping from the edges of the cabinet (unless you’re into that sort of thing).

Now the only thing left to do is hot gluing:

  1. Glue the coin lights to the main body
  2. Glue the screen to the screen frame
  3. Glue the screen frame (with electronics now attached) to the main body
  4. Glue the magnets into the main body receptacles
  5. Glue the button cover (over the switches) to the main body
  6. Glue magnets to the cabinet sides
  7. Glue the artwork to the sides

Here is all the bits glued in place (without the sides for clarity):

The idea of having the  ‘quick detach’ sides is to easily change the artwork of your machine, as well as being easy to open for charging. Note that when you do steps 4 and 5 above, you need to be sure the polarity of the magnets is correct, otherwise the main body will “reject” the sides. I thought this magnet based attachment system would be better than having a peg/hole system, because the pegs might snap off; but the truth is hot glue is not great at overcoming the magnetic force, so the magnets will sometimes come off the PLA. If I were to do this again I would either redesign with a peg/hole system, or use one magnet plus metallic surface rather than two magnets (it would be half the force, and presumably the hot glue could hold that).

I had a lot of fun making this thing, so I decided to make a couple (I ended doing six, including the prototype), and give them away as gifts. One of the great things about 3D printing is that you can make multiple copies of anything (provided you have PLA and patience –  printing the pieces for a single machine takes more than an hour). It is pretty satisfying, once you’ve figured out how they fit together, to knock out four or five cabinets in a single Saturday.

By loading different screenshots and customizing the side art, I came up with “themes” that the recipients would enjoy. I made a Street Fighter II theme, Classic Arcade theme, The Oregon Trail theme, Duke Nukem 3D theme, and a Classic PC Flight Sims theme. I printed out some instructions for each, added a little USB charging cable and put them in a nice gift bag for delivery. Here is my mini arcade, shortly before they all went off to their respective homes (click each for more sizes).

Here is a list of all the parts used:

Read Full Post »

More classic PC simulations – this time from Dynamix, featuring the once-mighty Damon Slye. Dynamix released their stuff under the Sierra label and carried a reputation as a great survey sim maker (i.e. sims that simulate several vehicles with less realism, as opposed to games such as Falcon 3.0 which focused on a single vehicle in detail). These games delivered a lot of fun, with quite good graphics and sound (and waaaay better music than Microprose could muster). This gallery represents 7 games from my collection produced between 1989 and 1997. The gallery is sorted from earliest games to latest. Click on each one for more sizes.

Read Full Post »

Another round of Microprose game manual covers – this time for the PC, the platform where they really produced their best stuff. These are all scans from my collection. For some games (like M1 Tank Platoon and Fleet Defender) I have more than one manual, because I bought some of these in South Africa, where we got the UK versions, and then I also got copies of the US versions after my arrival here. I really would love to know why they felt the need to change the cover art, given the text is the same across these versions. This gallery represents 25 games produced between 1987 and 2000 (heavily slanted towards military sims). The gallery is sorted from earliest games to latest. Click on each one for more sizes.

EDIT (4/14/2013): Added the Twilight: 2000 and Special Forces covers.

Read Full Post »

(EDIT: forgot my Silent Service and F-15 Strike Eagle cover scans, now added).

Microprose was founded by “Wild Bill” Stealy and Sid Meier in the early 80s, and become the place where Meier established himself as a major innovator in gaming. Although the brand name still exists in game publishing, it’s not the game developer it once was; development stopped at the turn of the century. A lot of their early successes were on the Commodore 64, and they set the bar for PC simulations in the mid to late 90s. One of the things that set Microprose apart from its competitors was the amazing packing – large, full colour boxes packed with lengthy manuals that set atmosphere as well as giving information about the game and its world. Here are some cover scans from my collection (click each for more sizes):

Read Full Post »

Weirdly interesting walk down industrial design in the 80’s. http://2600connection.atari.org/faq/controllers/faq_controllers.html

I remember a lot of these from back in the day (they were all C64 compatible too, of course).

Read Full Post »

I love retro gaming – Contra, Zelda, Desert Strike – good times. But those games were annoyingly hard, and the controllers; oh the controllers… The NES controller was super unresponsive (SNES was a little better), and the Atari CX-40 was just torture. Wouldn’t it be great to have an arcade stick for these retro machines, like the NES Advantage? But three different arcade sticks will lead to storage/cash flow problems. What you really want is a single arcade stick that can plug into multiple retro machines. MULTIiple CONsoles of the RETRO kind.

Enter the dragon MultiCon_Retro

I had been looking for a retro gaming fabrication project to really push the Fireball’s and my limits. This seemed like a good place to start. To really show that with a CNC you can make multiple copies of the same project easily, I would make at least two units: One was to be a gift, the other for myself. The idea was that the second copy should take far less time to build than the first. In essence, the project consisted of three parts:

1. Arcade quality controls

This was easy; I would use Sanwa and Zippy parts; this would be familiar territory due to my experience with my arcade cabinet. I avoided the Sanwa style buttons which clip into the deck, and instead used the threaded through-hole American type. This is because I knew my deck would need to be thick (thin MDF ‘gives’ when you press it, making it annoying); plus the Sanwa buttons can only be mounted on a fairly thin deck.

Because I wanted this to be a comfortable stick, wanted to carefully test the button layout. I built two cheap prototypes to ensure that the deck size and button spacing was comfortable:

Here is Steve helping debug one of the prototypes with Contra. Even in this crappy form, it was already a lot better than using the original NES controller.

2. Interfacing controls to consoles

I knew I wanted to support the NES, SNES and Atari 2600 (I have an N64, but that has analog controls, so I excluded it). The Atari connection is a simple one-cable-per-input (plus ground) deal; but NES and SNES use shift registers to encode the input. Rather than try to figure out the circuit, I just took the circuit boards from real controllers (you can get knock-off controllers for a couple bucks each).

A little hot glue and it is all installed:

Then I needed to make the one joystick and set of buttons drive all three boards. To simplify debugging/parts replacement, I soldered a custom distributor board, where the buttons are plugged in via headers (left two columns in the image below), and the three controllers are in series with that switch (the S, N and A columns in the image below). The end product is a fairly compact header setup, which allows you to work with each of the three controllers independently:

Each of the three controllers outputs to a 9 pin female D-Sub plug; and then you can plug in whatever cable you need for your machine. I provide three cables, with the console plug on one end, and a male 9D-Sub on the other.

3. Nice enclosure

This was the hardest part. I had done some small things on the CNC machine, but never something this complex. To keep things simple, I set the design as a flat sided box (no slopes, chamfer, etc), but with rounded corners. To make it look like more than just a slab of MDF, I decided I would add some artwork under a sheet of transparent acrylic, and shiny new chrome screws to hold the whole thing together.

Building a box with rounded corners is not as simple as you think. At first I though of using quarter round dowels held between the vertical walls, but it soon became apparent that the tolerances to which quarter rounds are cut are not great. First, they are not 90 degrees – they vary from 80 to about 85 degrees; and then the radius also varies along the length; not the road to a neat box. Instead, I decided to design and cut custom corner pieces from 1/4″ MDF, and stack them up to the 2″ height of the box (i.e. 8 of these pieces per corner). This means you need 32 pieces per case; this ended up being the most tedious part of the project – cutting the 32 pierces on the Fireball ended up taking more than two hours,  and kicked up a lot of dust of course. But the results were worth it in the end. Here is my PC partway through one of those boring two hour sessions cutting some corner parts:

Being able to design the corner pieces gave me a lot of freedom – that’s the upside. I decided to make them be the major structural piece – all other flat surface would be glued by these.

The top deck (with the controls) would then bolt to the corners by means of an embedded nut. Here you can see how the shape of the corners fits with the vertical surfaces, and the machined bolt hole (always better to machine the hole while you are CNC routing, rather than drilling after the fact):

Incidentally, embedding a nut and using a bolt is far better than using a self-threading wood screw, as that will become progressively more and more loose as the MDF compacts, and cannot be easily repaired. A steel nut however, will last forever.

I learned that test-fitting as you go along is very important – I found a couple of bugs in parts which I had to re-cut. Remember kids, the earlier you find a bug, the cheaper it is to fix.

Here is a view of the internals. Notice the C-shaped pieces along the long vertical walls. Those are there to provide strength to prevent the long walls from collapsing; if they were not there, the only thing preventing the walls from collapsing inwards would be the thing edge of the 1/8″ MDF glued to the floor piece. Retro gaming can be a very frustrating experience, so you need to make these things tough.

Now for the toxic fun part. Although the Fireball cuts MDF very neatly, there are still visible seams once the glue sets. This is where Bondo Automotive Putty comes in (this is a trick I learnt from the Cosplay crowd). It smells terrible, it’s messy as anything, but it is cheap, and works really, really well on MDF. Here are the bits you will need – nothing exotic. The tile I use to mix the bondo on, to protect the workbench.

First, you mix up the goop, apply it to the part, and let it dry. At this stage it looks worse than when you started:

Then you break out the sander with a fine paper, and start reducing the mass. You end up with a super-smooth finish. Because Bondo and MDF have a similar density, they reduce at the same rate, so this works very well, and is safe.

Once all the seams are neat, you can spray with regular spray paint. I decided on white, as I have enough black/beige bricks around my TV as it is. Once the paint dried, I wired up and tested all the connections.

Incidentally, Starfox on the SNES is great for testing, because it has a screen where you can try different control sets, and it shows you how the ship responds to each button push. You can test without pesky aliens shooting at you for as long as you need, and it uses every button on the controller.

Once everything was ready, I added the artwork and acrylic sheet, the decals and some Little Rubber Feet

Now Unit 00 was ready to be packed and gift wrapped. I used an old Xbox 360 cardboard box – just flip it inside out, and add some bubble wrap and custom decals. I also made a brief instruction manual, which you can download here.

One of the things I wanted to achieve on this project was a kind of mass-production (after all, all the design work was done, and I had all the G-code for the parts ready to re-use). Well, it was much faster to produce Unit 01 than Unit 00. In fact, I would say I took around half the time, and managed to fix up a few small bugs along the way – so some kind of “mass production” (or at least “non-unique production”) is completely possible. Here is the second unit (this time with white stick top)

Read Full Post »

Older Posts »