Instructables
Picture of The Four Player Coffee Table Pong Video Game.
SAM_1213.JPG
SAM_1219.JPG
SAM_1230.JPG
SAM_1217.JPG
UPDATE 12 APRIL 2011
Important! I have been made aware of a problem with the circuit board design with respect to the two push buttons. In order to get the buttons to work properly you need to connect them to the expansion port instead of the designated player select and mode button connections on the circuit board. Connect them to PIN D and PIN E on the expansion port. You will then need to connect a resistor from PIN D to GND and then another resistor from PIN E to GND. Finally, you will need to connect the other side of each button to VCC. This will make sure that when the buttons are not pressed, that you have a logic 0 at the microcontroller input (for that button) and then you will get a logic 1 when the button is pressed. If there are any hassles, just post a message here.

Okay scratch that - I have updated the circuit board and everything is working as advertised (and as written on the circuit board) Boards can be purchased direct from iteadstudio for $3 - link is in the instructable.


UPDATE 12 APRIL 2011
The circuit boards are now for sale direct from the manufacturer. They are $3 each. Also, the manufacturer is looking into how much it would cost to sell the boards with all pcb components as a kit. I will keep you updated. You can find the link to purchase a circuit board in STEP 1. Otherwise you can still make your own because all files are included in this instructable.

UPDATE 11 APRIL 2011
I have just received an email from the PCB manufacturer (iteadstudio) to let me know that the first batch of Super Pong Table circuit boards is complete and will be available for purchase very soon. They will be around $3 each from their website (I will provide the link once I have it)

UPDATE 10 April 2011
I have just released the sourcode for the 'Knockout' version of this game. This new version sees players battle it out to keep in as many balls as possible. There are no points for hitting a ball BUT you do lose a point for missing a ball - if you miss 20 balls, you are knocked out of the game and your 'bat' is replaced with a solid wall. The remaining players are then left to battle on. The last player standing wins!

You can download the latest version of the sourcecode in step 1.



Hello and welcome to another Bradsprojects instructable.

Are you tired of your old boring coffee table? Do you dream of a coffee table that allows you play games as well as keep your coffee cup off the ground?

Well dream no longer - because such a coffee table is here and you can build one for yourself.

Introducing Super Table Pong. no doubt you have seen the many variations of the classic game 'Pong', well this coffee table takes that game just that little bit further by allowing you to play up to four players at once with 5 balls on the screen at a time. It's a fast paced - action packed game of mayhem!

Here is a short youtube video of the game in action. (I have removed the top glass for video clarity)



Knockout Edition (This version is more fun than the original. A player is knocked out of the game if they miss 20 balls)

The Game
Each player uses an old atari paddle controller to move their respective 'bat' to the left and right of screen. The game starts with five balls in the middle of the screen moving outwards towards the players bats. Each ball moves at a different speed and at different angles to one another. When a ball approaches a player, that player needs to move their bat in order to intercept the ball and make it bounce back in the opposite direction. If the player does not get their bat there in time and the ball happens to go past the player, then that ball will re-appear in the center of the screen.

So how do you win?
If the player hits the ball, they are awarded one point, however if the player misses a ball, they lose one point. The first player to reach 20 Points wins the game and they will be presented with a 'YOU WIN' fireworks animation.

Technical Details
The game is powered by an 8-bit microcontroller (PIC18f4550) running at 8MHz. The display consists of 900 LED's arranged in a 30 x 30 matrix. (I originally designed it to have 1024 LED's, which would make it a 32 x 32 LED matrix. The LED's on each outside edge would have been a different color I.E. one side would have been green, then blue, white and orange) Long story short, the extra LED's that I ordered didn't arrive in time which has restricted mt to just 900 red LED's.

The four controllers are analog controllers taken out of the old Atari 2600 game system. You twist them clockwise / counter-clockwise to move your respective bat on the LED display. The circuit requires very little power and can be run off 4 AA batteries for more than 2 months if played for 30 mins each day.

Future Updates

I would like to say a huge thankyou for all of your comments and suggestions. I do have plans to improve on this project to make it into a much more enjoyable game. I am currently updating the circuit board design and schematic to include an expansion port which will allow for all manner of future improvements such as extra buttons and an LCD display for each player.

Thoughts for future updates:
  • Balls moving at more random speeds and angles
  • ability to select the number of balls on screen at once
  • computer player
  • scores will be displayed on an lcd display
  • add an arcade style button for each player giving them the ability to 'shoot' other players to take points off them
  • different color LED's for the players bats (rather than just red)
  • if a player loses a certain amount of points they are knocked out of the game - the last man standing wins.
 
Remove these adsRemove these ads by Signing Up
1-40 of 126Next »
Nick Arora5 months ago

Hi, i don't have the atari controllers but i do have the old ps2 controllers. Can those be used?

or a simple keys (push buttons) system?

boopols237 months ago

can i use 40pins pic18f4550 rather than 44pins?

bradsprojects (author)  boopols237 months ago
Hi, yes you can. They are actually exactly the same chip, just in a different package. They both have the same connections that you will need for this game.

Although, you may be interested in the newer, better and easier to make version of this game:
http://www.bradsprojects.com/retroball-a-four-player-led-pong-game/

(downloads at the bottom of the page before the comments section)
too late I've got all the materials need for this. can you help me make a counter for each player? using seven segment? and can i use the fx from the retroball loaded to my pic18f4550.
1timmy1 year ago
you still have a problem with the buttons. the two 10k resistors are connected to vcc. not ground. I used desoldered the two onboard resistors and used to external ones and hooked them to ground and it works perfectly.
Djandco1 year ago
Forgive my ignorance with the Pic family but what software do you use to upload the firmware?
I have only ever used the Arduino and this would be my first venture into the Pic world.

Just so you know, I have just ordered a Pickit2 Starter kit, hope it comes with the correct stuff!

Regards


Darren
bradsprojects (author)  Djandco1 year ago
No worries. The PICKIT2 starter kit contains the PICKIT2 (funnily enough...) and that is what you will use to program the microcontroller. There are 5 connections you will need to connect (check out this image to see where they are)
http://i.stack.imgur.com/I1N6b.png

VPP - programming supply
VDD - power supply for the microcontroller
VSS - Ground
PGD - Serial Data
PGC - Clock

You don't need to connect the sixth AUX connector.

All you need to do is line these 5 connections up with the same 5 connections on the PIC. (some of the PIC pins have multiple functions, so these abbreviations may be hidden in amongst other abbreviations on the same pin)

Then you just load up the PICKIT2 software and it will autodetect the PICKIT2 and whatever PIC chip is connected to it. You then just open your hex file and click upload.
Thank you for your pointer, this should be fun when the parts turn up!

is there a big difference between the Pickit2 and Pickit3?
I would have assumed that the 3 would just have a wider compatibility with the newer chips.

On your instructable you mention that the Pic will already be fitted to the board, but when you order them it does not have anything on.
Not a major problem because I have ordered a couple of chips, (just in case!) but I thought I would mention it.

Kind regards

Darren
bradsprojects (author)  Djandco1 year ago
I haven't looked much into the PICKIT3 (I guess because I haven't needed to) But I also would assume it supports more chips. Perhaps the 24 series and 32 series?

I don't remember and can't find where it is written that it would be soldered to the board already. Could you copy and paste that here for me?
Funny enough it said it in the parts list on this front page but it doesn't seem to be there any more.



 
ddemirjian1 year ago
Hi Brad. Great project. is there anyplace i can buy all the components in one place now that the Kickstarter program is over?
bradsprojects (author)  ddemirjian1 year ago
Unfortunately not - You have to shop around to find all of the parts and they aren't that cheap if you don't buy in bulk. 

I am working on porting the retroball code over to super pong table so users can upgrade :)

Here's the download for the RetroBall details:
http://www.bradsprojects.com/RetroBall/RetroBallFiles.zip
mikeblack1 year ago
I have completed the super pong table but it won't program. I am having trouble connecting the ICSP wires on the board to the pickit 2 in the right order. but so far every different configuration we have tried has resulted in the same error. It always says: "Program failed to write at memory address 0x000000".
bradsprojects (author)  mikeblack1 year ago
Unfortunately you may have a bad / damaged microcontroller. Or perhaps you have a solder joint problem or short circuit on your microcontroller legs?
DeNuzio1 year ago
I'm making one in a IKEA Lack table :)
See here
bradsprojects (author)  DeNuzio1 year ago
Wow - that is fantastic!

Such a good quality build - much nicer than my table. I'll post links to it on my forum.

Thanks for letting me know, it's great to see other people building one for themselves.
How much would it cost for you to make this for me and ship it to me?
I live in the UK and I'm being serious! I want this but don't have the time or effort! A genuine response would be awesome :)
bradsprojects (author)  EpicNinjaPete2 years ago
Hi, I have made a new and improved version of this game that you can now purchase.

Check out:
http://www.kickstarter.com/projects/1411349329/retroball-nostalgic-fun-for-up-to-four-players

would love to make this for my game room
how much was the total cost
and the time it takes to make
ayoun2 years ago
Hi
I now create your work
However, there is a problem.
I do not know how program to use the source
I saw a read-only source
It seems using it
A detailed description of the photo step by step, please
it is my mail 100akwon@naver.com
please quick answer
Thank you for reading.
htht12542 years ago
hello, i programmed the pic with the super pong table version 2 and it's in an infinite loop with the star rotating, sometimes it shows the choose your players screen but i can't select the players, any chance you know what might be wrong?
tomcharlie2 years ago
Hey there. I've put everything together and when I turn it on a single row of led's light up and then go out very quickly and then about 4 in the middle do that same then they are all blank. Not sure if this has anything to do with it but i'm using blue LED's. What do you think could be the problem?
nianri63 years ago
Finally got around to finishing the game, and it's a lot of fun. I'm going to make my own version of the board, and use some of the small RGB LED displays to make a handheld game. Are there any digital pins not used in the program? I was thinking about using the open pin to toggle between colors over time. And if at all possible, use another open pin to somehow vary the voltage on the 2803's so the LED's fade in and out instead of jumping straight to the next color.
bradsprojects (author)  nianri63 years ago
Good work!

There are certainly some digital pins not used. In the revised version of the circuit board there are around a dozen extra pins that I have made access to and called it the expansion port. With the original version of the board these pins are still spare but harder to get to because you need to try and solder small wires straight onto the spare pins of the microcontroller.

As for varying the brightness of the LED's you would need some sort of digital to analogue converter which would make the circuitry a bit more complex. Or you could use pulse width modulation which would be quite tricky to do with your code.
Ah, alright. I was wondering what the expansion port was for. As for PWM'ing the LEDs, couldn't I put a transistor in front of the power pin on the 2803 and have the microcontroller turn it on when the color is supposed to be on, and then have the microcontroller send pulses to the base of the transistor when it has to switch colors? Or would I need too big a transistor to deal with the large amount of current it would need if all 32 LEDs in any given string are on?
bradsprojects (author)  nianri63 years ago
You could do that although just as you say, you would need a high power darlington pair transistor. I am also not sure what kind of delay would be involved due to the switching on and off of the power rail to the 2803. It could very well be something to experiment with though.
If all 32 LEDs are on, then it would need 640 milliamps. So theoretically a transistor capable of about 700 milliamps would work fine, right? And I have a PIC that was programmed to do rapid fire in xbox controllers, if I can find it I'll hook it up to an extra 2803 I have and see if there's a noticeable lag. The PIC has three modes, and in one of them it pulses two pins at the same time, so I'll hook up one pin to an LED, and the other to the transistor and 2803 as I mentioned earlier. The pulse speed is quite slow, about 6 pulses a second, so if there is a significant lag it should be visible.
kp.kody3 years ago
Hey man, the place is sold out of the boards! Is there any other way to get a pre made one? I really want to make this for my girlfriend. We are getting ready to move into our fist home and thought this would be an awsome house warming gift to ourselfs!
vnovaes3 years ago
I like to know if the features, at least, the lcd display for the score, its easy to apply, because its is very interesting...when this "update" on the steps will come out, bests regards...
googlexx3 years ago
does it matter what the wattage is on the resistors?
I meant the size of the SMR's. Sorry :)
googlexx3 years ago
any recommendation of which pic programmer I should get?
bradsprojects (author)  googlexx3 years ago
The best by far is the pickit2 (get one direct from microchip.com)
could I buy this one considering I don't need the board to program the chip right?

http://cgi.ebay.com/Clone-Microchip-Development-Programmer-Mini-PICKIT-2-/250844066095?pt=LH_DefaultDomain_2&hash=item3a6778b12f

instead of this:

http://www.microchipdirect.com/productsearch.aspx?Keywords=DV164120
bradsprojects (author)  googlexx3 years ago
Short answer is yes it will work.

Long answer is that they have copied the original manufacturers design and their code that is stored in the chips inside to make them.
awesome thanks :)
googlexx3 years ago
will these led's work?

http://cgi.ebay.com/Blue-Cylindrical-5mm-Hi-Intens-LED-1000mcd-10-2USNDJ-/130315640817?pt=LH_DefaultDomain_0&hash=item1e576adff1

Thanks!
bradsprojects (author)  googlexx3 years ago
Here's a much better deal for you, and they will work.

http://cgi.ebay.com/1000-pcs-5mm-Round-Blue-Superbright-LED-Light-blue-/110608686099?pt=LH_DefaultDomain_0&hash=item19c0ca9c13

If you were to buy the other ones you looked at, it would cost you about $400 (because you need 900 LED's)

the ones I have shown will cost you less than $30 for 1000 of them.
1-40 of 126Next »