Bluetooth MIDI Controller for GSI Apps

 GSi Control


 Features

  • Connect wirelessly to GSi apps running on Computer, iPad or iPhone
  • Presets for VB3-II, Magic Tines, Model D6 and Genuine Soundware Piano Edition
  • 7 Rotary pots, Expression pedal input and 6 toggle switches
  • Powered from USB using a charger cable

                                                                 GSi website

 Specifications and build

 Components

SIAM Modular prototype board
Nano ESP32 
Nano Teminal Adapter 
7 10K Alpha T18 Pots
7 Bourne type knobs
6 Miniature toggle switches
Tactile switch with LED 
Stereo Jack Socket for expression pedal
USB C breakout connector 
Hammond 1591XXDTBU Translucent Blue ABS enclosure
 

 

Design 

The Nano ESP32 has built in Bluetooth LE and there is a BLE library that supports the existing MIDI.h library for the Arduino:
 
#include <BLEMIDI_Transport.h>
#include <hardware/BLEMIDI_ESP32.h>
BLEMIDI_CREATE_INSTANCE("GSiControl", MIDI)
bool isConnected = false;

#define BTN_Preset 9 
 
So you don't need to include MIDI.h library 
 
There are 8 analog pins A0 - A7. Connect A0-A6 to the pots and A7 the stereo jack for the expression pedal. The digital pins D0-D5 are connected to the toggle switches. Finally, the tactile switch uses D6 for the switch and D7 for the LED.
 

Setup

Once the board is built upload the sketch and connect it to a GSI app. Guido has included a Bluetooth option in he Device Settings page so just select it and it will find the GSi control box - just click connect:
 

 

 The ESP32 has a yellow LED that will light when it is connected via Bluetooth:


 CC Maps

The preset button selects one of five preset maps stored in this array:

Pots
 
int CCMapPOT[5][8] =
{
{   7,  8, 10, 75, 76, 91, 73, 11 },  // VB3 II
{   7, 12, 15, 36, 93, 91, 18, 19 },  // MAGIC TINES
{   7,  8, 89, 86, 93, 91, 83, 11 },   //  D6  
{   7,  8, 10, 75, 42, 91, 38, 11 },  // B3-x
{   7, 12, 15, 44, 38, 50, 32, 33 },  // GS VOl1

};

 
 Switches 
 
int CCMapSW[5][6] = 
{
{   30, 31, 66, 72, 59, 65 },  // VB3 II
{   17, 16, 35, 35, 32, 31 },  // MAGIC TINES
{   12, 13, 14, 15, 16, 17 },   //  D6  
{   39, 40, 36, 44, 93, 58 },   // B3-x
{   31, 30, 36, 42, 49, 48 },  // GS
}; 
 

 

Comments

Popular Posts