Wednesday, February 13, 2008

In the works: RGB monome-esque kit

Update: This kit probably isn't going to happen for various reasons. Read about it in this post.

After talking with Brian, and obtaining his blessing (and advice), I've decided to invest the money to produce a custom PCB for an RGB button pad prototype. This design is completely different than my original, offering improved colour-depth and brightness: the pre-prototyping I've done blows the old one out of the water. I hope to have the design completed and the custom PCBs in-hand by the end of the month. What I'd like to do is order a medium-sized run of these boards so that I can split the development cost with like-minded hardware hackers. These would not be "plug and play" kits by any stretch of the imagination: these would require significant extra work to get them to do anything, and comfort working with electronics. The numbers will be kept small, so we can all easily communicate, and hence people who want to participate will need to be in touch with me first. This will be nothing like the monome kits, which are much more user friendly! You have been warned! If you fit this description, I need your feedback, so please read on and respond!

There are a few ways I could do this that I'm considering, each with their own advantages and disadvantages (both for me and for you). This would only be a board with the buttons and LEDs on it, as well as the circuitry to drive the LEDs. No logic would be on-board, that would have to be handled by an external microcontroller, most likely an Arduino (although your favourite board could work, too).

What I'm most likely to make first is a 4x4 button pad design to work with Sparkfun's buttons. It would include a small overhang to hold the circuitry to drive the LEDs, which would interface serially with whichever microcontroller platform you'd like. The serial interface would only control the LEDs; the buttons' wiring would be broken out to control however you like. All of the inputs and outputs will be neatly bundled together in a ribbon cable. Code and schematics for running it off of an Arduino (and possibly other platforms) would be made freely available. It would be possible to daisy-chain multiple 4x4 boards, but this would require more complicated off-board wiring. This kit would be the least expensive option, and also offers the most flexibility. The disadvantage would be that it would require the most outside wiring to get working, especially if you're planning on chaining multiple boards.

What I'd really like to make, personally, is an 8x8 button pad on a single baord, which would include a full serial interface for both the buttons and the LEDs, as well as power circuitry on-board (an 8x8 RGB pad uses a lot of current!). It is highly doubtful that I would do this initially for several reasons: for starters, it would be a much more complicated board for me to design and test. Perhaps more importantly, it would require me to invest in the professional edition of Eagle, which is an additional $600. That's money I need to put up initially, and it's money that would have to be factored into the cost of the boards for any other developers. So, unless feedback is overwhelmingly in favour of the 8x8 pad, this would most likely come later, if the interest existed.

Finally, there's the logic board. For now (and probably forever), this would be an Arduino. If you want to hook it up to something else, then by all means you could do so; if I hook it up to something else, I'll probably post code for it. For now, though, I'm developing on an Arduino and maybe AVR, so that's what I'll offer.

In terms of functionality, it will probably be possible to make this "monome-compatible," like my monomuino project. Of course, the colour functionality would not be accesible in this mode, you would have to pick the colour you wanted to display. I can't stress enough: if you want to build a monome, buy the kits from monome! This is for people interested in hardware tinkering. This device could also be controlled with a to-be-developed custom protocol which supports full colour, but in terms of software to utilize this, it would have to be custom written. Hopefully, if we get together a group of about a dozen people to do this, we'll be able to put together some neat stuff.

Here's what I'd like to hear from you:
  • Which kit(s) would you be interested in? How many?
  • The LEDs I like are from, and are much more expensive than ones you can find on Ebay, but much higher quality. If I bought a bulk order of those, and sold them at around cost (that's the discounted bulk cost, not the individual LED cost at superbrightLEDs), would you buy them bundled with the kit? (This would add ~$20 to a 4x4 kit, and ~$80 to an 8x8).
  • Similarly, would you want the Sparkfun buttons bundled with the kit? This would save you shipping from Sparkfun.
  • Can I contact you in the future with questions about the kit, and/or with announcements about the kits' availability?
  • Any other questions or comments you might have
If you email me (at jmg -atsign- upwardnotnorthward -dot- com), I will not give your information out to anybody under any circumstances. I will contact you precisely once, to let you know that the boards are available, unless you explicitly give me permission to contact you more, or ask that I not contact you at all.

If you don't trust me with your email address, and never want to hear from me, then simply leave your thoughts in the comments below. That's cool, too.


Limor said...

so the biggest secrets i have learned about kits is:
* make the kit complete
* make it do something when you build it

when i say complete i mean, you should offer a version that has -everything- so that when the box arrives you can make it do stuff (other than, say, really basic stuff like tools & batteries). its frustrated me to get a kit and then it turns out i have to go to radioshack and buy a 9V battery clip cause it doesnt come with one.

when i say do something, i mean you should have the software/firmware ready to make it interact with the existing monome software. if its not easy to load it onto the uC (say, because its not an arduino) then it should be preprogrammed. i bought an avr programmer kit and it turned out the microcontroller in the kit arrives blank. so i needed a programmer to make the programmer kit work.

but there are tons of things you can do to pare down costs. for example, instead of buying from a middleman and paying $1.50/led you can go direct with
and only pay $0.60 (LEDs aren't manufactured in the US so basically any US sellers are just buying from China/Taiwan/Brazil, etc and reselling)
if you post to the ladyada forums i can probably help you in detail. but a lot of it is deciding what you want to do with the kit and how many you are interested in selling.

JMG said...


I appreciate your advice. Because of your suggestions (and those of Brian from monome) I've amended my post to make it more clear: I'm not trying to produce an all-in-one kit. At least for now, I'm trying to produce a new board, and hoping to find a small group of other interested people willing to buy extra copies of what I design and build, to help defray my costs. Hopefully the new post makes that clearer.

I've looked around for cheaper LEDs with little luck. I've been in touch with the people, and the ones you link to are common anode, whereas my design needs common cathode. I'm open to other options, but I have yet to find anything where I'm confident of the quality. I can't buy direct from a lot of places due to the relatively small quantities (what is a large quantity to me is still quite small for an LED manufacturer).

Thanks for the advice, and I'll be sure to ask any questions I have in the ladyada forums!

dr said...

limor, even without an included controller it would 'do stuff out of the box' in the sense that it will most likely have directions on which pins to hook to an arduino, and sample arduino code.

plug your arduino in, copy the code to it, plug your board in ... and viola. turnkey in the sense no programming or circuit designing would be required.

Anonymous said...

so, how did you solve the LED brightness/color-depth problem you wrote about earlier?