Let's Make Robots!

Pong

Do you remember when you were a kid, and you spent your time playing pong? Neither do I. But why not bring it back? Yes a portable pong game. 

So i set out on my quest...

After some decisions, i decided i would make a pong game using 6 LED matrices, 6 MAX7219CNG, 2 potentiometers + KNOBS!!, and some custom PCBs. So here is where i am at so far, just have a collection of parts but im working on it, still waiting for the PCBs to arrive. 

 

The Matrices are from ebay, they were like $11 for 6 including shipping. (link)

 

 

 

Can you have pong without a good set of knobs? These knobs are from Sparkfun. What do you look for when shopping for knobs? you look for how shinny they are, these won. 

 

 

The MAX7219CNG is a LED matrix driver IC from Maxim. They make life a little easier and have some different power saving settings.

What kind of guy would give you free ICs? An awesome guy. I got these from an awesome guy who got them as samples. They retail for $10 or so. 

 

 

Here is a picture of the PCB design, its basically just a breakout board.

 

 

PCBs arrived! I used seeedstudio again because i think they are awesome. Its 10 PCBs for $20, they actually sent me 12 PCBs this time :) thats about $1.70 a PCB. My design only needs 6 of them.

So here is a picture of all the parts i have so far for it. I decided to use my Duemilanove for this which is kinda a big deal for me, i normally just use it for prototyping but i think its time it gets put in a project. I need to design a case for it so it looks nice and is easily portable. Thats all until i get my custom PCBs in the mail. 

 


 

UPDATE 10.05.10

I soldered the boards up. All that is on there is a dip socket, resistor, and 2 caps.

 

I wired one of the matrices to one of the boards to test it, i must have switched some rows because it doesnt display "arduino" perfectly, some of the letters are upside down or pieces in the wrong spot. I confirmed this by lighting up single LEDs, i will fix this soon and post a video. Till then, here is a picture of it trying to display an "A". Oh and in this picture the LED brightness is set to 12 out of 13, so they are bright!. I will need to dim them down to actually play pong and not go blind. 

 

 


 

Update 10.10.10

I made a processing sketch that talks to my arduino over serial (see video). If i click one of the squares on the processing sketch, then that square turns red and the corresponding LED on the matrix lights up. When i have the whole pong screen constructed, i will make the processing programming to fit so i can design animations and have it give me the code for it. I am liking the ease of using these max7219 LED matrix driver. 

 


 

Update 10.11.10l

Ok the processing sketch can now turn off LEDs that are on, i just had to add an array to keep track of the state of each LED and a little bit of other code to make this happen. Also the processing sketch outputs the array that would be copied and pasted into the arduino code to display the image designed in my "animation editor". 

Here is a example: (too many smiley faces? i will draw something else next time)

Here is a smiley face i drew on my processing editor:

you can see in the processing IDE next to the smiley face that there is a black area with text in it, this is where the code for the arduino is printed out. 

Here is a screen capture showing the code for the array that would be put in the arduino sketch to display this smiley face. 

I just started working on the code for the processing sketch that will be actually used to make designs on my pong screen.

 


 

UPDATE 10.17.10

Went to RadioShack today and picked up the rest of the things i needed for my Pong Paddles. The pong paddles are made with a 3"x2"x1" ABS plastic project box from radio shack. This box holds the audio jack (i used an audio jack but no audio will be transmitted on this cable :) ), potentiometer, LED, and hides all the wires. 

 

there will be matching audio jacks on the pong screen. The audio cable supplies 5v, Gnd, and signal to the controller. 

Here is the assembly:

 

3 holes have to be drilled in the project box, one for the pot, LED, and audio jack.

 

Here are the parts just stuck in to get an overview of what it will look like. The audio jack has a little nut that keeps it on.

 

The respective connections are made to the potentiometer and audio jack.

 

Then the LED is connected to a resistor and then wired to power. A bit of hot glue holds it in place.

 

next the pot is glued in place. 

 

Screw the top on and glue the knob on and its done. 

 

A quick power check...

 

and there you have it, 2 pong paddles. 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Hey Patrick, Nice pong project!!

 

I'd like to see more detail in that Processing code. Are you using a 2D array there?  I am doing some similar animations and then outputting the data to arduino but not for real time.

Cool! Should be real fun to play! Hope to see pics and vids of complete pong console! :D

+1 for steampunk design :D

Looking good Patrick. You went from concept to PCB pretty darn quickly!

I don`t see any mounting holes in the boards though, could be a pain in the butt to fix 6 of them somewhere. I thought a good idea would be to make them solder directly onto the matrix pins as a backpack.

I 2nd Grogs notion for a steampunk case. An old school case would suit an old school game.

 "Pong" has progressed well and is looking nice! You will have to turn down the LED's a bit or have a warning label on the box like the weld shop has to use.

 Great job as usual.

Patrick, you should  steam punk the box!

Well, not applicable exactly but you get the gist.

 

Will try my best to!

Looks like good fun! if you finish it up nicely like your chess board, it could make a nice "wall decoration" - like someone would have a dart board hanging, this could just sit there with it's 2 controllers, ready to pick up for a quick game :)

Hi Patrick

I must be missing something here. You say that you will use MAX7219CNG to drive this game? But as fare as I can see these are drivers for 8-segment LED's and built for driving a matrix. Have you read this http://www.electro-tech-online.com/attachments/general-electronics-chat/14010d1187219058-driver-8x8-rgb-led-display-introduction-driving-led-matrices.pdf

I think this will be very hard to get working compared to using shift registers. But then again, you have probably looked more into this then me :-)

Yes they are made to drive a 8x8 led matrix like the ones i am using. Should be pretty easy actually, did i mention there is even library for them? The pong programming will simply be a big array which will be manipulated to produce the game, and then i will simply display the array on the matrices. I have worked a lot with arrays on the chess robot, maybe i am missing something from your question? I plan on breaking the array up into 6 parts, and there will be a bit for each led, simply display that. Here is a nice tutorial http://tronixstuff.wordpress.com/2010/07/09/review-maxim-max7219-led-display-driver-ic/

Hey, what are the led's? 2-color,? RGB? Already designed PCB's? Man...