Step 9Assembly
The assembly process is very straightforward and succinctly demonstrated in the video. The following steps basically walk-through the process shown in the video. I've also included some helpful hints at the bottom of this section which highlight some of the challenging areas.
Assembly instructions:
- Download and install Teensyduino software (link)
- Download Laser Ball source code and upload to Teensy (link)
- Charge Polymer Lithium-ion battery
- Disassemble laser modules
- Three-hole-punch diffraction-grating (~6.3mm dia.)
- Insert diffraction-grating pieces into laser module caps and reassemble
- Mark laser holes in tennis ball with masking tape guide lines and marker (14 laser holes)
- Dremel laser holes into tennis ball (~8mm dia.)
- Clean tennis ball (not shown in the video)
- Mark and cut main opening (~2.5 in)
- Insert battery
- Thread lasers and label their position (but don't press them in yet)
- Cut IR receiver hole (~5 x 7 mm) (not shown in the video)
- Solder wire leads to IR receiver
- Thread IR receiver
- Solder lasers to Teensy
- Solder IR sensor to Teensy
- Solder JST connector to Teensy (+5V and GND)
- Wiggle Teensy into tennis ball
- Focus the lasers by adjusting the screw cap (not shown in the video)
- Press lasers into laser holes
- Connect Teensy JST with battery JST to turn on the Laser Ball
- Wiggle JST connector into tennis ball
- Use remote to change Laser Ball patterns
- Impress your friends!
Helpful hints:
- The three-hole punch will get jammed on the diffraction grating frame so cut out the diffraction grating from the frame before three-hole punching.
- The diffraction grating sits between the lens and the cap not the lens and the spring.
- The Dremel tool is probably not the ideal way to cut the tennis ball. The rubber will tend to melt if the grinding cone is spun to fast. The tape will help prevent this and avoid gooey tennis ball from splattering all over the place.
- It's helpful to mark the hole locations with marker and the laser leads (with tape and marker) in order to try and cut off as much wire as possible and to figure out how you want to split them onto the Teensy.
- Split the laser positions into hemispheres in order to solder them intelligently and avoid wire blockages.
- Split the laser ground leads onto two busses to avoid a big solder blob.
- Solder the V+ leads of the lasers to any of the Teensy I/O pins. The pins can then be 'activated' in software. I soldered the fourteen lasers to pin#'s 4,6,7,8,9,10,12,13,14,15,16,21,22,23).
- Solder the IR receiver to one of the interrupt pins on the Teensy (pin 5,6,7,8) to use an interrupt to detect the IR remote rather than just continuously polling the receiver.
- The recommend making the main opening slightly larger than your battery width to give more room for squeezing-in wires.
- Put the battery in first! It will be extremely difficult to get it in there if the laser wires are in the way.
- Don't press the lasers all the way in before inserting the Teensy. You will probably break a lead
- I used some hotglue, rather than heatshrink/tape, to isolate the solder connections on the lasers and IR receiver and to strengthen the solder joints
- There's really no easy way to get the Teensy and leads into the tennis ball. Take your time and try to avoid putting to much stress on the components.
- Make sure to insert the Teensy with the USB port near the opening in case you want to reprogram it later.
- I used JST connectors as a physical switch but there's probably a way to make this more compact.
- Turn on the laser ball while trying to press in the lasers to see if you break any leads. That way you can fix it before you're stuck with a laser ball with a broken laser.
- Focus the lasers before pressing them in. The lens must be positioned using the screw cap/spring. I used a bit of hotglue to hold the cap in place after focusing.
- There's probably a nice way to seal the main opening but I've basically left it as a seam in order to gain access to the guts in the future
- I'm not sure what the best way is to reprogram the Teensy after its been inserted. Accessing the USB port is fine but pressing the reset switch is not.
- Test the Laser Ball after soldering but before inserting the Teensy and lasers. The earlier you catch any dead lasers the better.
- To recharge the battery: remove the JST connectors from the tennis ball, disconnect the battery from the Teensy JST and plug into the Li-Ion charger JST. Then plug the Li-Ion charger into a USB port/charger with the appropriate USB cable.
| « Previous Step | Download PDFView All Steps | Next Step » |















































































I double checked that the Teensy reset and that my Arduino software is set to Teensy 2.0. I have no idea as to why the lasers will not light at all. Please help.
I am not sure what to do when uploading the laser ball code, because the ball is till unresponsive after uploading. Do you happen to have an updated sample of the code or the most recent working version that you could send me or post a link to?
http://dl.dropbox.com/u/43787305/LeoneLabs_Laser_Ball_source_v1_3.zip
It corrects some minor errors in the other version and makes it a bit easier to make custom patterns.
Good luck and let me know how it turns out.
I have seen the photo of your laser ball, and you comment to me that it works well, him pediria that if you could order me the electrical scheme of connections, and you indicate me where to obtain the code and with that he programmes to programme the plate teensy. You great agradeceria.
A greeting.
thanks!
I'll add this to the soon-to-be update...
PS - thanks for helping wunder-bar
so, if the lasers don't light up is that mainly because the program is not on the Teensy? will they only light up at all if the programming is perfect?
It's 2 things to upload to the teensy, right? Source Code and Remote codes???
I got the hex files to upload to the teensy to do fast or slow blink. Does that mean I did something right??
Please help. I'm making this for a friend who is using it in a high school play in less than 2 weeks!
Thanks in advance,
Bill
@osprey-npt - the programming can be tricky at first but I'm sure you'll get it with a bit of tinkering. If you've got the "Blink" program examples working then that's a good first step. As expertnoobz pointed out there may be some compatible issues with Ken's IR library and the latest version of the Arduino but it should be manageable. It might also be helpful to run through Ken's IR examples to make sure everything is connected up correctly.
Just for posterity, when you click "upload" all the tabs in the Arduino sketch are transferred to the Teensy, but the "remote codes" are there just for your programming reference in case you want to add some functionality.
Good luck!
I have some programming experience from collage and have always wanted to get into the hardware side of things. I never really found a project that really spiked my interest, but the Laser Ball sent it above and beyond! I'll help in any way I can. I love this Instructable and can't wait to post a pic of the final product!
I made 4 as Christmas presents for all my friends.
I would like to build the Laser Ball and have been collecting the hardware for a couple weeks now. But, I’m having problems with the software:
I have the latest Arduino 1.0 software, downloaded and installed the Teensyduino software, Ken Shirriff’s IRremote library, and the Laser Ball source code. However, I am not able to compile (check) the Laser Ball source code. I get tons of compile errors…
Please help me. What part of the puzzle am I missing?
(Also, I ordered the Red Lasers as recommended from DealExtreme. Note that these laser modules do not have an adjustable (removable) lens. It was very difficult to glue the Diffraction Grating to the front of these lenses.)
Thanks for your Instructable.
Using two sets of pliers, gripping very tightly to avoid shredding the modules I was able to get them unscrewed. Some are tighter than others.
Not sure about your code sorry. Maybe some examples of the errors?
Although it is a little fragile, I glued the Diffraction Grating to the front of the lenses. I wasn’t as adventurous as you and did not attempt to unscrew the lens. Perhaps next time.
Also, the compile issue was resolved. I needed the IRremote library from Teensyduino installed. The project is very interesting! I have made changes to the timing portion of the code, and added two more lasers.
Thanks again for your kind response.
the +ves of the lasers go to the teensy, but where to all the -ves go? ground?
"Solder the IR receiver to one of the interrupt pins on the Teensy (pin 5,6,7,8) to use an interrupt to detect the IR remote rather than just continuously polling the receiver".
i assume pin 5, as 6, 7 and 8 are taken up with lasers... is this how it is set up in the code?
also, which pin goes to the teensy and where do the other pins go?
thanks!
Pin 5,6,7,8 are special because they include interrupt functionality, meaning if they receive a signal, that input can be recognized regardless of the state of the animation loop. The lasers can be connected to any of the Teensy I/O pins, the pins are then called out in the code as outputs. If you connected the IR receiver to pin 5, then that pin would specified as an input rather than an output.
This is fairly common question, especially since I left out a wiring diagram (and I call myself an engineer!...), I'll update the Instructable soon to include this useful graphic.
Thanks for the feedback!
Again, I stand in awe of your work. You do credit to the entire ilk of hackers.