SamplerBox has two system modes available which is determined by the
SYSTEM_MODE option in config.ini.
|System mode 1||
A more advanced system that allows the user to:
|System mode 2||
A simpler system that relies on the user preparing sample-sets and
config.ini on a computer. Some functions available.
System mode 1¶
Displaying current preset ‘3 Mello+Sawtooth’ which has 2 voices available. The next preset is ‘4 Korg Little Bits’. The ‘S’ indicates samples are still loading in the background
A menu system has been implemented to access:
- Setlist functions
- Edit Definitions
- Auto Chords
- MIDI Mapping
- System Settings
- Invert Sustain
- Reboot System
In the menu system
This feature assumes you have a HD44780 LCD module wired to your Raspberry Pi, or you have purchased an official SamplerBox Player. You may need to manually define the GPIO pins it is connected to in your config.ini file.
SamplerBox can manage your sample-sets by using a setlist. On startup new folders will be detected and appended to the end of the setlist. Using the menu system you can rearrange your sample-sets.
You can manage the global behaviour keywords of a sample-set’s
definition.txt file from the menu system. These include
%%fillnotes. More information about global behaviour keywords can be found here.
SamplerBox has the ability to play chords types based on the notes you play and (optionally) in a specified key.
|MAJ scale chords||
Will play chords based on a specified major key.
|MIN scale chords||
Will play chords based on a specified minor key.
|All MAJ chords||
All notes will trigger a major chord based on its root note.
|All MIN chords||
All notes will trigger a minor chord based on its root note.
Allows you to select a key to base your chords on. Only works with chord modes
MAJ scale chords and
`MIN scale chords.
|Function to map||
Map any control, ideally a fader or pot, to affect the SamplerBox’s
Map any control to each of the 4 voices.
Map any control to the pitch bending function. Useful if your
keyboard doesn’t have a pitch wheel.
Map any control to the pedal sustain function. Useful if your
keyboard doesn’t have a sustain pedal input.
Map a key to kill all sounds.
Map MIDI controls to each of the 4 navigation buttons (left, right,
enter and cancel). Mapping a control to one of these functions will not
override any other controls mapped to the same function, thus allowing
Map any control, ideally a potentiometer, to any of the 5 reverb
parameters. Room size, damp, wet, dry, and width.
Some system settings can be modified from this menu. Changing these options will save their values to the config.ini and be read again upon a restart.
Select default audio device to use every time (if it can be found).
Range: 1-128. The maximum number of samples that can be played
Range: 0-16. 0 = all channels.
Options: 44100, 48000.
Choose a sample rate compatible with your audio device and sample-sets.
44100 is usually safe.
Experimental. Options: ON/OFF (requires reboot).
|Set RAM limit||
Set the amount of RAM the system can use for samples. For example,
a setting of 95% will see SamplerBox attempt to load as many presets
into memory. A setting of 5% will likely only allow for one preset at
a time to be loaded into memory.
Invert the polarity of your sustain pedal if it is functioning in the opposite way of what is expected.
Reboot the system from the menu – safer than powering off and on again.
System mode 2¶
This system mode was developed in a way that assumes the user has prepared their sample-sets and configured the config.ini file correctly on their PC before usage with a SamplerBox.
This system mode was developed by Hans Hommersom. Some more detailed information and instructions can be found on his site here.
Three buttons (up, down and function) must be defined in the config.ini. They may be GPIO buttons and/or MIDI controls.
GPIO buttons. Red=+ Black=function Blue=-
Control via the MIDI controller¶
Your midi controller device may be capable of sending midi controls via buttons, levers or wheels. These may be customizable, otherwise you may have to adapt the SamplerBox script to fit to your controller.
This SamplerBox is configured to recognize next control change messages:
Changes preset = sample folder. In the default implementation the
MIDI values (0-15) are translated to human program numbers (1-12).
Depending on your controller’s implementation you can change this with
the local config to get it aligned.
Pitch bend (wheel / joystick / knob)
Pitch bend depth can be configured from 1 to 12 semitones via the
local config globally and per sample set via the definition.txt.
Future enhancement include an extra continuous controller for this
Continuous controller messages:
Loaded loop set without selecting further specials
Selected a major-7 chord and voice#2 in the set “3 Voices”
SamplerBox Player (beta)¶
[Information about the official PCB]