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

Sysex dump on startup

Sysex dump on startup

2010-03-05 by dna_soundsystems

Hi, i´ve read here alot about custom settings via sysex files. 
So the basics are clear but how can i achieve Auto Sysex dump to Computer on Device startup or on Preset change. Without to push manually Buttons.

How can i automate the push of "EDIT & HOLD" Button and then "encoder 6" to send the dump and the Preset can be used normally?

I cant find any Command for these Buttons nor any infos about which Midi or sysex number these 2 Buttons have.

Any help would be greatly appreciate.

Cheers, Phil

Re: Sysex dump on startup

2010-03-06 by markwinvdb

--- In bc2000@yahoogroups.com, "dna_soundsystems" <dna_soundsystems@...> wrote:
> Hi, i´ve read here alot about custom settings via sysex files. 
> So the basics are clear but how can i achieve Auto Sysex dump to Computer on Device startup or on Preset change. Without to push manually Buttons.

If I understand your intention correctly, you can do this by using the BCF/BCR's "Request" and "LEARN output" features.

See:
"BC MIDI Implementation.pdf": sections 13.3 and 13.7.
"BC Manager Manual.pdf": section 24 under "Editing".

Both these docs are available from http://home.kpn.nl/~f2hmjvandenberg281/ .

Hope this helps,
  Mark.

Re: Sysex dump on startup

2010-03-06 by dna_soundsystems

Hi Mark, thanks so much for your impressive documentations& help here.
Your comments teach me in the rigth direction, but theres something fundemantal wrong in my try to achieve.

to clarify:
I want the BCR to send  it´s temporaly Preset(=sysex dump) via usb to my mac. Whenever the preset is chosen& Automatically when Power the Unit "On" first.

I tried the following .tx command and switched request "on" inside $preset but nothing happen

Code:
$rev R1
$preset
  .name 'all controls            '
  .snapshot off
  .request on
  .egroups 1
  .fkeys on
  .lock off
  .tx $B0 $3C $64
  .init
$encoder 1
  .easypar CC 1 62 0 127 absolute
  .showvalue on
  .mode bar/off
  .resolution 96 96 192 192
  .default 77
$end


Any ideas what i am missing?

Thanks,
Phil
Show quoted textHide quoted text
> 
> If I understand your intention correctly, you can do this by using the BCF/BCR's "Request" and "LEARN output" features.
> 
> See:
> "BC MIDI Implementation.pdf": sections 13.3 and 13.7.
> "BC Manager Manual.pdf": section 24 under "Editing".
> 
> Both these docs are available from http://home.kpn.nl/~f2hmjvandenberg281/ .
> 
> Hope this helps,
>   Mark.
>

Re: Sysex dump on startup

2010-03-06 by dna_soundsystems

Hi Mark, thanks so much for your impressive documentations& help here.
Your comments teach me in the rigth direction, but theres something fundemantal wrong in my try to achieve.

to clarify:
I want the BCR to send  it´s temporaly Preset(=sysex dump) via usb to my mac. Whenever the preset is chosen& Automatically when Power the Unit "On" first.

I tried the following .tx command and switched request "on" inside $preset but nothing happen

Code:
$rev R1
$preset
  .name 'all controls            '
  .snapshot off
  .request on
  .egroups 1
  .fkeys on
  .lock off
  .tx $B0 $3C $64
  .init
$encoder 1
  .easypar CC 1 62 0 127 absolute
  .showvalue on
  .mode bar/off
  .resolution 96 96 192 192
  .default 77
$end


Any ideas what i am missing?

Thanks,
Phil
Show quoted textHide quoted text
> 
> If I understand your intention correctly, you can do this by using the BCF/BCR's "Request" and "LEARN output" features.
> 
> See:
> "BC MIDI Implementation.pdf": sections 13.3 and 13.7.
> "BC Manager Manual.pdf": section 24 under "Editing".
> 
> Both these docs are available from http://home.kpn.nl/~f2hmjvandenberg281/ .
> 
> Hope this helps,
>   Mark.
>

Re: Sysex dump on startup

2010-03-06 by markwinvdb

--- In bc2000@yahoogroups.com, "dna_soundsystems" <dna_soundsystems@...> wrote:
> I want the BCR to send  it´s temporaly Preset(=sysex dump) via usb to my mac. Whenever the preset is chosen& Automatically when Power the Unit "On" first.
> 
> I tried the following .tx command and switched request "on" inside $preset but nothing happen
> 
> Code:
> $rev R1
> $preset
>   .name 'all controls            '
>   .snapshot off
>   .request on
>   .egroups 1
>   .fkeys on
>   .lock off
>   .tx $B0 $3C $64
>   .init
> $encoder 1
>   .easypar CC 1 62 0 127 absolute
>   .showvalue on
>   .mode bar/off
>   .resolution 96 96 192 192
>   .default 77
> $end
> 
> Any ideas what i am missing?

In any case the above BCL script is totally correct syntactically.
I loaded it in BC Manager and uploaded it to my BCR without any problems.
And what it does is this:
Whenever this preset is selected, the BCR sends $B0 $3C $64 to its (USB-)MIDI output. That's achieved by the ".request on" and ".tx ..." statements.

However, there's one thing you may or may not be aware of:
if you just send this preset to the BCR like this, it only ends up in the temporary preset, and gets overwritten when you switch to any memory preset, or switch the BCR off.
So you have to put it in a MEMORY preset (namely the one that is selected upon startup, as defined via "Global Setup").
You can do this by inserting (for instance) the line "$store 10" in the script right before "$end": this instructs the BCR to copy the temporary preset to memory preset 10. After that, whenever preset 10 gets selected, the ".tx" message gets sent.

However, if you want the BCR to send the initial value of encoder 1, you have to use ".snapshot on": then the BCR sends $B0 62 77 (the default setting of encoder 1) whenever the preset is selected.
In fact, if you use ".snapshot on" and leave the .request and .tx statements as they are, BOTH output types are sent: first the .tx output, then the snapshot output, so:

$B0 $3C $64 (<= .tx)
$B0 62 77 (<= snapshot: encoder 1)

I don't quite understand your use of the term "sysex dump":
"Sysex" specifically refers to a particular type of MIDI message, namely MIDI System Exclusive messages, i.e. starting with $F0 and ending with $F7, and that's not what your preset achieves.
If you mean you want to send the preset's DEFINITION (i.e. all its BCL statements, which are indeed embedded in SysEx messages):
that's not possible via "snapshot" or "request". In fact, I do not see why you would want to send those messages whenever a preset is being selected.

Hope this helps,
   Mark.

Re: Sysex dump on startup

2010-03-07 by markwinvdb

> The only thing i want to achieve  is send automatically the temporary 
> Preset   as .syx  file  to  the App  "Sysex Librarian" or for editing 
> on the Terminal. 
> Data should come from the BCR itself without the need to push any button. 
> Just once through switch the Devices Power On.
> 
> Just identically  if i switch the BCR  "On" and Push directly  the two 
> Buttons  EDIT and PRESET>

To my knowledge, you can't achieve this directly within the BCR itself.
So the only solution would be to make the BCF/BCR receive a Request Data message for the temporary preset:

$F0 $00 $20 $32 <Device> <Model> $40 $7F $F7

Where:
Device = the BCF/BCR's Device ID minus 1 (so from $00 to $0F; typically $00)
Model = $14 (BCF) or $15 (BCR)

(See "BC MIDI Implementation.pdf", section 6.1.)

I can think of two ways of triggering this message:

1. Put this message in the ".tx" statement of the preset (with ".request on" of course), and loop that message back to the BCR.
I don't know how you can set up such a loop on a Mac, but under Windows there are programs (e.g. my own BC Manager and MIDI Tools) that can simply loop back a MIDI input device to a MIDI output device.
But of course this loop might cause problems later in communication.
Even more seriously, at least in my situation the BCR doesn't actually respond to this looped message, apparently because it's too busy setting up the temporary preset at that very moment. So you'd have to build in some delay - very tricky; which brings us to the second way:

2. Put a MIDI message (not necessarily SysEx) in the preset's ".tx" that a receiving computer program interprets as a request to send the "Request Data" message described above to the BCR after an appropriate delay.
However, it may not be possible to find a program that behaves like this, so the situation looks rather bleak. (I suppose I COULD set up BC Manager in this way, but of course that's no help on your Mac, perhaps unless you could run BC Manager in a virtual machine.)

I hope this answers your question.

Mark.

Re: Sysex dump on startup

2010-03-07 by dna_soundsystems

Thanks for clarify this. All youre assertions helped me to understand more avout the ways i can achieve these function (maybe). Very detailed, very informative.

So this is stuff to think for next days.

cheers, Phil



--- In bc2000@yahoogroups.com, "markwinvdb" <markwinvdb@...> wrote:
Show quoted textHide quoted text
>
> > The only thing i want to achieve  is send automatically the temporary 
> > Preset   as .syx  file  to  the App  "Sysex Librarian" or for editing 
> > on the Terminal. 
> > Data should come from the BCR itself without the need to push any button. 
> > Just once through switch the Devices Power On.
> > 
> > Just identically  if i switch the BCR  "On" and Push directly  the two 
> > Buttons  EDIT and PRESET>
> 
> To my knowledge, you can't achieve this directly within the BCR itself.
> So the only solution would be to make the BCF/BCR receive a Request Data message for the temporary preset:
> 
> $F0 $00 $20 $32 <Device> <Model> $40 $7F $F7
> 
> Where:
> Device = the BCF/BCR's Device ID minus 1 (so from $00 to $0F; typically $00)
> Model = $14 (BCF) or $15 (BCR)
> 
> (See "BC MIDI Implementation.pdf", section 6.1.)
> 
> I can think of two ways of triggering this message:
> 
> 1. Put this message in the ".tx" statement of the preset (with ".request on" of course), and loop that message back to the BCR.
> I don't know how you can set up such a loop on a Mac, but under Windows there are programs (e.g. my own BC Manager and MIDI Tools) that can simply loop back a MIDI input device to a MIDI output device.
> But of course this loop might cause problems later in communication.
> Even more seriously, at least in my situation the BCR doesn't actually respond to this looped message, apparently because it's too busy setting up the temporary preset at that very moment. So you'd have to build in some delay - very tricky; which brings us to the second way:
> 
> 2. Put a MIDI message (not necessarily SysEx) in the preset's ".tx" that a receiving computer program interprets as a request to send the "Request Data" message described above to the BCR after an appropriate delay.
> However, it may not be possible to find a program that behaves like this, so the situation looks rather bleak. (I suppose I COULD set up BC Manager in this way, but of course that's no help on your Mac, perhaps unless you could run BC Manager in a virtual machine.)
> 
> I hope this answers your question.
> 
> Mark.
>

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.