Picture of Coffee Table Pi
The purpose of this project is to create a modern slimline version of an arcade cocktail cabinet. Also to do other tasks such as browse web or write emails with the use of a wireless keyboard and mouse. The 24 inch LCD screen mounted in the center can be used to do any number of things such as show family photos or updates from social networking sites.

In the spirit of low cost, all the wood work used is recycled. The main expense apart from the raspberry pi itself is for the 24 inch LCD screen in the middle and the arcade joysticks and buttons.

To be child friendly the corners are rounded and perspex is mounted over the LCD screen.

Step 1: Select Your Parts

The LCD screen

I went with a 24inch LCD screen with LED backlight. Select any size screen you wish.

Make sure it has good viewing angles as the screen will be mounted upwards and almost always viewed at an angle. Test out the screen viewed from above and below, from the left and right and make sure it still looks almost as good as when viewed straight on.

Select one that can be wall mounted as it can then be attached to the table from underneath.

Select one that turns on without needing any buttons to be pressed as all the buttons with be hidden inside the table.

The Joystick and Button

This is up to you, I went with a Happ 4 or 8 way arcade ball top joystick, 2 blue American style buttons, 1 player and 2 player buttons.

Perspex sheet 4mm
Cut to the size of the outside edge of the LCD screen, larger than the viewing size of the screen as it will be screwed onto the underside of the top of the table.

Wood, glue, screws, stain and finish
This is all up to what you want to do. I used pine that I recycled from various places. Hot Hide Glue because I wanted to learn about using it. Using screws rather than glue or screws and common wood glue would have been easier.
I used a black stain and then a shellac french polish.

I recycled a nice 5inch speaker for the sound and used the circuit from an old set of computer speakers. This gave to ability to plug in headphones and automatically turn off the speaker.
1-40 of 80Next »

I am B.E student i would like to do a project "Restaurant table with
embedded menu card" using touch screen. will you help me. i would like
to know the components and the basic idea for my project.

NolanW6 months ago

How'd you program the Pi?

StuartK16 months ago

Nice. Although what are you using the P2 button for? maybe install retropi?

DavidT206 months ago

Would it be easy to add a second joystick and buttons on the horizontal plane to be able to play the games that are not displayed in portrait mode ?

JammaBoards6 months ago

Here is also an alternative to the I-PAC which
is the PC (MAME) / PS3 to Arcade Controller
USB Interface PCB Kit
. This controller does work with the Pi too! Also the Arcade
controller PCB is not an keyboard emulator and will not interfere with not
computer keyboard inputs/operations.


I ask this as a complete Pi/arcade controller noob... Can you give more insight on how to pair this with the Pi? Could it possibly be as easy as connect the pins and go? Hoping you can point me in the right direction...

Many Thanks!!!

sshipway2 years ago
I'm building one of these now. Using the I-PAC from ultimarc.com to interface the controls with the Pi, since this lets me have way more buttons and multiple joysticks. One problem I've encountered is that the HDMI output on the Pi does not provide much power - even with the hdmi_boost options set in the config.txt, the red signal is not strong enough for many of the older TVs and DVI monitors.  I would suggest people use at least a 700mA power supply for the Pi (many USB power adaptors are only 500mA) and make sure their selected TV/monitor can cope with the low signal produced by the Pi.  I've tested about a dozen items; HP seems to have more difficulty, IBM and LG seem better.  But YMMV.
I picked up an old wooden coffee table from TradMe (NZ version of eBay) to convert, for only $16 -- which was much better value to making my own table (and much better quality than my woodworking skills, too).  No images to post as yet as its still incomplete.
If any people want a 2G SD image for the Pi holding everything necessary (MAME, menu system, ROMs...) then drop me a line and I'll see what I can do.
jeremyh6 sshipway7 months ago


I'm interested in using the i-pac as well. Did you get your project sorted out and gaming? Do you have an FTP or torrent for the Pi image file?


sshipway jeremyh67 months ago
There are links on the page for my own version of the instructable, including for the Raspi image and the ipac source. http://www.instructables.com/id/MAME-gaming-table-with-Raspberry-Pi/
DarrenS28 months ago

Id love to see this with double joysticks and buttons to play 2 players, like in the real arcades. Play mortal combat or contra with a friend.

davidbarcomb9 months ago

Great instructable. Easy to understand

bradshep9 months ago
What did you use to program the RPi for the web browsing and email, also is this making it a computer, effectively? Great instructable!
shruti.takhral11 months ago

can you please upload a few more pics of this project to get a better idea, seems quite interesting

this please

GinsuVictim11 months ago

I'd advise anyone building this to place the buttons closer together. That is way too much space.

Kante Tech1 year ago

Imagine this with an touch screen display. You can possibly turn this into a Stark like project in which you have a touch screen controll display.

DanishR Kante Tech12 months ago

Yeah, that would be great. Currently i am playing with this project: http://tech-diggers.com/raspberry-pi-projects-host...

I was trying to use Raspberry pi as a test server for my wordpress installs, the results were acceptable.

Kante Tech1 year ago

Imagine this with an touch screen display. You can possibly turn this into a Stark like project in which you have a touch screen controll display.

What does the input of the monitor need to be
hdmi is on the Pi and any new monitor. Really old monitors you can use a composite cable.
Ravirar1 year ago
It's be cool to add more bluetooth connections so u can add WiiMote control with GlovePie or a trackpad. :) REALLY COOL DUDE! (Or Dudette)
imbiglarry1 year ago
This is so cool! Beautiful table as well. Would be cool if you kept the square cut for the LCD and were able to put it back on for times you actually want to rest your coffee!
Theres a new operating system called Retro Pie that boots straight into a list of emulators you might want to check it out
schettine2 years ago
Could send electric scheme or scheme of connections of the buttons and keys? arteiro.junior @ hotmail.com; adriano.junior@globo.com . thank you
festis2 years ago
I am new to the pi, what parts for the pi did you use. i plan on building one of these. looks like i could do it!
shane3692 years ago
Hopefully this will be my last question, I have everything connected up, but I am confused as to what I need to edit to make the GPIO work. I run advj and it does not detect any type of joystick input.
I wanted to add this in real quick. Following the link you provided for http://blog.thestateofme.com/2012/08/10/raspberry-pi-gpio-joystick/ I have been able to get the inputs detected and actually functioning. However, the rpi-gpio-jstk.py does not include the second button or the player 1 and 2 buttons. Is this the method that you used for yours? If so any chance that you can link your rpi-gpio-jstk.py with the added buttons or provide some insight in how to add them? I am teaching myself as I go, but with this being a xmas gift I am running out of time. Also, I'm not sure where my mistake is but after each restart, I am having to install python-uinput and run the sudo python rpi-gpio-jstk.py script each time. Am I correct in saying that at each start the rpi-gpio-jstk.py will need to run at startup?
grahamgelding (author)  shane3692 years ago
I can send you my rpi-gpio-jstk.py and coffee_table.sh if you message me your email address.
i would love to see these files too please! i want to try the project. i have been programming in python with GPIO, but wouldn't know how to 'map' the GPIO inputs to the keyboard (or however you do this). thanks a lot! thesupers@hotmail.com
grahamgelding (author)  shane3692 years ago
to the bottom of the file /etc/profile
I added:
sudo modprobe uinput
sudo python /home/pi/rpi-gpio-jstk.py &
Would you be able to provide a bit more detail on how you implemented the braces? I'm not sure what the best way to fix these would be to ensure decent support of the monitor.

grahamgelding (author)  Oliverhassan2 years ago
I used 2 pieces of pine and shaped them to fit the shape of the back of the monitor. I stuck a layer of rubber on them where they touch the monitor and screwed them into the frame of the table and into mounting holes in the back of the monitor. If you can make some steal braces it would be better.
Is there a more detailed schematic/source code somewhere? I'd love to see it.
wgonzalez12 years ago
Is there a schematic with the resistors I could see?
grahamgelding (author)  wgonzalez12 years ago
refer to http://magpi.techjeeper.com/The_MagPi_issue_2.pdf (page 12) I removed R1 and LED1 which leaves R2 1KOhm, R3 10KOhm. Repeat for each of the 8 GPIO's. The ground side of the switches are all linked together.
paulpaul22 years ago
How have you flipped the screen?
Have you done this in the menu of the screen or in the config.txt file??
(sorry for my bad english:-))
grahamgelding (author)  paulpaul22 years ago
I have flipped the screen the mame config file
HaDAk2 years ago
Have you had any issues with the heat of the display not dissipating properly in that orientation?
grahamgelding (author)  HaDAk2 years ago
Not so far, I can feel a bit of warmth on the perspex top after it's been left on all day.
1-40 of 80Next »