Skip to content

Commit

Permalink
Fix to reset operation so that calibration data is not lost.
Browse files Browse the repository at this point in the history
Added MIDI CC inputs for the switch/pedal both splits setting.
  • Loading branch information
gbevin committed Nov 21, 2014
1 parent 6e41506 commit bbf51e3
Show file tree
Hide file tree
Showing 5 changed files with 32 additions and 3 deletions.
1 change: 1 addition & 0 deletions changelog.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ v1.0.5
* Fix for foot switch assignments being reversed
* Fix for low-row bend not properly supporting multiple fingers for pitch-bend jumps anymore
* Fix for played cell lights sticking if identical notes are played on both splits
* Fix to reset operation so that calibration data is not lost

v1.0.4

Expand Down
3 changes: 3 additions & 0 deletions linnstrument-firmware.ino
Original file line number Diff line number Diff line change
Expand Up @@ -698,6 +698,9 @@ void setup() {

reset();

// initialize the calibration data for it to be a no-op, unless it's loaded from a previous calibration sample result
initializeCalibrationData();

// setup system timers for interval between LED column refreshes and foot switch reads
prevLedTimerCount = prevFootSwitchTimerCount = prevGlobalSettingsDisplayTimerCount = micros();

Expand Down
24 changes: 24 additions & 0 deletions ls_midi.ino
Original file line number Diff line number Diff line change
Expand Up @@ -592,6 +592,30 @@ void receivedNrpn(int parameter, int value) {
fxd4CurrentTempo = FXD4_FROM_INT(value);
}
break;
// Global Switch 1 Both Splits
case 239:
if (inRange(value, 0, 1)) {
Global.switchBothSplits[3] = value;
}
break;
// Global Switch 2 Both Splits
case 240:
if (inRange(value, 0, 1)) {
Global.switchBothSplits[2] = value;
}
break;
// Global Foot Left Both Splits
case 241:
if (inRange(value, 0, 1)) {
Global.switchBothSplits[0] = value;
}
break;
// Global Foot Right Both Splits
case 242:
if (inRange(value, 0, 1)) {
Global.switchBothSplits[1] = value;
}
break;
}

updateDisplay();
Expand Down
3 changes: 0 additions & 3 deletions ls_settings.ino
Original file line number Diff line number Diff line change
Expand Up @@ -210,9 +210,6 @@ void initializeGlobalSettings() {
Global.arpOctave = 0;

initializeGlobalSensorSettings();

// initialize the calibration data for it to be a no-op, unless it's loaded from a previous calibration sample result
initializeCalibrationData();
}

void initializeGlobalSensorSettings() {
Expand Down
4 changes: 4 additions & 0 deletions midi.txt
Original file line number Diff line number Diff line change
Expand Up @@ -173,6 +173,10 @@ NRPN Value Description
236 1-7 Global Arp Tempo Note Value (1: 8, 2: 8 Tri, 3: 16, 4: 16 Swing, 5: 16 Tri, 6: 32, 7: 32 Tri)
237 0-2 Global Arp Octave Extension (0: None, 1: +1, 2: +2)
238 1-360 Global Clock BPM (applies when receiving no MIDI clock)
239 0-1 Global Switch 1 Both Splits (0: Off, 1: On)
240 0-1 Global Switch 2 Both Splits (0: Off, 1: On)
241 0-1 Global Foot Left Both Splits (0: Off, 1: On)
242 0-1 Global Foot Right Both Splits (0: Off, 1: On)

Color Values
============
Expand Down

0 comments on commit bbf51e3

Please sign in to comment.