Native Linux Games for an Arcade Cabinet: The Humble Indie Bundles

| Comments

I’ve been digging around trying to find some games that run natively on Linux to install on my cocktail cabinet. The search has been a bit difficult. I don’t have a trackball on my cabinet, so any game that requires a mouse is automatically crossed off the list. There are quite a few games that are playable without the mouse… Unfortunately, many of them require a mouse to start a new game or exit the game. I thought Frogatto looked very interesting. You can start a new game without a mouse but you can’t exit without one! Frogatto; is open source, maybe one day I’ll get some gumption and add a quit key to it.

I bought the first Humble Indie Bundle but completely forgot that I had it! When the Humble Indie Bundle 2 went on sale I bought a copy right away. The second bundle has two games that don’t require a mouse; the first bundle has one.

BraidHumble Indie Bundle 2

Braid is an awesome game that only requires the keyboard. It did present a bit of a challenge for me because it doesn’t let you remap the keys. It was easy enough to wrap the game up in a script that does a little xmodmap trickery to remap the keys so I can play from the “Player 3” controller. I ended up doing this for just about every native game I’ve installed so far. Even games that let you redefine keys still require the arrow keys to move around the menus! My “Player 1” controller uses the arrow keys and that position has a vertical screen orientation.

Braid is an awesome game for an arcade cabinet. The night I installed it, two of us were leaning over the arcade table for at least an hour or more trying to get all those puzzle pieces. We completed the first two or three worlds that night. I think the most amazing moment that night was when we figured out how to get the two puzzle pieces that are just past the puzzle assembly screen in the first world.

Braid seems to require a surprisingly heavy-duty machine. It runs at pretty low resolution and at only 20 frames per second on my cabinet. That frame rate doesn’t make for a terribly smooth game, but I stopped noticing it pretty quickly. It doesn’t help that I have to invert the screen to be able to play it.

Cortex CommandHumble Indie Bundle 2

This one looks pretty cool. I’ve only gotten a chance to complete the tutorial mission so far. It seems like a game like this is made for a cocktail cabinet since it is a four-player split-screen game. Unfortunately, like every other split screen game, all the screens point in the same direction. It would be really awesome if I could rotate the screens, or at least get a MAME-style cocktail mode type display out of it.

It would definitely be a great two-player game on an upright cabinet, though.

I used xmodmap trickery for this one as well. I’m pretty sure I needed the arrow keys to move the virtual mouse around the menus.

GishHumble Indie Bundle

Gish is a perfect fit for any arcade cabinet. It is an interesting platformer where you control a blob of tar. I had a bit of difficulty getting the hang of the controls; it took me a while to figure out how to use the Jello-like effect of the blob to jump higher. I did manage to get past a few levels, though.

Once again, I used more xmodmap trickery. Once I created a few mapping files it became easier to change the key layout than it is to try to change the keys inside the games.

My First Failure, AquariaHumble Indie Bundle

Aquaria looks like it might be interesting. The game looks playable without a mouse, but it requires a mouse to change options and to exit the game.

Final Thoughts

I’m glad I bought the first Humble Indie Bundle. I had previously only played World of Goo. I’m glad the arcade table encouraged me to try Gish. The Humble Indie Bundle 2 was worth the money for Braid alone; Cortex Command is a nice bonus. I’m sure I’ll play some of the other games on my laptop. Osmos and Revenge of the Titans both look interesting.

Debacle with My New Cuisnart Espresso Machine

| Comments

Update: 2012-10-30

It has been almost a year since I replaced my Cuisinart espresso machine with a cheap, pump driver Mr. Coffee ECMP50 espresso machine. It was an impulse buy at Target. They had it on sale for only $60.

I’ve pulled hundreds of double shots with the Mr. Coffee machine and it is still working just fine. It makes at least as good of an espresso as either of these Cuisinart machines, and the steam wand seems more powerful.

The ECMP50 and both the Cuisinart EM-100 and EM-200 have “pressurized” portafilters. I’ve learned that this means they all make a “consistently mediocre” shot of espresso.

I feel that “consistently mediocre” is pretty good at this price point. Especially the “consistent” part. It is very hard to screw up and make an actual BAD shot of espresso.

We’ll see if I change my mind when I eventually upgrade to a proper espresso machine…

Update: 2011-07-17

Last month, my Cuisinart EM-200 espresso machine stopped working. A cheap plastic (maybe vinyl) fitting on one of the pressurized lines split in half and it is just leaking water all over the internals.

I called Cuisinart’s customer service at 1-800-726-0190. They informed me that Cuisinart does not sell any internal parts. They told me that this is for “liability reasons.”

It seems silly to have to junk this big, heavy machine over a 5-cent piece of plastic. The machine lasted a little longer than six months, which is beyond the 90-day warranty. I don’t think I’ll be buying anything else from Cuisinart any time soon.

I’m hoping that I will be able to find a compatible fitting somewhere. It looks like some sort of plastic compression fitting. I’ve only ever used brass compression fittings, so I have no idea how common this style of connector is. My friend Google turns up a vast array of plastic fittings; none that I’ve seen so far look like they would work for me, though.

End of Update

I am a big fan of Bialetti Moka Express pots. I own three different-sized pots and I’ve been using one of them for almost three years now. We finally broke down last month and bought a proper pump-driven 15-bar espresso machine, a refurbished Cuisinart EM-200. We saw it in the middle of a “woot! Off” and figured it’d be worth trying out.

I’m glad we did because it makes an excellent cappuccino, or at least whatever it is that I make that sort of resembles a cappuccino… The coffee that comes out of this machine is so much smoother-tasting than the stuff that comes out of a Moka Express pot.

I don’t think I ever really made a hot coffee with the Moka Express that I was happy with. I also can’t really tell the difference between brand of coffee and another when I brew it in the Moka Express. I am amazed at how much difference I can taste from one coffee to the next with the proper Espresso machine!

The Debacle!

This is the first Espresso machine I have ever used. After the first half dozen Espressos or so it blew through the gasket. I ended up having to remove the gasket and replace it. This started happening more frequently until I just couldn’t pull a single shot without it happening.

The day that it was at its worst, we were out shopping, so we looked at some other Espresso machines. We actually saw this same model at Bed, Bath, and Beyond (for more than twice the price). I noticed that the gasket felt entirely different from mine. It was also much, much easier to lock in the portafilter. I figured they must have started using a new style of gasket.

The Fix

It turns out mine was installed upside down from the factory… I reinstalled it the correct way last week and it hasn’t blown out again since. It was extremely obvious that this was the way it was really supposed to be installed once I tried it.

Again, this is the first Espresso machine I’ve ever used. I was amazed at how difficult it was to lock in the portafilter. I had to crank on it so hard that I would have to hold the twenty-pound machine in place so that it wouldn’t rotate with the portafilter. I figured that was normal since it has to hold back 9 bars of pressure. That seems like a lot of pressure to me. I had the boost pressure turned up pretty high in my old turbocharged car, and it wasn’t even hitting 1.2 bars.

I’m very happy that it was an easy fix. I wasn’t looking forward to shopping around for another espresso machine. If this machine turned out to be a useless brick, I certainly would have had to buy another, probably way more expensive, machine. I was hooked on the new coffee the first day I had it!

I won’t be Retiring the Moka Express

At least, not the big 9 cup model. I can brew a comparatively huge pot of coffee with less time and way less effort with the Moka Express. Pulling a shot is pretty quick; pulling four or five shots takes a little longer. I can make a large blender full of frozen coffee drinks with one Moka Express full of coffee.

Cuisinart EM-100

I also got to try out an EM-100 this week. It feels and sounds exactly like my EM-200. The biggest differences are that the EM-100 is less expensive and it isn’t computerized. On my EM-200 I just hit the one shot or two shot button and wait for my espresso. You have to time the shot yourself on the EM-100.

If I hadn’t gotten a great deal on the EM-200, I would have been happy to buy the EM-100.

Native Linux Games for an Arcade Cabinet: Playing “Titan Attacks!” Without a Mouse

| Comments

Puppy Games bills “Titan Attacks” as “The best Space Invaders tribute ever.” I definitely have to agree with them! There are plenty of different kinds of alien ships and they all seem to move around the screen differently. Some act just like old-school space invaders, some wrap around the screen, some of the meaner ones drop bombs and swoop down at you. I never seem to keep my multiplier built up for the boss battles, though…

The sound-track is a perfect fit for this game and the awesome retro style graphics make this game a fitting addition to my arcade cabinet.

The game is played with the keyboard, so it was no problem to map my arcade controls to match the keys. The problem is that “Titan Attacks” requires a mouse for some very important functions. You need a mouse to start a new game, to purchase upgrades in between stages, and to exit the game. My arcade cabinet does not have a mouse or a trackball…

I figured it would be pretty trivial to bind some automated mouse clicks to various button combinations. The mouse scripting was very easy thanks to xmacro. Binding the keys wasn’t as easy as I hoped.

xbindkeys Failure

When a game grabs the X11 keyboard, it sure doesn’t tend to let anything escape. Most games I tried intercepted all the keystrokes and didn’t let anything sneak past to xbindkeys. I had to intercept the keyboard at a lower level.

Reading /dev/input/event* Directly

I wrote up a quick and dirty Perl script to watch the event device associated with my keyboard (/dev/input/event2 on my cabinet) and watch for certain key combinations. When certain combinations are pressed, it calls the appropriate xmacro script.

If I’m going to do this for more games, I will have to sit down and design a better keyboard monitoring script. Continuing to write up piles of spaghetti-like if statements is definitely not something I want to do.

Trying to Assign Buttons in a Sensible Fashion

It turned out that I needed to bind nine scripts to different buttons. The first script is pretty overloaded. It attempts to do three different actions, all of which are related to starting a game. Six button bindings are needed for purchasing upgrades. One binding is to answer “no” when asked if you want to continue a saved game, and another is needed to exit the game.

I’m using the “start” button as a sort of shift key. My controllers all have six buttons, so I mapped “start” plus “button 1” to buy the first upgrade, “start” plus “button 2” to buy the second, and so on.

Holding “start” and pushing the joystick up attempts to do one of three things. First, it enters a name for the high score board; this is necessary at the end of a game. Then it attempts to click “yes” for when the game asks if you’d like to continue your saved game. Finally it clicks in the area where either the “begin game” or “continue” button are located.

This pretty much means that you click “start + up” any time you want to advance in the game, since it tries to click “yes” before it tries to start a new game. You also have the option of hitting the “no” button as well, which is “start + down”.

The “exit” button is over on one of the other control panels. I always try to keep the destructive buttons in harder-to-reach places.

How Well Does it Work?

Both better and worse than I expected. I had to add delays between the mouse button presses and releases to make things work more consistently. This sure makes the “yes/begin/continue” script execute like molasses. Even with the delay, the actions aren’t always picked up by the game. I would guess that they fail about 15% of the time, but sometimes the “continue” button fails two or three times in a row.

Starting the game also causes a few stray shots to be fired, mostly because of the delays between mouse clicks. I will probably have to rethink the idea of combining so many mouse clicks into a single macro.

Was it Worth the Effort?

It was definitely worth the effort. “Titan Attacks” is exactly the sort of game that belongs on an arcade cabinet. Puppy Games is having a sale on a bundle with “Titan Attacks,” “Ultratron,” and “Droid Assault” for only $7. They are all fun games; I sure wish my cocktail cabinet had a seat with dual joysticks so I could comfortably play the other two games on there.

Most of the hard work is out of the way now. It should be quite easy for me to add more games that require a mouse in the future.

I bundled up all the related files just in case anyone wants them. If and when I get around to creating a better solution, I will definitely make a copy available.

titanattack-xmacro-kludge.tar.bz2

Cocktail Arcade Cabinet Build: Part 10 - The Finished Cabinet

| Comments

Our cocktail arcade cabinet build is finally completed. I’m very pleased with how everything came together. The quality of the cabinet ended up exceeding my expectations in every way I can think of. We learned many useful things along the way.

Some of the parts that we thought were going to be fast and easy turned out to be the most difficult and/or time-consuming. We thought applying the vinyl and cutting the plexiglas would be quick and easy, but those were probably the most time-consuming part of the whole build. We thought that slotting the boards and fitting them together would be difficult, but we easily had that all worked out on the first and second days.

Parts and Labor

The total cost of the materials for the shell, buttons, joysticks, and I-PAC4 was probably somewhere in the neighborhood of $500. I had to buy the LCD monitor; that was about $150 (beware of LCD computer monitors). I had all the rest of the guts on hand already.

The labor is difficult to summarize. The two of us probably clocked in somewhere near 40 hours each working on the build over the space of about two months. Quite a bit of that time was spent trying to figure things out, redoing things we did wrong, or just plain old screwing around. With all we’ve learned along the way, I bet we could build a better cabinet in half time.

Was it Worth the Effort?

It was absolutely worth the effort. I grew up playing lots of arcade games so just having the machine sitting in my office is enough to make me happy. The cabinet has been completed for almost a month now and very few days have gone by where somebody hasn’t played with it for at least fifteen minutes.

I’ve wanted to build an arcade cabinet for at least the last ten years. I’m very glad I did; playing games on an arcade cabinet just feels so much different from playing them on a television or computer. I’m not entirely sure how to quantify the experience, though…

It very much reminds me of the difference between watching movies on a nice LCD television versus watching movies on an LCD or DLP projector. My DLP projector is pretty old. It is only an SVGA projector, and the contrast ratio is certainly not the best but watching movies on it feels a lot more like you’re sitting in a movie theater.

If you’ve been thinking about building an arcade cabinet for a long time, my advice is to start building. It was easier to build than I expected it to be and it was worth every penny. I wish I built one ten years ago!

Is it Really Finished?

I don’t know if I will ever consider the project totally finished. I think there will always be small changes to be made. For now I’m going to leave it alone.

The Next Cabinets

We’re planning to build a small 16 inch tall bar top cabinet. We have an old 14” 700MHz laptop lying around that we plan to stuff inside. It isn’t fast enough to play “modern” games from the middle of the 1990s, but it plays the classic games just fine.

After that, we’d like to build a low profile upright cabinet. We’re thinking it will be about somewhere around 18 inches deep (not counting the control panel).

The completed arcade cabinet, three quarters view The completed arcade cabinet, head on The arcade cabinet with a yardstick for scale Up close shot of the joystick and shiny buttons Another shot with the yard stick

Cocktail Arcade Cabinet Build: Part 9 - The Computer Hardware and Software

| Comments

Wiring to one of the joysticks Power supply mounting plate Particle board drive cage with slots for seven 3.5 inch hard drives Motherboard on its mounting plate Mostly empty interior The IPAC-4 hiding under the monitor support The finished arcade cabinet with the top off

The Guts of the Table

The only new electronics I bought for the table were the I-PAC4, the buttons and joysticks, and the 24” LCD monitor. All the guts were transplanted from my home file server, whose job used to be playing movies on my DLP projector.

Arcade-Related Hardware

The computer hardware is mostly faster than it would need to be for an upright cabinet. It is an Athlon X2 3800+ with 1 GB of RAM and it has a 64MB NVIDIA 6200 LE PCIe video card.

NAS-Related Hardware

The motherboard also has 6 SATA ports, and I’m using every one of them. The arcade table is now the home of my file server. We built a little cage to hold seven 3.5” hard drives out of some of the left-over building materials. Six would have been enough, but the wood we cut ended up being long enough for seven, so that’s what we have.

The boot drive is an old 320 GB SATA disk I had lying around. It holds all the data needed to play games on the cabinet. Then there are five 1 TB disks in a RAID 6 array, giving me about 3 TB of usable space. The RAID drives are set up to spin down shortly after the cabinet boots up.

I’m very happy that I’m able to use my cocktail cabinet as my home file server. The table is fairly bulky but it has a ton of room for computer hardware on the inside.

How the Hardware is Mounted

We had a whole bunch of leftover melamine panel from my DIY white boards. We cut one panel each to mount the motherboard, power supply, and the hard drive cage to. We cut slots in the sides of some 6” x 2” inch pieces of our 5/8” particleboard and we glued/screwed those to sides of the interior of the table to use as rails.

The motherboard is attached to a melamine panel square with wood screws and some plastic spacers. The power supply is screwed and zip tied to a small panel. The original power supply we were going to use had four screw holes we could use; the power supply we ended up using only had two. The two screws are probably enough; the zip tie is really mostly there for my own piece of mind.

The melamine panels slide right down from the top into the rails. We glued/screwed small wood blocks onto the walls underneath the panels to use as bump stops so the components would drop right through to the floor.

There is a six-inch wide shelf in the center of the table that the monitor sits on. We didn’t end up having to measure that perfectly, we just used some rubber feet as spacers to push the shelf up just a bit so that the monitor is nearly pressed right up against the glass.

The Software

We’re running 32-bit Ubuntu 10.10 for the operating system. We’re using the Wah!Cade front end and SDLMAME and SDLMESS for all the emulated games.

Wah!Cade

I don’t have much to say about Wah!Cade. I didn’t try many other front ends, so I can’t really say if it is much better or worse than anything else. I’m happy with it so far. It looks fine and the config files are easy to work with.

In the future I would like a front end that would auto rotate the controls and display for me so that the controller that selects a game becomes player one. I can see this being pretty complicated to do properly, though. I have some games set to the forced faux cocktail mode and others are set to native cocktail mode. None of those settings will work very well if the game is rotated from portrait to landscape.

SDLMAME

SDLMAME is excellent. I wouldn’t have built a cocktail cabinet if it weren’t for the “new” cocktail video mode that splits the screen and shows a full display to player one and player two. This is a killer feature of SDLMAME and SDLMESS for me.

Every game I would ever want to play from up until at least the middle of the 1990s plays in cocktail mode without dropped frames at 720p on my hardware.

SDLMESS Saves the Day!

Using a computer LCD monitor almost ruined my cocktail cabinet. I was using Mednafen and Snes9x for NES and SNES emulation. I’m a big fan of Mednafen, and both emulators are wonderful pieces of software.

My plan was to use the player 3 position, which is one of the long sides, as the seat to play NES and SNES and other games. With the poor visibility from the bottom of the display, I was forced to rotate the video output using XRANDR. This really made my video card too slow to play and scale NES and SNES games. Mednafen and Snes9x don’t have facilities to rotate the game output.

SDLMESS can not only rotate the display, but it even supports SDLMAME’s cocktail mode! SDLMESS isn’t nearly as capable of an emulator as Mednafen or Snes9x, and it is very picky about which game images you feed it. When a game works, though, it works very well.

Once I finished shoe-horning SDLMESS into place it was pretty trivial to add TI 99/4a and Coleco Vision emulation to the cabinet. I’m very happy to know that my memory is correct. Munchman is a much better game than Pac-Man, and TI Invaders is far superior to the original Space Invaders! I also had the theme song from “The Attack!” stuck in my head for days…

I ended up wrapping all the emulators in little shell scripts that set the correct screen orientation and/or resolution. My front end is running rotated 180 degrees at 800x600 and SDLMAME and SDLMESS are running at normal orientation at 720p. I’m experimenting with running some native games; they tend to need to run with the screen rotated as well.

Cocktail Cabinets are More Expensive than Upright

Especially when they’re four-player… I wanted six buttons at each of the four control panels. I don’t think there are any four-player arcade games that use more than three buttons but I wanted the option to be able to play two-player six-button games in either portrait or landscape. Just about the only control interface that supports enough inputs for that is the I-PAC4, which costs more than twice as much as something like a GPWiz 40.

To run in the split-screen cocktail mode requires more CPU. Scaling the larger output of the split-screen cocktail mode requires more GPU. In general you’ll need more CPU and GPU horsepower to drive a cocktail cabinet.

DIY PVC Pipe Laptop Stand

| Comments

With no laptop Side view with laptop Set up and cabled in its usual home

There really isn’t too much to say about this little project. We designed it and threw it together in about ten minutes, using leftover parts from my monitor stand and laptop rack builds.

Most of the construction is probably pretty obvious. The part we weren’t sure about was attaching the PVC J hooks to the piece of pipe at the top. We ended up cutting a notch in the pipe for each hook and we used the nails that came with the hooks to create sort of ad hoc hinges. It most certainly isn’t the best way to attach them but it was the best option we had on hand at the time, and it has worked surprisingly well.

The whole thing probably used just a few dollars’ worth of materials. It has been in service for a few months and it has been doing a good job of keeping the laptop monitor up in line with its second display. I should probably dye it black, but the white hooks match the white laptop quite nicely.

Cocktail Arcade Cabinet Build: Part 8 - Painting Plexi and Installing T-Molding

| Comments

Blackened plexiglas with holes for buttons T-molding and plexiglas installed

The blackened plexiglas turned out really nice. We used a can of glossy spray paint to paint the back side of each piece. They come out with a very shiny black color and have a very mirror-like reflective quality to them. Please excuse these early pictures. The panels were all still very dusty in the work-shop.

We used the blackened Plexiglas for all the control panel surfaces, for the short vertical panels that cover up the control panel wiring, and also on the back wall of the control panel areas. We originally planned to cover the back walls of the control panels with vinyl. I’m glad we ran out of vinyl, because the reflective plexiglas looks REALLY nice back there. The reflections of the buttons in the back panel look quite awesome!

The plexiglas makes for a nice, smooth surface to rest your hands on but it is very hard to keep clean. Our panels are very mirror-like, so fingerprints stand out a bit more than if we were just using clear plexiglas to cover some artwork.

The Glass Tabletop

I don’t seem to have any pictures of the glass tabletop being painted, but there is a short video walking around the table before it was completely finished. In the video you can sort of see the poor viewing angle from the bottom side of the LCD panel that I described earlier. It gets much worse than that if you actually sit down on that side.

We ended up buying a 32”x42” piece of glass to use as the surface of the table. It is ¼” thick and has, I think, 4” radius corners. We were able to get this piece custom cut at a local glass shop for $55. We aren’t having any problems with the ¼ inch glass but I think it would probably be better to go with 3/8” or ½” instead.

We painted the underside of the glass just like the Plexiglas. First we taped off a rectangle to match the display area of our monitor as precisely as we could. Then we taped off the nicely rounded view ports over each control panel.

We sprayed a few coats of glossy black paint over the exposed glass, waited until the next day, and then peeled off the masking tape.

The glass sits on four little rubber bumpers with the painted side down. The paint comes off the glass pretty easily. We’ve removed and replaced the glass at least a half dozen times so far and the paint has peeled off a bit right at the rubber bumpers. After we touch it up we might try taping off a few square inches underneath with electrical tape. We figure that should keep the paint from peeling.

T-Molding

The T-Molding was really easy to work with. Most of it we were able to just muscle into place with our thumbs and palms. Some spots didn’t want to fit as easily, those we tapped in with a rubber mallet. Once it was in place, we trimmed the end smooth with a razor blade—it cuts quite easily.

There are 90-degree bends on both sides of each control panel. I’m not terribly happy with those sharp bends. We cut out a big V from the back of the molding so it would bend that far, but the bend is still a bit rounder than I would prefer. We also only have barely more than an inch of groove there for the end of the molding to grab on to. Two of them wouldn’t stick on their own so we had to glue them.

One of my favorite parts of the entire cabinet is the piece of t-molding around the control panels that wraps all the way around the table. It really ties the cabinet together.

The Ugly Unfinished Bits

I shouldn’t even be pointing this spot out. I doubt anyone would ever notice it in any pictures or videos of the completed cabinet. I sure notice them, though.

There’s a 5/8” gap in the plexiglas between each control panel. We could have worked a bit harder and got the plexiglas to touch there but there would still be a seam to cover. We aren’t entirely certain how we are going to cover it up.

One idea is to cover them up with tokens from meaningful arcades. We would need four of them, which might be difficult, and we’d still need to put something underneath them.

This article at blog.makezine.com got the gears turning in my head. I’m not so sure I would want to emboss anything, but I bet I could bend some aluminum into some sort of clip to slide around the two pieces of plexiglas.

I’m sure we’ll come up with something to cover that gap. It really hasn’t been a priority so far. We really just want to get the cabinet up and playing games!

Cocktail Arcade Cabinet Build: Part 7 - Applying the Vinyl

| Comments

Close up of the sticky-back vinyl Another close up of the sticky-back vinyl A single piece of sticky-back vinyl installed

Applying the sticky-back vinyl covering to the cabinet was very simple but time consuming process. We spray-painted the cabinet around all the edges just in case the particleboard was visible anywhere between the vinyl and the t-molding.

All we had to do was clean the surface, peel off part of the backing, and press it down onto the surface. We slowly peeled off the backing as we were applying more and more of the vinyl from one end of the surface to the other while being careful not to create any bubbles or creases.

After each piece was glued into place, we had to trim around the edges with a razor blade. You have to make sure that the vinyl is flush with the edge of the board. If there is any overhanging vinyl, it will be very obvious once the t-molding is put in place.

How Does it Look?

It looks very good. At this point I think it was well worth the time, effort, and money to go with the vinyl. It looks right and it feels like it belongs in an arcade.

Poor Planning

I didn’t order quite enough vinyl… I’m pretty sure I forgot that we had to vinyl both sides of the board on the outsides of the cabinet. My poor planning actually forced us to improve the looks of the cabinet quite a bit. We decided to cover the back wall of each control panel with a piece of blackened plexiglas. The plexiglas looks much, much better back there than the vinyl would. It has a lot more depth back there now; you can see the reflection of the buttons and joystick on the back wall now.

Alternatives to Vinyl

I really like the way the cabinet looks with the vinyl and I am glad we used it. We’ve been trying to think up a good alternative. The vinyl is expensive, partly because of the high shipping costs. The vinyl alone was probably almost 20% of the cost of the entire cabinet. Applying the vinyl to the cabinet was a pretty time-consuming process. I’m pretty sure it took us more than two full evenings to finish. That’s probably over 6 hours.

The best alternative we’ve come up with so far is melamine board from Home Depot.

We used two 4’x8’ sheets of 5/8” particleboard to build the cabinet at a cost of about $17 per sheet. It took about $90 worth of vinyl, including the cost of shipping, to cover the cabinet. If we wanted a white cabinet we could have saved about $50 and 6 hours.

Melamine is a plastic. I recently used vinyl dye to color my LCD monitor stand and laptop rack, and I would expect vinyl dye to cover melamine just as fully and easily as it covers PVC pipe.

Vinyl dye costs about $6 per can. I’m pretty certain we could dye an entire melamine cocktail cabinet with less than two cans of spray paint, and I am absolutely certain it would take way less than 6 hours.

Cocktail Arcade Cabinet Build: Supplemental - a Mistake to Avoid When Choosing a Display

| Comments

I still have two or three blog entries to write to bring us to the end of the cocktail cabinet build but in reality we are actually just a few cosmetic tweaks and a bit of assembly away from a completed cabinet. We were playing some games on it and we learned that we made a terrible mistake in our choice of monitor.

The LCD panel we used really does have awesome viewing angles, unless you try to look at it from the bottom side. This seems to be the case on the handful of computer LCD monitors that I tested. I’m guessing that they sacrifice viewing angle on the bottom to provide a better viewing angle from above. That way when someone stands behind you at your desk they will still see a nice crisp image on your screen.

I’ve tested the two LCD televisions we have here, and they seem to have similar viewing angles from above or below. I assume the manufacturers know that televisions are much more likely to be hung at or above eye level.

I’d like to find an LCD TV that has both the correct viewing angle and would fit well in the cocktail cabinet. The table ended up being just barely big enough to fit our 24” LCD monitor, and this monitor has a very small bezel on all four sides. In fact, the bottom bezel on my 21.5” monitors that I have on my desk would make them too tall to fit.

For now we’re just going to live with the fact that our four-player table is effectively a three player table. We were originally thinking about putting players 3 and 4 side by side on one side of the cabinet, but we thought it would be a little too cramped that way. If we stuck with that layout, we wouldn’t have a problem.

My plan is to rotate the display 180 degrees in the xorg.conf so that we can play 1-player widescreen games from the player 3 position.

This may hobble my cocktail cabinet but at least it will work. If would have been much worse if we tried to use this monitor in an upright cabinet.

Do It Yourself Dual LCD Monitor Stand

| Comments

Monitor Stand From Amazon Monitor Stand From Amazon

Update: Replacing the do-it-yourself stand

I upgraded to a pair of 27” QNIX 2560x1440 LCD panels, and they were just too big for my custom stand. I wanted to build another one, but I just have too many fun projects going on right now, and I didn’t think I’d find time to do it.

I ended up buying an inexpensive, heavy-duty monitor stand instead. Most of the options that were available when I built my own monitor stand quite a bit more expensive than the stand I ended up buying for my QNIX monitors.

This time I was able to buy a heavy-duty, fully articulated dual monitor arm for about as much as I spent on parts to build the last one. There’s not much point in going the DIY route anymore!

The Back Story

I started running my first dual head desktop at home with a pair of 19” CRT monitors sometime around 1999-2000. In 2001 I “upgraded” to a pair of 14” LCD panels. Ever since that upgrade, for almost 10 years now, I have been wanting to buy or build some sort of dual monitor stand.

Completed stand on a nice, empty desk PVC with black vinyl dye PVC with black vinyl dye Flange bolted to the desk Monitor hanging on PVC J hook Pipe stand with PVC support Failed attempt to mount monitors on pipe flanges Failed attempt to mount monitors on pipe flanges

I ran those 14” panels for quite a few years. Probably for a lot longer than I should have. Sometime in 2005 or 2006 I ditched my separate desktop and laptop and started using a laptop as my primary workstation. The laptop didn’t have dual video outputs, so I traded my dual head for the convenience of having my primary computer with me no matter where I went. It was a very worthwhile trade-off; I plan to never have a separate laptop and desktop again.

Update: Never say never. I ended up building a new desktop computer in July of 2013!

When I upgraded earlier this year, one of my requirements was that the new laptop needed to support a pair of external displays. The laptop I chose has an HDMI and VGA port. This laptop can only drive two ports at the same time, so I can’t cheat and use the internal display as a third head.

I don’t really consider the current monitor stand to be a finished product. It is in its second iteration now and could definitely be improved upon. I am going to describe where we started, how we got to the point we are at now, and probably talk about some of the things I might do differently next time.

Some of the Design Goals

There were a handful of features we thought were necessary:

  • Adjust the angle of the monitors
  • Move the monitors left and right, so we could get them to meet up nicely at the center
  • The whole thing needed to be sturdy
  • Less expensive than a monitor stand we could order

The Early Ideas and Failure

The original idea was to build almost the whole thing out of steel pipe from Lowes.

The two “FAIL” pictures show everything we had in our original design. We used pipe flanges, which are ridiculously expensive compared to the rest of the parts, to bolt the whole rig to the desk. Then we put a pipe flange at the end of each arm. Then we bolted a small 1”x6” piece of lumber to the flange at the end of each arm.

At this point we needed a way to mount the monitors on the lumber. We ended up bending some metal strips into J-shaped brackets so we could literally hang the monitors on the lumber.

We did a horrible job fabricating those brackets. The idea isn’t terrible. It allows for rotating the angle of the monitors on two different axes, and it allows for moving the monitors left and right. There were a few things we didn’t like, though:

  • Our brackets were awful, they looked terrible, and we couldn’t manage to quite get the monitors to line up
  • The two extra flanges probably cost more than all the pipe we bought

PVC to the Rescue!

We weren’t sure PVC would work out but it ended up having quite a few advantages. We ended up buying a 10’ stick of the higher pressure-rated ¾” pipe for just a few dollars. The tee and elbow fittings are also only 20-30 cents or so each.

They also sell really handy hooks that fit each size of PVC pipe. We screwed a pair of ¾” PVC hooks to each monitor using the VESA mounting holes; we just had to drill the holes out a bit bigger to fit the M4 screws. I only ended up using the top screw for each hook. I ran out of long M4 screws. They have been hanging for over six months without any issue, so I’m not going to worry about it now.

Each monitor has its own PVC rectangle with tee fittings on both inside corners instead of elbows. The top tube on each PVC rectangle is slid over existing steel pipe (where the upper flanges used to be). Then we connected the bottoms of the rectangles to each other with various PVC fittings and very short lengths of pipe.

The bottom of the rectangle is “connected” back to the vertical steel pipe with a short section of PVC pipe. It isn’t really connected; it just rests up against it to keep the bottom of the monitors from sagging. There is a pair of PVC screw caps in there so I can adjust the angle, but they weren’t at all necessary. If I did it again I would just put a single pipe in there without the fancy fittings.

Putting Some Lipstick on that Pig

I’ve been wanting to post pictures of this rig for months but it looked pretty bad in white. The problem was that to paint it I would have to take it down. If I took it down I wouldn’t have my monitor stand.

I finally took it all down this week to “paint” it. I bought a can of “vinyl dye” from the auto parts store. It worked very well, covers very easily, and looks infinitely better than the white PVC that announces what pressure it is rated for.

I didn’t paint any of the steel pipe. I like the way it looks just the way it is.

The Cost

I probably bought a total of about $60 or $70 worth of parts, but I’m pretty sure I really only used about $30 or $40 worth of them. The cost would go down a bit more if I used less steel.

I would prefer to use less steel. I’m not terribly happy with the way the steel joins up with the PVC. It works and looks alright. I just don’t like it.

What I Would Like to Do Differently

Right now the PVC is mostly a two-dimensional structure. I have some ideas for a sort of triangular PVC cage that would support the monitors both vertically and horizontally. Then that cage could just drop down over the top of a single steel pipe coming out of the desk.

What I have already does its job quite well. I wish I built something like this 10 years ago!