Bug fix. CV portamento in combination with pitch bend would make the pitch bend range be all over the place.

This commit is contained in:
Johan Berglund 2021-02-26 10:31:50 +01:00
parent bd52fd0364
commit 1d637d3535

View file

@ -1428,6 +1428,7 @@ void loop() {
if(dacMode == DAC_MODE_PITCH) { // pitch CV from DAC and breath CV from PWM on pin 6, for filtering and scaling on separate board if(dacMode == DAC_MODE_PITCH) { // pitch CV from DAC and breath CV from PWM on pin 6, for filtering and scaling on separate board
targetPitch = (fingeredNote-24)*42; targetPitch = (fingeredNote-24)*42;
targetPitch += map(pitchBend,0,16383,-84,84);
if (portIsOn){ if (portIsOn){
if (targetPitch > cvPitch){ if (targetPitch > cvPitch){
if (!cvPortaTuneCount) { if (!cvPortaTuneCount) {
@ -1453,7 +1454,7 @@ void loop() {
} else { } else {
cvPitch = targetPitch; cvPitch = targetPitch;
} }
cvPitch += map(pitchBend,0,16383,-84,84);
if (cvVibRate){ if (cvVibRate){
int timeDivider = timeDividerList[cvVibRate]; int timeDivider = timeDividerList[cvVibRate];
int cvVib = map(((waveformsTable[map(currentTime%timeDivider, 0, timeDivider, 0, maxSamplesNum-1)] - 2047) * exSensorIndicator), -259968,259969,-11,11); int cvVib = map(((waveformsTable[map(currentTime%timeDivider, 0, timeDivider, 0, maxSamplesNum-1)] - 2047) * exSensorIndicator), -259968,259969,-11,11);