Monday, July 27, 2009
Monday, April 20, 2009
The Arduinome in Action
As promised, here are a couple of videos showing some of the first times I've used the arduinome.
Arduinome Startup Sequence
Arduinome Nerdscroll Demo
Arduinome SevenUpLive Test
I'll post more videos one I get used to using the interface.
Arduinome Startup Sequence
Arduinome Nerdscroll Demo
Arduinome SevenUpLive Test
I'll post more videos one I get used to using the interface.
Sunday, April 19, 2009
A Fully Functional Arduinome

As I said, here are more details on the completion of my arduinome. As I mentioned before, I only ran into a single issue once I had all of the components assembled. When I first plugged it in after uploading the firmware, all of the lights were lit and the startup sequence ran turning each row off in succession, instead of turning each row on. A quick search on Google brought up this post on PeterMark's blog with the exact same issue. Upon further inspection, I found that I had indeed swapped the IDC headers for the input and output. Swapping the connections resolved the issue and the startup sequence activated as planned.
I've run through the standard test patches using MAX (monometest, vu_spec, boiiing, etc) and everything is running smoothly. I've even been able to play with SevenUpLive,which is the shit.
I've posted a couple of pictures showing some detail on the final setup. First, this thing is BRIGHT. The LED's are rated at 6000 mcd, color and intensity seems to be uniform, and they're a nice deep blue. My camera can't really handle how bright they are, so the picture above is a bit over saturated and looks much lighter blue than the actual unit. The "dot" effect isn't as noticeable in person, either.
For now I have to keep the board raised because the wiring from the breakout board to the buttons is a little short and I don't want to stress any of the connections. Once I figure out the whole enclosure situation I think that the short connections will help manage the wiring situation and keep the insides of the box clean. It's not something that anyone will likely ever see, but it should keep troubleshooting easier should problems arise.
Saturday, April 18, 2009
SUCCESS!!!
I've got my arduinome up and running. I only ran into one small issue and it was resolved quickly. More details in a future post!
Thursday, April 16, 2009
Assembly Update
Here's a quick update. I wish I was able to post to this in a more timely fashion, but traveling for work 4 days out of the week make it difficult to put together meaningful posts (and actually work on the project).
Anyway, this weekend I'm hoping I can get some time in to wire the breakout to the button board, upload the firmware, and (hopefully) start her up. I've also got a new multimeter, Panavise Jr vise, and hot air rework/temperature controlled soldering station coming in, so future projects should be easier to put together.
- I pulled the trigger and soldered all of the LEDs and diodes to the boards. Despite having a fire started, my MacGyver'ed continuity tests show that everything seems to be connected properly.
- I was able to get the boards held together temporarily with normal tape. As long as I'm careful with the assembled board when moving it around, it should hold until I figure out the enclosure situation.
- I've got the rows and columns wired together with solid core wiring. I know that there's a fair bit of talk on the monome forums about using stranded vs. solid core, but these connections will only be subjected to minimal mechanical stress and should hold.
- I ordered ribbon cable and IDC connectors from Curious Inventor. I've got the cabling from the unsped shield to the breakout board put together and now just need to wire the breakout to the actual button board. I've been reluctant to do this until I am absolutely sure I've go the wire ordering correct, but will have to pull the trigger on this to move forward.
- I was able to cut the breakout board off of the shield using a Dremel tool. This was a little nerve wracking as the perforation is fairly close to one of the traces going to the 164, but I was able to get through it with a pretty straight cut.
Anyway, this weekend I'm hoping I can get some time in to wire the breakout to the button board, upload the firmware, and (hopefully) start her up. I've also got a new multimeter, Panavise Jr vise, and hot air rework/temperature controlled soldering station coming in, so future projects should be easier to put together.
Wednesday, April 8, 2009
Progress Update
So it's been a few weeks since I've had the chance to update, but progress has been made! Here's what's been going on:
BTW, a new version of the firmware is out that includes code for reading from the Arduino's analog inputs. The code is pretty brief, but after looking at how they put it together it's a lot better than I would have come up with.
- I determined that sanding the LEDs was definitely the way to go. The light spread was pretty narrow, but they're bright enough (6000 mcd) that enough light bled out to illuminate the sides of the buttons. Given this combination, I just had to sand the top of the LEDs to get rid of the dot effect and provide enough diffusion to saturate the buttons. BTW, sanding 64 LEDs by hand is a bitch, if I build another one of these I'm going to spend time finding LEDs with a very wide spread.
- I've completed soldering the LEDs and diodes to the SparkFun boards. I was hesitant to dive into this because 1. I was (and still am somewhat) worried about differences in intensity/color saturation across the LEDs, 2. Am relying on a $20 firestarter soldering iron and have heard all the horror stories about them crapping out or destroying pads.
- I put together a guerilla continuity test (still waiting on Amazon for my multimeter) to check the diodes were working properly. Essentially I had an LED and resistor breadboarded and created a circuit (Vcc->switch row n->diode->switch Gnd (col) n->resistor->LED->Gnd) to ensure that I had continuity through all of the diodes.
- I put together a similar test with the LEDs, but just had to put a resistor in the mix and run through each row-column combo to make sure all of the LEDs were working properly.
BTW, a new version of the firmware is out that includes code for reading from the Arduino's analog inputs. The code is pretty brief, but after looking at how they put it together it's a lot better than I would have come up with.
Tuesday, March 24, 2009
Start It Back Up, Boss
So I had a nice little surprise today when the shear cutters I ordered arrived a day early. That, combined with picking up the final resistors I needed from Radio Shack, let me finish up the Unsped shield (with the exception of the headers on the breakout board) and solder the diodes to the first SparkFun button PCB. I've included a couple of before & after pictures showing how the leads first cut with my old diagonal cutters, then with my new shear cutters.
Before:
After:
This should help the buttons sit properly. Finally, I inserted the 16 LEDs into the board and did a quick smoke test connecting each one directly to +5V with a resistor to make sure there were no issues with the traces or the LEDs themselves.
This is a pretty good view of one of the LEDs lit up. They're very bright (6000 mcd) even in a fully lit room. They do, however, have a narrow projection and you can see a somewhat prominent "dot" when you put the button pads on. I'm going to find a way to get the entire board lit at once before I do any soldering in order to check for any inconsistencies in color/intensity. I'll also experiment with sanding the tops in order to provide a more diffuse glow.
I'm heading out on vacation this afternoon and will be getting back Sunday night. Hopefully I'll be home in time to figure out a quick way to get the board lit by the MAX driver.
Monday, March 23, 2009
Production Halt
[note: the wires running from the breadboard to the PCB are not routed properly, an FYI if anyone tries to use this picture for reference.]
So I've been able to play around with the parts that I've received so far but have hit a bit of a snag. I was able to get some of the code featured on Basement LEDs post up and running to test button presses. One of the problems I ran into, though was that it would correctly identify the column of a button press but then it would think that it was being pressed across all rows. I've checked the connections on my breadboard and think that everything is wired up properly, so I suspect it might be the code itself. Anyway, this is just a test rig and I'll hopefully be able to move forward soon.My real holdup is that I need a better pair of cutters before I solder the diodes and LEDs onto the Sparkfun boards. Right now I have an old pair of diagonal cutters that leaves a fairly long lead. Aside from being a neat freak with my connections, I've seen that I'll need to get the diode leads as short as possible to make sure the button pads don't ride too high. I've got some shear cutters ordered from Amazon that will, hopefully, arrive before I leave for vacation this week. Other than that I've got the breakout board mostly soldered and will try to get as much as I can together before I leave.
One of the other ideas I've had as far as customizations go is utilizing the analog inputs for extra controls. I'm kind of looking at it from an Ableton Live-centric point of view right now. I'm going to look into the possibility of adding a couple of pots to control things like global tempo, quantization, mixing channel, etc. I think I'll be able to use this post on the monome site regarding adding an accelerometer as a basis for moving forward on the add ons. The only thing I'm really not sure about at this point is whether I want to include any kind of additional functionality in a single enclosure or make a separate module.
Thursday, March 19, 2009
Parts are in!

So I got my orders in from Sparkfun, Curious Inventor, and Digikey today. It's like a mini geek Christmas. I'm still waiting on the 24 pin DIP socket that was back ordered and to receive the LED driver samples from Maxim. I also realized I was looking at the resistor network the wrong way (misread the schematics and thought that it was inbetween the MAX driver and the LEDs, not the shift register). Since the cheap side of me finds it galling to pay 4 bucks shipping for a .23 cent part, I decided to make my own ghetto resistor network.
Aside from my crappy soldering, I realized that I had picked up two different sets of 5 resistors from Radio Shack. They conveniently mixed 100 ohm resister packs with the 100 kohm stock. Thanks guys. So I have 5 resistors soldered (poorly) in parallel and need to pick up a new set to finish it off.Besides that I decided to start putting together some of the parts. One of the things that I noticed is that the cutters I have leave the diode leads pretty high on the Sparkfun board. This causes the button membrane to sit high. I've only soldered one diode so far, so I'm going to see if I can get a set of flush cutters to prevent that from happening.
I've been going through the designs that are out there as well as the arduinome firmware and have some ideas of how I'd like to differentiate my build from the "standard" arduinome. I'd like to be able to have the unit be able to run in a sort of "light toy" mode without being connected to a computer. Off the top of my head I have the following in mind:
- Wire a rocker switch to the arduino power jumper to be able to draw power off of a wall wart
- Have an opening in the enclosure to allow the power jack to be accessed (obviously)
- Update the firmware with with an "unplugged" mode. This would essentially set a boolean during setup based on the value of Serial.available() and run some custom code present in the firmware that is yet to be determined.
Monday, March 16, 2009
Parts List
I have my initial batch of parts ordered. There are still some parts that I have yet to order for various reasons. Also, I went ahead and got a few extras beyond what the build requires just in case.
SparkFun
Digi-Key
Curious Inventor (They had some of the Unsped arduinome shields left from a batch order)
Maxim-IC
Stuff I Already Had Lying Around
Radio Shack (ugh)
I still need to figure out exactly what value resistor network I should pick up, but that should only add a few cents to the total. This also doesn't take into account any sort of enclosure. I'll keep updating this as I move along in the process.
[edit 3/23/09 1:14 PM CST: Added resistor cost from Radio Shack]
[edit 4/19/09 6:54 PM CST: Added 22kOhm resistor from Radio Shack & ribbon cable from Curious Inventor]
SparkFun
| 4 | Button Pad 4x4 | $39.80 |
| 4 | Button Pad 4x4 PCB | $39.80 |
| S&H | $6.95 | |
| Subtotal | $86.55 |
Digi-Key
| 2 | MM74HC164N PI/SO Shift Register | $1.08 |
| 2 | MM74HC165N SI/PO Shift Register | $1.08 |
| 70 | 1N4148FS Diodes | $2.24 |
| 1 | ED90053 24 Pin Socket (Back Ordered) | $1.53 |
| 1 | ED90049 14 Pin Socket | $0.89 |
| 1 | ED90050 16 Pin Socket | $1.02 |
| 3 | P4910 .10 uF 100V Monolith Capacitor | $1.68 |
| 1 | P828 10 uF 50V Capacitor | $0.16 |
| 1 | S1012E-36 36 POS CONN HEADER | $1.68 |
| S&H | $4.80 | |
| Subtotal | $16.12 |
Curious Inventor (They had some of the Unsped arduinome shields left from a batch order)
| 1 | Unsped Arduinome Shield PCB | $5.00 |
| Shipping Round 1 | $5.99 | |
| 4 | 16 Pos IDC Headers | $1.96 |
| 1 | 5 Ft 25 Pos Rainbow Ribbon Cable | $4.99 |
| Shipping Round 2 | $5.99 | |
| Subtotal | $10.99 |
Maxim-IC
| 2 | MAX7219CNG+ LED Driver Samples | FREE |
| Subtotal | $0.00 |
Stuff I Already Had Lying Around
| 1 | Arduinome Decimellia | ||
| 100 | Blue 1000 mcd LEDs | ||
| Misc wires |
Radio Shack (ugh)
| 2 | 100 kohm Resistor 5 Pack | $1.98 |
| 1 | 22 kohm Resistor 5 Pack | $.99 |
| Subtotal | $1.98 |
| Grand Total | $129.57 |
[edit 3/23/09 1:14 PM CST: Added resistor cost from Radio Shack]
[edit 4/19/09 6:54 PM CST: Added 22kOhm resistor from Radio Shack & ribbon cable from Curious Inventor]
Thursday, March 12, 2009
Yet Another Arduinome
Alright everybody, I think I'm ready to start building my very own arduinome. I've been looking around the tubes and found lots of helpful resources that I will shamelessly steal from due to the fact that I'm essentially a complete noob to the electronics scene. The only semi-interesting thing I've done so far is create a simple set up using one of the analog ports on my arduino to read the value of a potentiometer over a serial port and post the value to Twitter using a custom Python script. The intent was to be a proof of concept for posting the temperature of a remote location to Twitter, with the pot in place of the temp sensor. If anyone ever ends up reading this and is interested I can post the (unpolished) code.
Anyway, while the arduinome has been done many times in the past I've got some ideas that might be able to set it apart. Assuming I can figure it out, I was thinking of including the ability for optional external inputs, not unlike what is offered by the Machine Collective but without quite as much awesome. I figure for now I'll stick with the monochrome model and, if I can get everything blinking, think about an RGB model in the future.
Anyway, while the arduinome has been done many times in the past I've got some ideas that might be able to set it apart. Assuming I can figure it out, I was thinking of including the ability for optional external inputs, not unlike what is offered by the Machine Collective but without quite as much awesome. I figure for now I'll stick with the monochrome model and, if I can get everything blinking, think about an RGB model in the future.
Subscribe to:
Posts (Atom)






