OnSong and BeatBuddy - MIDI syntax with fw 1.85

I hope to use MIDI commands from OnSong to select songs on my BeatBuddy running firmware version 1.85. So far I have been able to detect MIDI events from the BB in OnSong, but I have not succeeded in getting the BeatBuddy to respond to events from OnSong. I find the online help confusing, so I am hoping that one of you who has figured this out can give an example of OnSong MIDI syntax that works with BB.
Here’s the onsong meta tag I am using based on the BB and OnSong docs - to go to folder 1, song 3 (counting from 0):
“MIDI: CC0.0:0, CC0.1:32, PC3”

Is that correct?

Are you using the same channel?

I believe I have the BB set to Omni - so it shouldn’t matter, correct?

The ‘In’ channel is set separately from the ‘Out’ channel. Are both set to omni?

Only the In channel has an Omni setting. Out requires a single channel number, but should not matter in this case.
I think I have it working now. In the process, I’ve discovered that OnSong has caching issues - I had to reload the song files from the masters - changes I made using the OnSong editor seemed not to update the MIDI commands.

What works:
PC2@0 (pick the third song in the current folder)
I will get around to the CC’s later - for now this is good.
Thanks for your help!

Update: I am using a Yamaha MD-BT01 bluetooth MIDI adapter with an iPhone 6 running IOS 9.x
In order to get the MD-BT01 to work, I had to install the Yamaha Digital Piano app - otherwise onsong does not see the adapter (and it does not pair in the regular iPhone bluetooth setup page). In OnSong, you have to go to Settings / Editors / MIDI, then touch the wrench icon in one corner, the Sources, then the Bluetooth icon and connect the MD-BT01. A real pain in the neck, but once it is connected, it works well.
The MIDI string is of the form:

MIDI: CC0.0:0@0, CC0.32:0@0, PC15@0

It looks to me like BeatBuddy remembers the last folder selected by a CC message (and defaults to folder zero) no matter what you do with the BB buttons, so even if the CC messages are omitted, the PC will still select a song in whatever folder was last selected by a CC, or in folder zero if no CC messages changed the folder setting.

Finally, OnSong has a bug - if you use the song editor to change the MIDI string and save it, then leave and re-enter the song, OnSong still sends out the old MIDI string. So you need to re-import the song with the updated MIDI string instead.

I hope this helps someone else get through this process. The wireless MIDI control is very nice. Wish I had an iPad running a recent version of IOS now…

Note: I have now discovered that the Yamaha Digital Piano app is unnecessary. OnSong will discover the MD-BT01 in its bluetooth list.

I also use OnSong and, as per you example, to go to song 3 in folder 1 I write
To go to song 20 in folder 5 I write

Easy peasy

Cool. I would never have guessed that from the OnSong and BB MIDI documents. How did you figure it out?

Got the info off some other BeatBuddy user who posted on this site, forget who now…by the way, I use the OnSong editor almost exclusively and have never noticed it forgetting any change I make. Mystery…

You should only have to set one program change which includes the bank select too. This looks like the following: PC0:3

This will set the bank to zero (Folder 1) and then program (or song) to 3.

That being said, it’s a whole lot easier to set this in the interface. Just tap and hold on the title of the song and set it up that way or in the song editor you can use the metadata editor. Here’s a video tutorial: http://onsongapp.com/videos/tutorials/midi-io/

Hey everyone. This is Jason from OnSong. You’ll want to check out this video tutorial that covers how to set MIDI commands for when the song is loaded, or when you select a section: http://onsongapp.com/videos/tutorials/midi-io/

OnSong sends Bank Selects and Program Changes in a single statement if you are typing is in. For instance, you can set the MSB Bank Select to 0, the LSB Bank Select to 1 and the Program to 2 on channel 4 like this:

MIDI: PC0.1:2@3

Again, OnSong has tools to do this visually so you don’t need to bother with the MIDI syntax.

when you go to another song (in onsong), would it be possible to set things up so it changes presets (settings) on 2 separate devices (beatbuddy and voicelive 3 in my case)?
i know it can be done on one of those devices, but on both?

You would want to have each device use a different MIDI channel . Configure the Beat Buddy for channel 10 since that’s the standard drum channel in MIDI. Then set up the VoiceLive for say Channel 1. It doesn’t really matter, but then you would send a program change on Channel 10 and another Program change on Channel 1 and it will be specific for each device.

thanx, awesome that it can be done :slight_smile:
i’m not very good with midi, so please excuse the possibly stupid q, but what additional equipment would you need to do that?
an interface/ soundcard with 2 midi inputs and 2 midi outputs (1 input/ output for each device) hooked up to the ipad?

It really depends on your equipment. For instance, some equipment has a MIDI THRU port or MIDI passthrough capability with the MIDI OUT port. With this you could daisy chain the device together. However, I don’t think the BeatBuddy or VoiceLive have a true MIDI thru.

So yes, you could get a device to plug the iPad into that would have two sets of MIDI ports, etc. However, this gets messy with cables, etc. I would suggest using Bluetooth MIDI to simply this. I’ve used these to connect a Nord to my Macbook Pro, or connecting a MIDI pedal board to my iPad: https://www.amazon.com/Wireless-MIDI-Interface-mi-1-Rev-3/dp/B01D61QK6W/ref=pd_sim_236_2?ie=UTF8&dpID=41BRmVQZemL&dpSrc=sims&preST=AC_UL320_SR320%2C320&refRID=RKBSXZCXR0KRNRJCAW3V

Get one for each MIDI device and then you can pair those right inside of OnSong. You would just go into MIDI sources and tap on the Bluetooth icon: http://onsongapp.com/docs/interface/menubar/utilities-menu/editors/midi/settings/sources/ (note: this does require an iPad 3 or higher and the latest version of iOS that supports Bluetooth MIDI)

Hope that helps!

Just saw this and hope its a good place for midi experts.
$100 reward for midi expert who has a solution to my problem.

I want midi code in OnSong to send tempo and patch to beat buddy (I have that working)
I want beat buddy to send tempo to vl3 (I have this working)

And I want onsong to send patch change to vl3. This is what I don’t have working. With midi set to through on beat buddy, I am seeing patch change, but it is random. I mean not what I have programmed.

Not kidding about the $100 reward. I’ve spent way more than that in time trying to figure it out myself.



I use onsong to send tempo and patch change to a Line 6 M9 and not a VL3 but I had the same issue until I made sure every piece of equipment (including the BB)was set to a specific midi channel and nothing was set to omni. Then all my commands needed to end with @midichannel#. Not sure if that is your issue but it fixed mine. I send from Onsong to BB to Boomerang to my line 6 M9. Looks like you are really close.

I can help you with all of this, I have VL touch 2 and beatbuddy and OnSong working with the same Yamaha Bluetooth dongle. If you still need help contact me at www.igotyoudave.com