Rss

  • twitter
  • youtube

Archives for :

NBA Hangtime Pinball Backglass COMPLETE

 

Well.. The Home Made Hangtime Pinball project is coming farther! Today, I finished the back glass and scoreboard system. The whole scoreboard system was made from scratch with 10mm and 5mm LEDs with Shift Registers and Transistors. Its running really nice and thought to share it all with you! It really is a treat seeing this project come to life! Here is the video!

 

Its really nice to have the pinball cab already in place, I will be painting over those tutles soon, even though I feel like im sinning! But what a better way to bring an old pinball to life than reincarnating it into a homemade pinball!!

The artwork changed a bit, here is the actual print!

I really wanted this pinball to stand out among the rest. This is why I not only have a pinball DMD (well kinda) display, but thought an old school point counter system would be retro and cool! So my mission was to include a basketball scoreboard into the back glass artwork, and I must say it came out better than I expected. I built the whole thing out of LEDs and Shift Registers basically. As you can see in the pictures below, there are a few different “modules”. They all connect together over ribbon cable, which includes the latch, clock and data for the shift registers, plus a couple of grounds, +5v and +12v. The Arduino Mega is what is controlling all of these along with sending signals for the other arduinos that take care of the other functions, like audio and the DMD (check out my other posts for details on those).

Alot of mess, but it does all make sense. These are for the scoring system of the scoreboard. These are essentially 7-segment LED Displays made out of 10mm orange LEDs.  Its hard to see, but each board has a 10-pin IN and OUT ribbon cable connection to run the shift registers, ground and power. I then needed to create the Period, Possession, Overtime and shotclock LEDs. Which is below.

Again, the shotclock is basically 7 segment LEDs, but this one out of 5mm Red LEDs. Then the est are more 10mm Orange LEDs, the 4 shift registers power all of these. Some may say you could get away using less shift registers since there are unused pins (especially on the third digit of the player scores) but they are cheap enough, that using them like this made it much easier to program and looks cleaner. This board again has the 10-pin IN and OUT on the back to link with the player scores.

Next I needed to recreate the backlight wood door. I like using actual bulbs instead of a fluorescent light or LEDs becuase it gives it a more retro, real pinball feel.

These lights are controlled by a lighting board, that uses shift registers and mosfets. This board gets its commands over I2C so it can work while the other things are going on. You can see this board in the pictures of the inside, and it will be upgraded with much more MOSFETs and transistors soon. So after installing this, and getting all of the LEDs aligned with the artwork, it looked like this.

Looks great to me! To really see it in action, check out the video at the top of the page!

Here is also a glance at the inside. After I finish getting it all organized and finished, I will do another post, with more details.

NBA Hangtime Pinball LED Screen Test

Next update on the NBA Hangtime Pinball is the LED screen. I have been wanting to make this for quite sometime. I am using 4 Sure 2416 LED Matrix boards and they are using an arduino Uno for communication at the time (It will get a standalone Mega after I finish the programming). The code for these boards are available all over the web, and I will post mine once I finish it becuase it is a mess right now. I am using the Arduino Mega as my master cpu and it is sending commands via I2C to this screen (check my blog on the sound boards for more information). So as you can see in the video below, it is running the LED screen and all the sound at the same time! I am getting closer! It can display small, large and graphic fonts and is running smooth as of now. Now I just need to work hard on making it look better and run smoother, which always seems to be the hard part……….

 

Multi-Tasking Arduino Pinball Audio

 

Well, another project has already consumed some of my time. I have decided to do a large project that will take up alot of time and would be a great learning experience. I have decided to make a pinball machine! And what a great theme, NBA Hangtime! I use to play this game growing up and still do, I even have a MAME machine sitting inside a Hangtime Cabinet. What makes the game excellent are many things, like the dunks, the minimal rules, 2 on 2, and who can forget the audio??? “Ooohhhhhhhhhh… BOOM Shaka Laka!”. Well I thought that the audio board would be the first thing to do, since it would make or break this machine. I am very pleased with the outcome!

Parts I used:

3 – Arduino WaveShields

3 – ATMega328 with Arduino Bootloader

3 – SD Cards

  1. Misc parts for the ATMegas (Read this for standalone ATMegas)

  2. Arduino Mega 2560 (Any will work, it sends the commands)

I recommend reading up on the I2C protocol if you do not understand it, it is VERY useful! (HERE)

So, one of the main problems people have with ATMegas are the fact you can not do multiprocessing, so in this example, if your playing a sound, you can not play another suond till that first sound is over. This is pretty much unacceptable for pinball machines. You have background music, and other effects happening all at once. So this is where the amazing I2C protocol comes in to help. It allows you to hook up many ATMegas taht can talk to each other. This allows you to have a Master sending commands to other arduinos so that they do the processing while the master goes onto other things… Soo.. Multiprocessing! (some micro-controllers can do this themselves, like the Parallax Propeller, it has 8 cogs, which are separate processors, but I wanted to do everything with Megas, since I understand the code, and its a challenge!)

In this last picture you can see the horrible ammount of wiring I had to do to get it all to work. But what i want you to look at is those Blue and Green wires coming from that molex connector. These are the I2C lines. They are just daisy chained from one mega to the other. If you look at my code, i send them commands based on what is happening. Each Mega has a separate address, in this case, they are 1, 2 and 3. So I send this command from the master…

sendcom(11, 27);

void sendcom (byte x, byte y) {

    Wire.beginTransmission(2); // transmit to device #2

  Wire.send(1);        //sends a command to tell it is “On”

  Wire.send(x);        // sends directory number

  Wire.send(y);       //sends file number, or “random number”

  Wire.endTransmission();    // stop transmitting

}

Then the slave arduino #2 gets 3 bytes. It recieves..

(1, 11, 27)

So it takes those and plays a file off the card (check the waveshield website for more info on that)

1 means its on, then it looks at the 11 (which on the SD card is the files in the 1100s, like 1101, 1125, 1131) and then it sees the 27 which is file 27…. in the 1100s…. so file “1127.wav”. The reason for this is I have some math that allows me to do random plays. It is constantly adding the int “randomnumber” by 1 till it hits 51, then tells it to go back to 0. That way when I use “randomnumber” like…

sendcom(11, randomnumber);

 

it will tell the slave to play a random file in the 1100s. This works great when playing pinball to keep things fresh. There is ALOT of possible combinations with this!

 

Getting all of the audio was very very time consuming. I used a program called M1. It dissects the game rom file and I could extract all the tracks. This took a very long time and I ended up with hundreds of sounds, commentator sayings and music. Now I have all of that organized and can make my own audio on the fly. Way Way Way better than trying to record the audio in game, it would have horrible background sounds and whatnot. I probably wouldve given up on the idea if I didnt find that M1 program and got all the sounds by themselves.

 

HERE is the M1 Program.

 

Source Codes:

 

master.txt

slave.txt

 

I am still working on the code and the way it will all work. This is going to be a LONG project, and im sure ill have other projects in the middle of it, but it will get done eventually. If you have ANY ideas for the machine, please email me, let me know what you got! Represent NBA HANGTIME LOVE!

 

Arduino Powered JEEP Wrangler

This has been a long process in the making. I started with this idea awhile ago and tried out different ways to program microcontrollers. I first started with one of the “NerdKits”. Now this was a good kit, but when you were done with there tutorials, there wasn’t much more to do. I then went with the Arduino and I wish I would’ve started there! It is excellent for the beginner and pro. So this is my first arduino project and my first time really programming anything except HTML. So check out the video, then read on.

Before I used an arduino to control everything, I used actually switches as you can see in this picture

But this was definitely not good enough as I wanted to add more things and its just to easy. So the challenge was to make the JEEPuter. I first started out making it on a breadboard (i dont have pics of this) But after I had the basic idea in my head with a somewhat working prototype, I started building the housing for it. I used sheet metal and plexi for the faceplate. Along with using some label paper to make the art work (if you could call it that)

I used some basic Radio Shack momentary buttons and a 20×4 LCD display. It looks really good behind the plexiglass front of the faceplate. All of the connections hook up threw molex connectors to make it easy to work on. The random cuts in the plate are to make it fit in the tuffy overhead mount easier. It doesnt looks as ugly when installed as you can see here.

I used a Arduino Uno and left the whole board in there instead of making a standalone board so I could program it easier. The arduino is outputting all of the “outs” to 3 shift registers. One register is inside of the JEEPuter box, the other two are on there own board that is installed inside the relay box. Here in this picture you can see the Arduino with a screw shield above it with 3 relays. Two control the garage door opener and RF Garage Lights. The other is actually turnign power on to the shift registers. Reason for this is when the arduino boots up, the registers all go high. This is an issue when you have a starter hooked up to them.

Then the other two registers are on this board. This board I made specifically as the control board for the relays. It has two 595 Shift Registers along with 16 LEDs. Each LED represents an output coming from the registers. THis made it easy to program without hooking up all the relays and helps to troubleshoot. This board has  a 25 pin connection on it that outputs to each and every relay.
And then I had a breakout cable go from the 25 pin output to all of the relays. I only used 20 pins, 16 outputs, 2 grounds, 2 5v+. These go to each relay on theses relay boards I purchased on ebay. I could have made my own, but this was easier and better to have printed PCB for this.

The relays were then put inside a project box from radioshack. This helped insulate them from shorting out on the jeep and kept it all in one place. I used plexi and screw terminals to make hooking up easier. This was a bit difficult to get it all to fit as you can see in these next shots.

I then installed the shift registers board inside and added a fan to keep it cool.

There are also a couple of sensors hooked up that you can see in action in the top video. There is a Light sensor, Temp sensor and a RTC. (I may add a carbon monoxide sensor). the Light sensor value is brought into the arduino and divided by 20, then that number is used to turn off and on lights depending if its dark outside. (this is also selectable per light). You can change the sensitivity in the diagnostics mode. It allows you to tell when to turn lights on and light off. This gives you a dead zone so the lights don’t flicker when you get close to dark but still light out. These numbers will be saved in the EEPROM of the arduino. The Temp sensor just outputs F and C on the display. The RTC provides the time and date and you can change if its either Daylight savings time or not in the diagnostics. This helps so you don’t have to set the clock twice a year.

I also added another arduino (standalone)  that had a keypad attached to it with a couple relays that control turning on the power to the jeep and ignition if you type the code in it. So this gives you the ability to not need a key to use your jeep, only a code.

When you type in the code, it turns the Jeep on as if you turned your key to the “On” position. This then turns on all the accessories as well. There Starting of the engine is done threw the arduino JEEPuter uptop. The original key still works perfectly fine. To turn the Jeep off, you just hit the <– button on the keypad, and it shuts down. Check out the pictures to see the arduino setup for the keypad.

Download Source Code  <—- Its not pretty, its my first!

My Shop/Workplace

So I love garages and work benches and tools.. hell, what guys don’t? I always enjoyed watching videos or looking at pictures of other peoples work places, so I thought I would share mine! I have plenty of tools that are necessary, and some that are not (can have fun tools too!) Everything isnt shown, but alot is. Some of the basics are your wrenches and such, but having a Dremel, Soldering Irons, wire spools, power tools, power supply, drill press, band saw, a stool (most important!), misc screwdrivers, ext.. and a automatic wire stripper is EXCELLENT!

This one is great for stripping wires quick. It auto adjusts, and strips, and gets read for the next wire all the the squeeze of your hand! Anything from 26 Gauge to 8 Gauge! Its GREAT!

Now another thing I love and do NOT regret purchasing is ALOT of wire on spools of different colors! I always thought when working on arcades and pinballs, how great having the color coded wire system! I even love to reuse old wire harnesses because of this very reason! So I went out looking to get a bunch of same sized wire in different colors and make a easy way to dispense them! Well this is what I came up with!

There is approx 5,000 ft total wire, 500 ft of each color! I picked up all 10 spools for around 130 dollars total. NOT BAD! All the wiring I have been doing lately has been so easy and nice! Plus having the wire fed up to my bench makes it nice to not see the spools and you cna practically take as much as you need without working. Im sure Ill go threw red and black the fastest, but thats ok! Much better than stripping wires from old arcades (even though I still do!).

Here is a quick video of my place!

Call Of Duty : Lan Party


Ok, so its not as crazy as this picture, but I still think its a bit overkill for just a couple hours….. but doesn’t mean I wouldn’t do it again! Was great and was non stop for hours. I don’t play videos games to much, but sit me down in front of a 52” LCD with 10 other people playing COD, and you got me hooked! Check out the video!

Mini MAME Cab from Netbook

Well this time I have done something that has done before, but I believe I have a improved version! A Mame table top cabinet running off of a netbook pc (Which is also battery powered!). This is a Christmas Gift to my Aunt, Uncle and there Kids. I have produced MAME Machines before, but this one was completely from scratch. My others I have taken original Cabs and stripped them empty and added all of the components (NBA Hangtime Cab). This one I used 1/2 MDF board and built this off the top of my head. I already had the netbook, so I based some of my measurements from that.

Supplies Needed-

-1/2 MDF (3/4 could work as well)

-Plexiglass

-Netbook (I used a eeepc 901)

-iPac 2 Player ( Link here to Ultimarc.com )

-Buttons and Joystick (Link here to Happ Controls)

-Label Paper (Full page @ local Office Supply Stores)

-Assorted Tools, Wire and Screws

-1 1/8” hole saw

First I started off tearing apart the screen on the netbook. This allowed me to get some exact screen measurements so I could be sure I would have the clearance. Sorry I do no have any pictures of this, and since every netbook is different, yours probably will be. Just take a quick google search if you not comfortable doing this yourself.

After determining the dimensions, I cut out my pieces with my MDF board. I made all of the pieces and predrilled the holes so it would not split. Then, using a router, I cut out the plexiglass using the MDF as my stencil. Plexi is hard to cut, so go slowly.

I left the back to swing open so it would allow me to work on it, but also to be able to access the body of the netbook. This gave me a mouse and keyboard always on inside of the machine. I also went ahead and predrilled the holes in the wood for the controls and joystick. (not all are done at the time of the picture). Also as a side not. Dont try to cut the plexi with a holesaw, doesnt work as well as you would like. I applied the plexi to the machine, then use d a dremel with a cutting bit. This acted like a mini router, and cut the plexi perfectly. I then removed the plexi and painted it black.

And then had to add artwork. I am giving this as a gift to my uncle and his kids, so I went with a Galaga theme. He has always said he wants a Galaga Arcade cab :-). The graphics I used are HERE (Arcade Art Gallery). But you can obviously use any art work you would like! I then reapplied the plexi over top of the graphics to give it a glossy look, but also protects the artwork from wear.

Then I added all of the buttons and wired them up. This is an easy process. Once you get the Ipac, youll see that they make it very user friendly. I went ahead and added molex connectors to make it easy to disconnect things if I ever had to. After adding the controls, I went ahead and wired up and mounted the LCD from the netbook. This was actually easy. I just took a piece of MDF, cut it to fit where the screen would go, then i set it back the same as the screen is deep. This allowed the screen to be flush. I used the stock mounting hardware and screwed it right to the wood.

I also cut a hole in the MDF right behind the connector of the LCD so I could easily run it right to the computer. I mounted the computer directly to the back of the cab that is hinged for access. There I also mounted the ipac and a wiring diagram. As you can see in the picture below, there is no room to plug a USB cable into the computer. So I soldered it directly to the board. Very similar to my LCD Apple Logo project. (link HERE). I also added a power button to the top of the cab and soldered it directly to the board. Makes it easy to turn off and on.

That is pretty much all that is needed! I am using Maximus Arcade (link HERE) to run the machine, which I highly recommend. Makes having multiple emulators and easy task! Now just enjoy! have any questions, send me an email!

Home Soda Fountain

As seen on
Hacknmod.com

Wow, It has been a long time since I have posted anything up, I havent been doing many mods lately as I have been moving into a house and being busy with work. But I have found time to do something I have always wanted! A Soda fountain in my house! I really dont even drink that much soda, but the cool factor is threw the rood in my opinion. With this along side of my Pinball machine and Mame Arcade, this is the ultimate bachelor pad!

So I purchased a 8 Head Soda Fountain / Ice Dispensor on craigslist locally. These units are alot bigger than you would think! I wanted it to look like it belonged in my house, and not a huge fountain sitting on my countertop. So I came up with the idea to build the unit into the wall. So the Main fountain is in the pantry with only the front showing. I built a counter top right under the unit and trimmed it in. This makes for a very clean look. The soda lines run threw the wall into my garage where the bag-in-box soda syrups are hooked up to the pumps and the carbonator runs soda water back to the unit. The unit itself actually does the mixing of the syrup/soda water (post-mix system). I built a stand for the syrup as well.

Keeping the system cool is the difficult part and is usually what keeps people away from having a system like this setup in there home. The machine will go threw about 200 lbs of ice in a week. That adds up alot over time! Especially not fun trying to get all those bags home from walmart. So I got a ice maker. I was going to install it on the top of the unit, but decided against it so I could use the Ice for other things as well, like filling coolers!

It all came out very well and I was very pleased! I am enjoying some Dr. Pepper as we speak!

Great Kitchen Addition!

Rest of the unit inside the pantry.

All of the Soda Syrups/Pumps/C02/Carbonator in the Garage being pumped inside.