So exactly a year ago while making plans with my borther-in-law for the 2016 Burning Man event I came up with the idea of an interactive light up ping pong table. This post sums up what we did over the past year and future posts will continue to follow this jouney.
Concept- An interactive ping pong table lit with RGB LEDs. Basic play- Table is lit up from underneath in squares, each time you hit your opponents lit up square it goes out. the first player to black out their opponents side wins.
An endless variety of games could also be programmed
First build concept-
Create individual tiles, each containing a piezo, LEDs, a chip and I/O connectors. Piezo data is fed back to a processor and light data sent back out to the tile. Many pros and cons to this.
Other concepts were to use a capacitive touch tiles, Kinetics or LASERS! Then we hit upon using 3 or 4 piezos with a timing script to determine the location of the hit. An internet search for similar code uncovered a 1998 open source project from MIT, PingPongPlus. this was revised in 2011 and is well documented.
For the first prototype we will be going with the first build concept and be using only 4 tiles. Jon(Dayton) is working on the code and I(Tom Stringham) is building the light boxes.
Here is my daughter "bata testing" out first board
Ordered components to make prototype and the PP++ board for timing location. Talked to Ben H. about initial programming, he thinks we should be able to modify the existing code and add to it.
Here is the first bread board
Jon built first prototype with Arduino Nano reading two piezo sensors and driving two RGB LEDs. Tom built a four tile box with rings of LED strips. Next step is integrating a second Nano via serial and driving full LED strips.
I fried 3 nanos! Think I should stick to durable hardware:-)
I Think we should run 2812 lights to free up pins, will look at 6” and 10” squares to make up coffee table size games.
Wired up 2 of the tiles , worked OK. Jon added to code and now has 4 lights working with auto reset.
All four tiles working and 2 games,
Made a protoboard for jon to test 2811 chip lights with 8 tiles. he has it working and is testing Fast LED and Neopixle libraries, looking very fun.
Doing some testing on light arrangements for the 10” tiles. Trying to get the best diffusion in the least amount of space
Made 2 test tables tops with 8 squares each.
Ben is working on the code for the full size table, we will use fadecandy for the light control.
Wired up a breadboard for one side of the full size table.
Small table working well, will redesign to simplify build. May change to solid top.
Have been testing half of a full size table with Ben's code. Ben has made a nice visualizer. Getting good hit data but but repeat-ability is poor. Will test piezos and try different piezo locations.
Sent Ben the hardware/PP++ board, he has added a few components to protect the piezos and clean up the signal. Now getting a very clear start of each signal, this should greatly improve hit detection. also playing around with different amplifications.
Put together one half of a table for testing
Tested acrylic samples for light diffusion.
Updated the pppp board to match Bens. Ben ordered 3 custom PCBs. Tried sensors at different locations, yielded similar results. Having issues with accuracy as the Y direction increases. Ordered new larger piezos. Will mount piezos under table on stands with a foam backer to insure good contact. Redesigned the table so the top can be glued on as well as the bottom to increase strength. Designed a nice solid base.
Ben rewrote program to get better accuracy, getting much more consistent results. Still having accuracy issues with an increase in the Y direction. For some reason velocity seems to affect location???
Got the lights wired up, this will need some rework.
Built full size table, one half from plywood the other from expanded PVC. I like the wood is better. Went thru dozens/100s of iterations on piezo attachment/placement and OpAmp filters. Could not get the table to work, too many variables to sift thru. Ordered a 4 channel oscilloscope to better see what was going on. Great tool!
So with a few months away from the table and now armed with a great diagnostic tool that can show me exactly whats going on at each step I finally
GOT THE FULL TABLE WORKING!