(I can hear you all going “wtf does that subject line mean”... bear with me)

I recently picked up a monome 40h kit. Assembly was a breeze, but I ordered LEDs from China and they’re not here yet. I’m super anxious to start using my new toy, but it’s hard to tell what’s going on unless you can see the button pads light up.

So what is the enterprising hacker to do? Fake it? OKAY!

I’ve been hacking around with OSC lately… it’s a really cool, extremely flexible network protocol for device control and the like. Read more about it right here on the wikipedia. One of the cool things about the Monome setup is that while the physical device communicates using a serial protocol over USB, the applications communicate via OSC.

Anyway, blah de blah. What I did was use the oscP5 library to intercept the messages between the Monome router and applications. I update the grid based on those messages, and then pass them on to the destination recipient. It works surprisingly well! Here’s a screenshot of the sketch in use, running the flin application:

Remember that input is happening on my real monome. The black disc is a button that I was pressing when I took the screenshot.

This is early software, and as such has problems and limitations. Here’s a copy/paste from the README:

Known Bugs / Issues / Didn’t Do Yet

  • Only supports the 40h (and maybe the 64, I dunno)
  • High CPU usage due to render strategy
  • Doesn’t (yet) support rotation
  • Doesn’t support input… probably won’t as I’m not intending to write an emulator, but we’ll see.
  • Does not yet support the full OSC dictionary… coming soon?
  • Sometimes cells will get “stuck” on during a transition until the next time that cell is updated.

So that’s about it. You can get it from my Subversion:

svn co http://svn.bleything.net/monome/Monome_Display_Proxy

Details about how to use it are in the README. Please email me if you have any troubles.