Bc2000 (for the BCF2000 & BCR2000) group photo

Yahoo Groups archive

Bc2000 (for the BCF2000 & BCR2000)

Index last updated: 2026-04-28 23:16 UTC

Thread

Writing code to access the BCF2000

Writing code to access the BCF2000

2006-05-17 by mxc420

I'm working on an open-source application that involves using sliders
to control data parameters (for 3D visualization).  I want to use a
control board, namely the BCF2000 to provide a hardware interface for
the sliders that appearin the software.  Before I go out and buy one
of these, I was wondering if/how I would be able to interface with the
BCF in my software, which is written in C++.  Ideally, I want a
cross-platform solution, but will settle for being able to do this in
Mac OS X. Any help would be appreciated!

Re: Writing code to access the BCF2000

2007-06-22 by martinklang

Hi there,

I've coded against the BCR2000 in Java - not exactly what you want,
though actually not too different.

The interface and protocol for the b-controls is plain midi.
Synchronising the controller with your software is done with normal
midi in/out, and you can reprogram the devices (set the resolution,
max/min etc for the faders, knobs and buttons as well as the type of
command sent) with SysEx midi commands.
The BCF faders are motorised, meaning that when the value changes in
your software and you send the updated value to the controller, the
fader will move to the right position. Since I've only got a BCR I've
not actually seen it, but that's what I hear! With the BCR knobs, the
led values are updated in a similar way.

I'm not sure what cross-platform MIDI libraries are available for C++,
though at least in OS X there's lots of development support.

If you want to look at some code (java) let me know what you are
interested in, I've got a couple of projects up at
http://mars.pingdynasty.com/software.oml

/m

Re: Writing code to access the BCF2000

2007-06-23 by rpcfender

Hi mcrider,

--- In bc2000@yahoogroups.com, "mxc420" <mcrider@...> wrote:
>
> I'm working on an open-source application that involves using sliders
> to control data parameters (for 3D visualization).  I want to use a
> control board, namely the BCF2000 to provide a hardware interface for
> the sliders that appearin the software.  Before I go out and buy one
> of these, I was wondering if/how I would be able to interface with the
> BCF in my software, which is written in C++.  Ideally, I want a
> cross-platform solution, but will settle for being able to do this in
> Mac OS X. Any help would be appreciated!

Very easy  on the PC. You could program the BCF faders set to send MIDI
controller messages (there are 127 possible controllers with a range of
0 to 127)
If you need finer resolution you could send a Midi sysex message and the
BCR/BCF can give you a 14 bit number (2 x 7 bit bytes. You will need to
combine them)
I write in C++ (principally C++Builder these days) There are a few OCX
Midi libraries, Paul Messick's book Maximum Midi comes with a Midi
library His examples are in VB and VC but there are heaps of wrappers
for Delphi or C++Builder.
I use a modified page of Delphi code that I found on the web.

/* MIDI device classes by Adrian Meyer
//**********************************************************************\
******/
//* V1.1 Delphi 6 Windows 2000
//**********************************************************************\
******/
//* V1.0 First release with simple MIDI Input/Output
//* V1.1 SysEx Input Event added, refactured error handling
//* V1.2 SysEx Output procedure added, changes sysex input for multiple
ports
//**********************************************************************\
******/
//* Homepage: http://www.midimountain.com
//**********************************************************************\
******/
//* If you get a hold of this source you may use it upon your own risk.
Please
//* let me know if you have any questions: adrian.meyer@....
//**********************************************************************\
******/

This lets me compile a stand alone program without having to supply any
dll's or ocx's.
I have ported it to work with C++ builder and you are welcome to a copy
of his example that I ported to C++builder.
Very easy to use. It is multi threading so you can use as many Midi
interfaces as you have connected to the PC
It should port to Linux as Borland has a cross compile for
Delphi/C++Builder

As far as the Mac is concerned, Java may be the way to go. There are a
few Midi Java libraries around.
Mac OS does have a fairly easy C++ way to the MIDI interface, I believe,
although I haven't coded with it.

Best of luck. Let me know if I can help .

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.