Instructables
Picture of Mini Pinball
IMG_0632.JPG
IMG_0638.JPG
IMG_0637.JPG
IMG_0582.JPG
IMG_0549.JPG
IMG_0586.JPG
IMG_0557.JPG
IMG_0569.JPG
device-2013-04-30-024724.png
device-2013-04-30-024808.png
device-2013-04-30-024842.png
Make an awesomely playable mini pinball, out of an Android tablet, real arcade buttons, some wood and some software!

There are some very good Android pinball applications. But I do not like to play using the touchscreen (I always end up hitting the home or menu icons).

I just needed real buttons, so I built this cabinet. The result is really reactive, and give full justice to these amazing pinball simulators!


 
Remove these adsRemove these ads by Signing Up

Step 1: Technical Considerations

Picture of Technical Considerations
Before undertaking the job of building a cabinet, it is necessary to check that all conditions are met.

Events principle
The principle I chose is to simulate finger touches. This will insure a perfect compatibility with all pinball applications (and not only the seldom ones supporting an external keyboard).

The buttons are connected to an USB keyboard controller. The SHIFT keys are detected and converted to touch events.

Tablet connectors
The tablet must have USB host capability, with an USB (or USB-on-the-go) connector. BTW, Android well supports external USB peripherals such as hard drives, keyboards, mice, hubs, etc.

Alternatively, Bluetooth keyboard may work, but I bet that the lag will badly impact the reactivity.

Also, an Arduino with an USB host controller, and directly connected to pinball buttons, may work. It would require ADK support.

Rooting
In order to read and send raw events, the application requires the tablet to be permanently rooted.

IT IS VERY DANGEROUS TO USE A ROOTED TABLET, as malware could virtually access anything, including your personal data and online accounts. Do not run apps requiring rooting, except if you know exactly what they're doing.

Evaluate!
Anyway, make a test before undertaking the project.
lmowry3 months ago
I have been doing some tests and hardware examples...

I have a 8" by 5" android tablet running android 4.04... (Screen size at 6" by 3 1/2") it's a phone operating system stretched to make a "phone tablet"... I bought it from china a year back.

It's pretty good for the $60 I paid for it, good graphics card, poor touch screen...

Anyway I am working on making a pinball machine using it. I am able to avoid rooting it.

I just wanted to let you know the apps I am using.

To hide the menus bar on the bottom, (the one that has the back button and time) I am using "full!screen+"

To keep the orientation I am using what you said, "set orientation"

For the touches on the screen from a hacked keyboard, (by hacked I mean modded physically with the arcade buttons) I am using "game keyboard"

And finally to start the pinball arcade on startup with everything else I am using an app called, "auto start".

The touch buttons and menus for the android operating system is all set to auto set to the setting I chose in the apps on startup and I have them set to be fully transparent.

I am in the middle of working on this project now and was happy to find I can jump right in withought rooting or actually programming anything:)

One last note, I am building the pinball machine to enclose this tablet. (It will not be taken out).

I would like to thank you for this awesome idea, I will have pics when I finish!
trouble0110 months ago
is it a 10" tablet pc?
laxap (author)  trouble0110 months ago
10 inches Android tablet.
This is really cool
mwheeler31 year ago
All issues resolved on an HP Touchpad running Tenderloin CM10 ROM. PinballButtons does track all button events into accurate screen touches. You can see my build here. This uses an Ultimarc iPac as the keyboard controller.
mwheeler31 year ago
PinballButtons APK seems to be stuck in a loop for me. It keeps giving me the SuperUser prompt. I click Allow, but it just keeps asking over and over.
laxap (author)  mwheeler31 year ago
I need the logs. Click menu -> Show Logs and scroll down.

Take a screenshot of the logs screen. If you have the Android development environment installed on your computer, then:
  1. be sure to have USB debugging enabled on the tablet
  2. connect your tablet to the PC via USB
  3. on the PC start monitor (or DDMS from Eclipse)
  4. select the tablet in the devices list, and click the screenshot icon
  5. Finally attach the screenshot as a reply. to this thread.
If the above is problematic, I will add the feature of copying the logs to a file on the sdcard.
(removed by author or community request)
(removed by author or community request)
Can you also add two more buttons? Start and Plunger?
laxap (author)  mwheeler31 year ago
Plunger is tricky because it should simulate a swipe. Where is a good screen location for it? It is very pinball-dependant.

For start, what should it do?
OK. Wasn't sure how those were handled. I was thinking of adding two additional buttons. One that would just send the ball and a Start button just mapped to the Start button in the GUI.
laxap (author)  mwheeler31 year ago
Please download the new APK at http://www.instructables.com/file/F2LL703HGIEUWI0/
It should allow the screen to display even if there is a background error.
Then you can display the logs (please scroll down) and make a screenshot.
Edgar1 year ago
Yes, you can make some bucks building this...
You could even go Crowdfunding!
Went to my Blog:
http://faz-voce-mesmo.blogspot.pt/2013/05/a-newsletter-da-cncking-e-carradas-de.html
ncaap1 year ago
Ok thanks when you willing to start making them I would pay you for your time I think that this is the coolest thing out there
ncaap1 year ago
Would you be willing to make one for me.we can work out a cost?
laxap (author)  ncaap1 year ago
No, but I can give you plenty of advice if you build your own.
DoxxRoxx1 year ago
You've done a fantastic job on the build!
I agree, using the screen for the flipper buttons is annoying and frustrating. 
Having seen a few full size versions, I applaud the small scale version you've designed, as it's obviously quite portable.  I'd love to try it, just don't have a tablet I can afford to root.

'Pinball Arcade' is OK, as far as Android apps go.
However, I would suggest using 'Zen Pinball', as the game physics are spot on.  
The physics are so nuanced, that the ball can bang the glass top and also get stuck, requiring nudges to dislodge, just as a real table will occasionally do!
The Android version includes the first table free.
I'm not affiliated ... just a pinball connoisseur.

If you were so inclined to make a full-sized machine, I'd go with their XBox 360 version, 'Pinball FX2'. All tables also incorporate tilt control. Company name: 'Zen Studios'
laxap (author)  DoxxRoxx1 year ago
Thank you.

Yes, I know Zen Pinball, and like it too. In addition to probably having the best physics, it also shows "smoke trails" behind the ball, helping a lot to locate the ball, which can be easy lost in all these 3D details.

We also love to play Pinball Deluxe. It's easier for kids, and nevertheless a lot of fun to play. The advantage of 2D is that it does not add any perspective, which is looking strange on a cabinet.

Therefore it's good to have a versatile cabinet with plenty of choice!
denis19761 year ago
Great Scott!!!!
GREAT job...
I am making a full size version!
42" flat screen and 27" flat screen for the back!

Thanks for the GREAT instructable!
laxap (author)  Greasetattoo1 year ago
I'm looking forward to seeing your version
Me too!!!!
foobear1 year ago
This is totally amazing. What sw did you use to draw that uml diagram - it's beautiful
laxap (author)  foobear1 year ago
Thank you.

I used yEd (www.yworks.com/en/products_yed_about.html) with UML shapes, and automatic hierarchic layout (alt-shift-h).