To control solenoids with dynamics, I adapted Reduzent's [Solenoiduino] abstraction and arduino sketch to include the TLC5940 functions, which is what the Practical Maker PWM shield is based on. So far, I'm able to control 44 solenoids using custom drivers and 2 stacked PWM shields. This is an excellent alternative if you want to build a relatively cheap electro-mechanical piano setup.

The problems i've run into:
  1. if 2 or more messages get sent simultaneously, one of them might get dropped (this happens a lot) 
  2. the handshake does not seem to work on Linux (Ubuntu 11)
  3. the original code only supports 16 solenoids
This last one is the one that goes over my head, since the code uses that bit twiddling stuff, I can't figure out how to send the appropriate messages to any solenoids past 15. So, I'm a little stuck here, any help? 

I've attached the modified (and original) Solenoiduino stuff and a short video of what I have so far.

http://youtu.be/cb5Oz0Iia-U

--
www.epicjefferson.com
www.avmachinists.org Puerto Rico based Art Collective/ Non-Profit Org