algorithmic modeling for Rhino


I am trying to control Grasshopper via Midi and have spent quite a bit of time and frustration pouring over old treads, etc.  I know this is an old topic but wondered if there have been any recent developments and simplifications.  I'm an architect and only been using Grasshopper for about a month (very intensively though) and  I have a background in Midi and electronic music.  I actually sold off most of my music studio to purchase a lasercutter.  I've added the FireFly and Ghowl components and I now have my Windows 7 reading midi from a CME Bitsream 3x midi controller as well as having a Midi Yoke installed, but I can't seem to find an easy way to convert Midi to OSC or something else that Grasshopper can read.  This isn't critical but driving me crazy.

Views: 4896

Replies to This Discussion

Hi Mark,

some years ago I used vvvv ( for MIDI to OSC conversion:

I can post the 4v file if I can find it.

Hey David. Just posted my setup, screenshots, and files at the end of this thread. Got everything running smoothly. Thanks for all. The help.


People in this discussion have had some luck:

Also, I know there are some MIDI bridges out there, but unfortunately I have no devices that speak MIDI.

I got the MIDI to Grasshopper thing working. My only question now is how do you "close" or "reset" or "clear" the OSC port? I had several crashes during the process and every time I start new I have to use a new port because I get a message that says the port is already in use. It's probably not that big of a deal but it would be nice to clean house and just use the same port number every time.

Hi Mark,

i suppose you use ghowl to read osc data? I've done a lot of experiments with midi to grasshopper. It's a bit tricky in the beginning, but once you got the right tool its really easy.

You can use vvv like david supposed, but there are a few others out there. The probably most used/most popular is max/msp.

I've used puredata (pD) in the end, for a few reasons. I know it's not that easy in the beginning, but once you got the clue it's amazing what you can use it for.

Manipulate OSC from the iPhone/iPad or Android to then pass it to gHowl, sending MIDI or OSC signals over ethernet to another station...ect. I do use it also to link a device i built for djing via midi to my Traktor dj setup and it's really stable and reliable on my gigs. I can just recommend to use pD...the others are about the same level and do have licences to purchase.

Let me know if you need some help with your MIDI to OSC setup in pD and where you got stuck. Maybe send the setup and i can give it a watch...what type of midi controllers do you use? mostly button triggers, potentiometers/fader or even 2d controller (xy-parameters)?

I know it's not the right place to give support for 3rd party software but it might become an interesting discussion.



Congratulations :)...i'm curious about the pD setup...seeing forward to download your posted file. pD is fantastic isn't it?

So here are some of the files and screen shots.  I'm still new to Grasshopper and have been using it exclusively to generate 2D patterns for cutting with a laser cutter I recently purchased (still waiting for its arrival).  Right now I'm just creating 2D panels for artwork, wall hangings, and simple rectangular light fixtures.

This is a image of the CME Bitstream 3x Midi Controller I'm using.
Screen shot of the Pure Data layout.  Note: it resembles the physical layout of all the controllers on the Bitstream.

Below is a screen shot of the layout in Grasshopper after receiving it via gHowl (Firefly would work too).

This is just a template (again laid out similar to the physical layout of the midi controller as well as the Pure data layout) with a couple controllers for a simple joystick controlled rectangle populated with a number of points using a knob to generate a Vironoi diagram.

Below a screen shot of a simple project using Isoballs to generate some layered panels and hole patterns that will ultimately be turned into a wood and stained glass, four sided light fixture.

Here a joystick controls the size of the panels (and ultimately the size of the final lamp).  

The first knob controls the number of points to create the isoballs.  

The second knob controls the random seed.  

The third knob controls the number points that generate what I call "levels or layers" or the number of isocurves.

The fourth knob controls its random seed.

The slider controls how thick the material is (1/16" to 1/4") which is more about the final fabrications.

A button acts as a boolean switch asking whether or not glass will be used.  Again this just makes adjustments for fabrication purposes.

I have about a six other pattern projects that I'll eventually map to midi and fabricate.  I'm hoping to also use this to do some interactive art to go with a gallery exhibit of my work.

Thanks for all the help guys.  I'm finding Grasshopper, gHowl, Firefly, and Pure Data to be some incredibly amazing tools.  They really are the future of design and architecture.


Cool, well done! Will you post some images once you get your laser?

Edit: Just found that you already have. Very nice. 

Hey guys,

I read this thread some time ago and I was inspired by Mark's work. I recreated the PureData workflow and it was working. I did set myself a goal to create as transparent as possible MIDI -> Grasshopper workflow. Today I published a Proof of Concept version. Please check Mandrill at:

At the same time I would like to ask you to take some time to test my code and give support. I'm sure that Mark won't have any problems running the script - it works out of box with USB MIDI controllers, but it can also work with any CoreMIDI smartphone app (eg. free MidiMonitor for iPhone)

Can't wait to try your Mandrill plugin!

Some time ago I tried through VVVV + GH +FIREFLY + GHOWL and a KORG NanoKontrol2

I even manage to do some loops with ANEMONE / HOOPSNAKE / FORESTHIKE

this video is made from GH realtime animation:



1_ Connect the MIDI Controler

2_ Launch the VVVV files (both are working together)

3_ Launch the GH file






  • Add Photos
  • View All


  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service