Firmware pin defintions mapped to pcb; checked 3d files, frontplates left/right ok (changes were made by me), housing supporting structure is mssing (middle), 3d file for connector part is missing

This commit is contained in:
2026-02-11 21:03:58 +01:00
parent 300edffe49
commit ff0396bf5d
58 changed files with 204976 additions and 52853 deletions

View File

@@ -39,11 +39,11 @@
#define PIN_SB_2_REC 35 // 35
#define PIN_SB_2_PLAY 36 // 36
// MISC/INFO PINS
#define PIN_VCO1_EN 37 // PROD. pin 37 TODO: if there is an active key mapped to CV-Gate 1 --> HIGH
#define PIN_VCO2_EN 38 // PROD. pin 38 TODO: if there is an active key mapped to CV-Gate 2 --> HIGH
#define PIN_REC 39 // PROD. pin 39 TODO: if any sb is recording LED on (active-low)
#define PIN_VCO1_EN 38 // PROD. pin 38 TODO: if there is an active key mapped to CV-Gate 1 --> HIGH
#define PIN_VCO2_EN 39 // PROD. pin 39 TODO: if there is an active key mapped to CV-Gate 2 --> HIGH
#define PIN_REC 37 // PROD. pin 37 TODO: if any sb is recording LED on (active-low)
#define PIN_BPM 12 // PROD. pin 12 TODO: get bpm through potentiometer analog value -> ADC-Pin
#define PIN_B_METRONOME 13 // PROD. pin 13 TODO: button activates/deactivates bpm led output (pull-up)
#define PIN_L_METRONOME 14 // PROD. pin 14 TODO: led blinks according to bpm value (active-low)
#define PIN_B_METRONOME 14 // PROD. pin 13 TODO: button activates/deactivates bpm led output (pull-up)
#define PIN_L_METRONOME 13 // PROD. pin 14 TODO: led blinks according to bpm value (active-low)
#endif

View File

@@ -209,7 +209,7 @@ void CV::setVoltage(uint8_t cvIndex, uint16_t mV)
{
if(cvIndex >= _nCV) return;
MCP4728_channel_t ch = _cvChannelMap[cvIndex];
_dac->setChannelValue(ch, map(mV, 0, 2048, 0, 4095), MCP4728_VREF_INTERNAL);
_dac->setChannelValue(ch, map(mV, 0, 1992, 0, 2048), MCP4728_VREF_INTERNAL);
}
void CV::setVoltage(uint8_t cvIndex, Key k)

View File

@@ -14,11 +14,11 @@ Keyboard keyboard(N_KEYBOARD_ROW, N_KEYBOARD_COL, pins_keyboard_row, pins_keyboa
Adafruit_MCP4728 MCP4728;
MCP4728_channel_t cvMap[N_CV_GATES] = {MCP4728_CHANNEL_A, MCP4728_CHANNEL_B};
uint16_t keyToVoltage[N_KEYBOARD_ROW*N_KEYBOARD_COL] = {
1*83, 6*83, 11*83, 16*83, 21*83,
2*83, 7*83, 12*83, 17*83, 22*83,
3*83, 8*83, 13*83, 18*83, 23*83,
4*83, 9*83, 14*83, 19*83, 24*83,
5*83, 10*83, 15*83, 20*83, 25*83
0*83, 1*83, 2*83, 3*83, 4*83,
5*83, 6*83, 7*83, 8*83, 9*83,
10*83, 11*83, 12*83, 13*83, 14*83,
15*83, 16*83, 17*83, 18*83, 19*83,
20*83, 21*83, 22*83, 23*83, 24*83
};
CV cv(&MCP4728, &Wire, N_CV_GATES, cvMap, keyToVoltage, N_KEYBOARD_ROW, N_KEYBOARD_COL);
@@ -48,7 +48,7 @@ static uint16_t last_voltage_ch2 = 0xFFFF;
bool readButton(byte pin, ButtonState &state)
{
bool reading = digitalRead(pin) == LOW;
bool reading = digitalRead(pin) == HIGH;
bool buttonPressed = false;
if(reading != state.last)
@@ -74,11 +74,11 @@ bool readButton(byte pin, ButtonState &state)
void initButtons()
{
pinMode(PIN_SB_1_REC, INPUT_PULLUP);
pinMode(PIN_SB_1_PLAY, INPUT_PULLUP);
pinMode(PIN_SB_2_REC, INPUT_PULLUP);
pinMode(PIN_SB_2_PLAY, INPUT_PULLUP);
pinMode(PIN_B_METRONOME, INPUT_PULLUP);
pinMode(PIN_SB_1_REC, INPUT_PULLDOWN);
pinMode(PIN_SB_1_PLAY, INPUT_PULLDOWN);
pinMode(PIN_SB_2_REC, INPUT_PULLDOWN);
pinMode(PIN_SB_2_PLAY, INPUT_PULLDOWN);
pinMode(PIN_B_METRONOME, INPUT_PULLDOWN);
btn_sb1_rec.current = false;
btn_sb1_rec.last = false;