That’s it! I just released mtXcontrol version 1.1 with lot of updates and improvements. One major improvement is full support for Novation Launchpad: just draw your sequences and display them on your Launchpad! Even better, push the buttons to change the color, add, remove, copy & paste frames. For that mtXcontrol makes usage of the Launchpad Processing library which I released some days ago.
But Rainbowduino support improved as well. I fixed lots of bugs and implemented requested features. Now you can control the display brightness, save up to 10 frames onto the device and serial port is auto detected. In general, I defined an basic API to communicate with the devices, which allows you to add more devices easily (e.g. monome!). With that, all Rainbowduino stuff is moved in a separate Rainbowduino Processing library.
http://www.vimeo.com/8456119
See official mtXcontrol project page for more.

Yay, I finally released my Launchpad Processing Library. Please see it’s project page and source at github.
Videos & more are coming soon. (Yes, this includes an updated mtXcontrol Version with Launchpad support!!)
Ok, I finally managed to set up my GPG Mail System. Thanks to the latest version of GPGMail and gpg (1.4.10) (via macports sudo port install gnupg) it’s running fine and smooth again with Snow Leopard and Mail.app. Perfect!
See MacGPG and GPGMail for more…
Find my GPG-Key here
UPDATE: btw. to get GPGP work with gmail, check out FireGPG, a nice plugin for Firefox, which works perfect for me on Mac OS X. Unfortunately I haven’t found any Safari solution yet…
Some days ago I got my Novation launchpad an immediately started hacking with some Ruby and Arduino flavor. I wanted to port ccb23 Raindrops Project to launchpad.
For that, I needed Serial communication within ruby. Thanks to ruby-serialport first steps went quite well. I could write OR read from and to Arduino easily. But for some reasons, writing AND reading using the same instance didn’t work out.
I used a simple ’send-input-back’ sketch on the Arduino side. So every byte I’m sending is returned back. I checked with the Arduino IDE Serialmonitor and a simple Processing script – everything worked alright. But using ruby it was different. Writing to serial port worked okay, but reading from it was just random. Sometimes I read the response, sometime I didn’t – really, really weird. Some headaches and a lot of time testing I finally found the solution: just open two instances of the serial port. One for sending, one for reading – and, surprise, surprise – it works perfect! Who would have guessed that!? Strange..
// To be completed
require 'serialport'
port_write = Serialport.new()
port_read = Serialport.new()
Ok, continuing hacking, more soon…
By now, I havn’t find any good solution to share my mp3 across multiple systems and disks. I’ve some on my local machine, some at work and some on my external harddisk to archive. Luckily, when copying my tracks to another library duplicates are ignored. But what annoys me most is that my ratings don’t get copied, as iTunes doesn’t store it within the file. Some while ago I found a solution by storing the number of stars into the ‘Grouping’ Field, so I can recover the rating afterwards. Now, I came up with this little applescript do automate the write and recover process. Just run this script, copy you mp3 to the other library, run the script again, and voilá, you ratings are back – nice!
(* small apple script to save rating into grouping field and
vice versa. Perfect to persitent store your rating witin the file
2009 - www.rngtng.com
*)
tell application "iTunes"
repeat with stars from 1 to 5
set rating_value to stars * 20
set group_name to "" & stars & " Stars"
set sel to (every track whose rating is rating_value and grouping is "")
repeat with aTrack in sel
tell aTrack
set grouping to group_name
end tell
end repeat
set sel to (every track whose rating is 0 and grouping is group_name)
repeat with aTrack in sel
tell aTrack
set rating to rating_value
end tell
end repeat
end repeat
end tell
Btw. for each Star rating I do have a smart playlist which allows my to find those quickly.
This is a nice extension to get the name of the method you’re currently in (Ruby < 1.9)
module Kernel
private
def this_method
caller[0] =~ /`([^']*)'/ and $1
end
end
for Ruby >= 1.9 you can uses this:
module Kernel
private
def this_method
__method__
end
end
[see Stack Over Flow as well]
I just stumbled upon this interesting sounding book by Joshua Noble:
Programming Interactivity: A Designer’s Guide to Processing, Arduino, and openFrameworks.
A few of the topics covered: Basic C, Processing, openFrameworks, Gesture and touch recognition, Motors and Servos, LEDs and LCDs, LilyPad and many more! – Wow, that’s sounds promising – wanna have!
www.programminginteractivity.com
Yay – the voting for the Seeedstudio Rainbowduino Carnival Competition is over. And, guess what, my project mtXcontrol made the run – I won the first price! Yipheee.. that’s 12x Rainbowduinos + 100$ Shopping voucher which I’ll invest in buying Xbee Stuff.. Can’t wait to get my hands on! Stay tuned…
Thanks to everybody voting for my project!
Btw. I just released the latest version 1.02 with some bugfixes and new features in the API…
As mentioned in earlier post, I submitted the first public version of mtXcontrol to the Rainbowduino Carnival Competition by Seeedstudio. Now it’s time to vote for the best projects:

I know, the decision will be quite hard, as a lot of other cool projects were submitted as well. Like this cool Daft Punk Helmet or this nice lipsync speaking Robot…
Please check out the Raindrop Rainbowduino Game by my friend ccb23 as well. It’s a Rainbowduino connected via I2C to an Arduino with an Accelerometer. With that you can move the red dot on the Matrix and avoid hitting the falling blue raindrops. nice!
Make your vote!