Download PBPCE from HERE
OK, for a start, i'm not a real programmer, I've never worked in an object oriented envioronment before.
This project has served my personal want to learn more about programming.
So this is my first ever java application, without any formal training on the subject. It's buggy, cumbersome and lacks the finese of experienced programmers. But it makes working with PB a much more enjoyable experience.
In the not too distant future I plan to completely re-write it from the ground up - implementing some of the things I have learned along the way right from the start, rather than hacking them in place. But thats a long way off yet!
15/12/09 -
A new PC Editor is on the way (written in VB - I know, I know, but it's so much easier than java )
It has some cool stuff - like:
I have a few hickups though, namely with getting the MIDI side of things to work.
If anyone has experirnce with MIDI in VB - i'd love some help
PBPCE provides a simple way to get information about your midi setup and setting into PB.
It works with 3 file types - .syx .rbs .pbx
.syx you should be familiar with. A standard sysex file, it's the same as that created by the hextosyx.pl script from TK.
.rbs (raw bank stick) is a replica of the data stored on a MBHP bankstick.
.pbx is used by PBPCE to store your entire rigs information, Basically a collection of .rbs files in one big file.
You need to have understanding of how PB works to use this. See the PB manual for more information
New - Opens a new Master Bankstick Window with default data loaded. This can be modified to suit your rig.
Load PBX file - Opens up a saved .pbx file
Import Master File - Opens a new Master Bankstick Window with data from a .rbs or .syx file.
MIDI IO Settings - Tell PBPCE what midi input and output is connected to your PB Hardware.
This window features the bulk of the application.
The Tree on the left displays all the information and settings for your PB hardware.
The Selection editor is where you change the settings for the selected item in the tree.
It also has facilities to save, export and upload data to the master bankstick.
Device name - Name of your Midibox PB harware
Channel - Channel which you Midibox PB hardware will respond to (important for Pedal Box users).
The Selection Editor allopws you to edit the selected information from any bankstick window. The last selected tree item will be displayed in the Selection Editor and allow you to edit settings. Settings are updated automatically.
Information that is modifiable and the definition of each is dependant on what has been selected.
Name - Used for Rig Control Patch names, Gig Control List names and Device value maps
Parameter - Used by Device value maps to define mid parameter 2.
Status - NO LONGER USED
Handler - Used by Device Event information to define which handler PB should use when dealing with this midi event.
Bankstick - Used by Rig Control, AIN and DIN maps to define which of your midi devices the midi command should be sent to.
Event Type - Used by Rig Control, AIN and DIN maps to define the type of midi event.
Event - Used by Rig Control, AIN and DIN maps to define what event should be triggered.
Low Value - AIN and DIN maps to define the lowest value to be sent.
High Value - Used by Rig Control, AIN and DIN maps to define the Highest (or only) value to be sent.
Option -
Rig Control: Whether the event will be transmitted
AIN map: To configure whether or not the selected pedal will change settings dependated on the current Rog Control patch
DIN map: Toggle or Momentary action.
New - Opens a new Device bankstick Window with default data for you modify.
Import - opens a new Device bankstick Window with data from a saved .rbs or .syx file.
Export - Save data from the bankstick window to a .rbs or .syx file.
Save - Saves all open bankstick windows to a .pbx file.
PIC ID - Set the PIC ID of your PB hardware here.
use feedback from core - uncheck if you don't wish to use feedback from the core during upload.
Send - will open an upload window and immeditaly begin trasmitting data to the relevant bankstick.
A list of 8 inputs will appear.
Firstly Static? - This allows to edit whether or not this input will have different settings for each Rig Control Patch change. It is done with Option in the Selection editor.
Next are Setting 0, Setting 1, Setting 2… etc.
The number corresponds the program change number of the Rig Control Patches.
if Static? is set to 'Static' then only Setting 0 is used. If set to change w/pc the setting of the current program change number will be used.
A list of 144 settings will appear.
These are 'Static Button' 1-16 (You may not be using all of these) and 'Banked Button' 1-128.
Toggle will switch between the low and high value. Momentary will be high when pressed and low when un-pressed.
Low / High / Option settings have no effect on functionality
Low / High / Option settings have no effect on functionality
Toggle will switch between off and on. Momentary will be on when pressed and off when un-pressed.
Low / High settings have no effect on functionality
* In the Tree open the Rig Control folder. A list of 128 patches will appear.
Only events with enabled set in the option box will be triggered.
* In the Tree open the Gig Control folder. A list of 128 cue lists will appear.
Device Files are the link between your PB Harware and Midi Devices that it is controlling.
PB can not function correctly without them.
This window is opened from the Master Bankstick Window.
Device Name - the name of the Midi Device that this file is for.
Channel - The Midi channel that your device is set to recieve data.
CC's and Program changes can be named. The maps are shown in order, with their control number listed first.
Let's use CC's as an example:
a list of 128 is shown, something like this '0 | Reverb level'
the format - '<control number> | <name of control>'
This is the same for the Program Change List.
Value maps can be selected as a handler for events in the Device Event List.
The first in the list is 'Entries: ##' - This number tells PB how many entries you are using in the list. This is followed by a list of 128 is entries in the format of '<entry number> | <value or midi parameter 2>'
Not all need to be used, but they must be in order from lowest value to highest value, with no blank gaps.
Example:
on 0, 32, and 64. You want text to show, 'off', 'Quarter', and 'half'. You need to use the first 3 entries.
PB will use the name from the nearest lesser value. So at 40, the text would be 'Quarter'.
Export - Files can be saved as a .rbs file for sharing with others. Or can be saved as a .syx file
Make sure your PIC ID has been set on the Master Bankstick Window and whether or not you want to use feedback from the core.
Send - Will open the upload window and immediatly begin transmitting.
The display and MIDI handling is dependant on the event definition. This is set in the Device Event List with Handler
There are 9 types:
Handler | Button MIDI | Pedal MIDI | LED | LCD 2nd line |
---|---|---|---|---|
PROGRAM_CHANGE | Guess… | N/A | Marks Current | Device Name |
ON_OFF_ONLY | Toggle 0/127 | N/A | 0 = off 127 = on | On or Off |
TAP_TEMPO | 127 | N/A | On when pressed | Tempo in BPM |
VALUE | Toggle Low/High | Scale Low - High | High = on, Other = off | value (decimal) |
METER_ONLY | Toggle Low/High | Scale Low - High | High = on, Other = off | approx. position meter |
METER_OFF | Toggle Low/High | Scale Low - High | High = on, Other = off | approx. position meter w/“off” when at 0 |
METER_ON_OFF | Toggle Low/High | Scale Low - High | High = on, Other = off | approx. position meter w/“off” when at 0 and “On” when at 127 |
METER_PAN | Toggle Low/High | Scale Low - High | High = on, Other = off | approx. pan style meter |
USE_MAP_# | Toggle Low/High | Scale Low - High | High = on, Other = off | value map (10 available) |
The event handler for each midi event is pre defined in the Device Event List.
Pedals can not be mapped to event types of the first three.
LCD first line is always the event name listed in the event map.
Please report bugs in the Pedal Box forum thread