// Acid StepSequencer, a Roland TB303 step sequencer engine clone // author: midilab contact@midilab.co // under MIT license // CV functionality added by Oleksiy Hrachov #include #include #include "MCP4725.h" #include "config.h" MCP4725 DAC1(DAC_1_ADDR); MCP4725 DAC2(DAC_2_ADDR); bool updateCV1 = true; bool updateCV2 = true; bool sendGate1 = false; bool sendGate2 = false; uint8_t CV1Note; uint8_t CV2Note; void setup() { // AcidStepSequencer Interface initAcidStepSequencer(MIDI_MODE); setTrackChannel(1, TRACK1_CHANNEL); setTrackChannel(2, TRACK2_CHANNEL); // pins, buttons, leds and pots config configureInterface(); // last pattern user had load before power off loadLastPattern(); Wire.begin(); Wire.setClock(400000); DAC1.begin(); DAC2.begin(); DAC1.setMaxVoltage(5.1); DAC2.setMaxVoltage(5.1); } // User interaction goes here void loop() { processInterface(); processCV(); }