I just bought a BCR2000 on ebay, and I am looking forward to use it with MBOX. I have it connected in USB to my Macbook air, I have the USB light up, MIDI Setup.app sees it as a BCR2000, I can see midi commands coming in in Osculator. However, neither the factory java program, neither B-Control recognizes it.
Could it be a hardware problem? doesnt sound like one with the messages sent...What can I do? I tried scanning for B-controls several times, and it always says 0.
Which operating mode (as set in "Global Setup" edit mode ("EG" on the display) via push encoder 1) is active on your BCR?
For a connection with a computer via the BCR's USB cable, this should be a "U" mode, not an "S" mode.
And to troubleshoot the type of problem you're reporting, I recommend U-1: this makes sure that the computer only sets up 1 MIDI input device and 1 MIDI output device, namely to and from the BCR itself (so the MIDI IN and OUT sockets are all inactive); this avoids the risk of accidentally addressing the wrong MIDI device in e.g. BC Manager.
After selecting U-1, you may have to switch off the BCR, then on again.
Then start BC Manager and make sure that the BCR's MIDI input device and its MIDI output device are enabled in the "MIDI devices" dialog box. Then do MIDI -> "Detect B-Controls" from the "B-Controls" window, and your BCR should be recognized.
Hope this helps,
okay, so, sitrep:
-I forgot to say, I am on an M1 macbook air. But this should work thru Rosetta, right?
-I found a windows machine (not easy around here) and it works there no problem. So its not hardware, I think.
-then I tried what you said (I think it was U-4 before) and had to select midi in and out devices, but still not recognized...
can I do anything else to troubleshoot?
also, should the java app work too on a mac?
I don't know, and I can't test this, since I don't have an ARM-based Mac.
Perhaps Rosetta has a problem with the way BC Manager handles MIDI devices or so.
Yes, this proves that there's nothing wrong with your BCR or its cable.
So this reinforces the hypothesis that there's a problem about Rosetta + BC Manager.
Or is there something else about the configuration of your M1 that causes this problem?
Can you test on an Intel-based Mac? If that works, it increases suspicion about Rosetta (or something else specific to your M1) even further.
(Actually, I don't see how things could not work on an Intel-based Mac: your success with Windows has established that there's nothing wrong with your BCR or its cable, and I've never heard this type of complaint about BC Manager for Intel-based Macs.)
Which Java app are you talking about?
I dont have an access for an Intel mac for a few or more. I'll test that later.
Do you know of a way to troubleshoot Rosetta? I'd be glad to help.
The java app I meant the factory Behringer app. Should that work on a mac?
I have no idea. As I don't have access to an ARM-based Mac or even a recent Intel-based Mac, I have to rely on user reports for any problems concerning my applications on these machines.
A few months ago I wrote this on the Plans page at this website:
But if my Intel-based macOS applications don't even work with Rosetta 2, that's bad news indeed.
IIRC I couldn't even get it to work properly on Windows XP when I bought my BCR and BCF in 2007, and in fact this failure was one of my incentives to start creating BC Manager...
So it doesn't surprise me at all that it doesn't work on your Mac, and probably we shouldn't attach any meaning to that fact; the problem with BC Manager on your Mac is probably totally unrelated.
I see. Okay, I'll see what happens on an intel mac. But if you need something let me know, I can test it or give you a Teamviewer with it connected :)
On an unrealated thing, how do I get the encoders to go over 127? I tried to set CC in 14 bits, and also NRPN 14 bits, but they always only go to 127. I looked in the manual but this part is not really detailed.
After a good night's sleep I realized that it isn't clear to me to what extent exactly BC Manager doesn't recognize the BCR on your M1.
Most importantly, do the BCR's I/O devices show up on the Input and Output tabs of the "MIDI devices" dialog box?
If they don't, there's nothing I can think of to investigate further.
But if they do, you could test which (if any) MIDI messages can be communicated with the BCR: for instance, perhaps channel messages (Control Change etc.) can be communicated, but System Exclusive messages can't. To test this hypothesis, you can use BC Manager's "MIDI controllers" window to send/receive Control Change messages, and the "MIDI System messages" and/or "MIDI System Exclusive messages" windows to send/receive System Exclusive (test) messages. (All these windows are accessible from the main window's menu via View -> MIDI.)
If you set an encoder's Type parameter to CC, and the Mode parameter to "Absolute (14-bits)" (internally called "absolute/14"), the encoder can output 14-bit values, provided that the CC number is in the range of 0-31, cf. the following remark from section 16.3 in BC MIDI Implementation.pdf:
Great timing, I just found out some things.
They show up both in the OS's Midi Studio, and in BC Manager's Midi/Options window as an input and an output, and also under Options/MIDI devices, both in and out.
I am sorry I am a bit inexperienced here.
I can say the CC messages from the BCR arrive into OSCulator, and I can use them. They also show up in BC Managers Input meter and input messages.
What I found is that I CANNOT send any CC commands to the BCR from any program. I tried OSCulator and Qlab. The ring leds dont change. if I send one from the PC, it does. Seems like a Mac problem.
However I dont know how to tell if PC or Sysex messages arrive at the BCR. How do I do this? I found the window where I can send it, but I cannot see the BCR react in any way.
Also is there a way to send a system or sysex from the BCR so I can test that?
That the devices show up at all in BC Manager is good news. It means that Rosetta works, at least in terms of device setup. Whether receiving/sending channel and SysEx messages works, is another matter of course.
Have you selected the intended preset (1-32)?
Have the BCR's encoders been set up correctly in this preset? I.e. are they associated with the same MIDI channel and CC numbers that you're sending from your Mac?
If the BCR's global "Receive channel" is set to a value from 1 to 16 (so not to "off"), a Program Change message for program 1-32 on that channel should make the BCR switch to the corresponding preset.
Concerning SysEx messages:
First of all: the Device byte in any SysEx message sent to the BCR must match the Device ID set on the BCR (as set via push encoder 2 in Global Configuration ("EG") mode), otherwise the BCR ignores the message.
The Device byte sent by BC Manager is determined by the Device setting in the "MIDI options" dialog box (accessible from the B-Controls window via MIDI -> Options).
There are many SysEx messages to which the BCR should respond. (See BC MIDI Implementation.pdf, section 6 for the full list.)
BC Manager uses many of these commands.
For instance, BC Manager's "MIDI options" dialog box has a "Method" setting. If this is set to "Select Preset", BC Manager sends a SysEx message to the BCR when you press the spacebar on a memory preset in the B-Controls window, to which the BCR should respond by switching to the same preset number.
But of course BC Manager will only allow you to perform these actions once it has recognized the BCR.
I think the only SysEx command that BC Manager does send when it has not recognized a BCR is the Request Identity message, which it sends when you execute "Detect B-Controls".
A totally different testing method:
Set the BCR's operating mode to U-3 and connect a MIDI cable between one of its MIDI output sockets (I suggest OUT A) and its MIDI input socket. (You don't need to be afraid of short-circuiting anything, since MIDI input sockets use opto-couplers.)
Then you can send any MIDI message (channel, SysEx or other) from the computer to the BCR's MIDI output socket, and e.g. BC Manager's "MIDI input messages" window can catch the (hopefully!) returned message from the BCR's MIDI IN socket. (Make sure you use the correct MIDI devices: in U-3 both the "OUT A" socket and the "IN" socket are accessible on the computer via the second BCR output and input device respectively, the first output and input devices being related to the BCR itself.)
Of course this method doesn't interact with the BCR itself (its preset settings and its buttons/encoders), but it should allow you to establish whether MIDI I/O from/to BC Manager works correctly via Rosetta. If it does, any of the problems you're having must have to do with your BCR itself.
As you state in your message below, you've already found the method by which you send a preset from the BCR.
Another, perhaps "cleaner" way is to assign one or more SysEx messages to a BCR button or encoder, via what BC Manager calls a "custom output" definition. But since you need BC Manager to send such a "custom output" definition to your BCR, you'll have to set this up on a Windows machine as long as you can't get BC Manager to communicate properly with your BCR on your Mac.
Sysex messages are received from BCR to mac (did a preset dump and watched the midi input window)
So I got an intel Mac with Big Sur and it's working there. It's the M1 where the problem lies.
Hello! First of all, thank you so much for this utility. I'm just chiming in to add that I'm having the same issue with my M1 macbook air - MIDI inputs and outputs are there and can send/receive messages, but detection is not working. Thankfully I have a PC that I can use to update my BCR but I thought you'd want to know that it doesn't seem to be an isolated case. Cheers.