eyezeeu's picture

Hey there, hope you're doing great.

I'm wondering how I can receive MIDI Pitch Wheel / Pitch Bend messages.

I wired up a Receive MIDI Events node. I hooked up all available outputs (receivedNote, receivedController) to a console message via Get MIDI (Note, Controller) Values nodes, text appending along the way so I can see what I'm getting. I see the Note messages output fine, and I see the Controller messages output fine, but I do not see the Pitch Wheel messages.

I started up a freeware app called MIDI Monitor, and I see the Pitch Wheel messages there. If I remember properly from the MIDI spec, Pitch Wheel is sent as a combination of two adjacent controllers, course and fine.

Is there anything I can do in Vuo to receive the pitch bend messages? Failing that, can you think of any way external to Vuo that I could somehow transform them into something Vuo recognizes?

Appreciate your input.

Comments

Hi, @eyezeeu! Sorry I've

smokris's picture
Submitted by

Hi, eyezeeu! Sorry I've been slow to respond.

You're correct that MIDI Pitch Wheel messages consist of coarse and fine 7-bit parts, but they are not encoded as Custom Controller messages; they are their own event class. Vuo doesn't yet support the Pitch Wheel event class, but it's on our to-do list.

In the meantime, you can use the MidiPipe freeware app to convert:

  • Run the Audio MIDI Setup app (in Applications > Utilities), open the MIDI Studio window, select IAC Driver, make sure there's at least one port (click the + to add one if there isn't), and make sure "Device is online" is checked.
  • Download, install, and run MidiPipe
  • Under the Tools section:
    • double-click "Midi In", and select your input device
    • double-click "Message Converter", select Pitch Wheel on the left and Control Change on the right, and select the controller number you'd like to use
    • double-click "Midi Out", and select the IAC bus as output
  • In Vuo, use the IAC bus as input, and you should get your pitch wheel messages via the receivedController port