MCV876 Firmware V3.0x Sysex message decription ------------------------------------------------ All values are in hexadecimal ! ---------------------------------------------------------------- PARAMETERS ADRESSES ---------------------------------------------------------------- The MCV876 firmware V3.0x use 17 parameters from adress 23 up to 33. MIDI_CAN equ 23 ; MIDI Channel ( 0..0F ) NOTE_REF equ 24 ; lowest playable note ( ref note 0..FF) CTRL_REF0 equ 25 ; controler assigned to the DAC0 ( value 0..FF ) CTRL_REF1 equ 26 ; idem DAC1 CTRL_REF2 equ 27 ; idem DAC2 CTRL_REF3 equ 28 ; idem DAC3 MCGT_REF0 equ 29 ; controleur number assigned to the gate0 ( mode controler only ) ( MCGT_REF1 equ 2A ; idem gate 1 value range 0..FF MCGT_REF2 equ 2B ; idem gate 2 MCGT_REF3 equ 2C ; idem gate 3 MCGT_THD equ 2D ; GATE Threshold ( mode controler) ( 0..FF ) PASCLK equ 2E ; MIDI Clock divider value ( 0..FF ) TRIGTIME equ 2F ; Trigger time duration ( 0..FF) MCV_CFG0 equ 30 ; Config BYTE 0 ; bit 0 = CVGate0/ ctrl ; bit 1 = CVGate1/ ctrl ; bit 2 = CVGate2/ ctrl ; bit 3 = CVGate3/ ctrl ; bit 4 = ; bit 5 = mode 2 or 4 chan/voices ( multi/poly) ; bit 6 = mode mono/multican ; bit 7 = mode mono/Poly MCV_CFG1 equ 31 ; Config BYTE 1 ; bit 0 = Gate0 reTrigg mode / trig ctrl ; bit 1 = Gate1 reTrigg mode / trig ctrl ; bit 2 = Gate2 reTrigg mode / trig ctrl ; bit 3 = Gate3 reTrigg mode / trig ctrl ; bit 4 = Gate4 Trigg mode ; bit 5 = ; bit 6 = ; bit 7 = DAC_CFG1 equ 32 ; Config BYTE 2 ; bit 0 = velo1/ctrl DAC0 ; bit 1 = Velo1/ctrl DAC1 ; bit 2 = Velo2/ctrl DAC2 only used in poly 2 mode ; bit 3 = Velo2/ctrl DAC3 ; bit 4 = Pitch Bend DAC0 no PB in poly mode ; bit 5 = Pitch Bend DAC1 ; bit 6 = Pitch Bend DAC2 ; bit 7 = Pitch Bend DAC3 DAC_CFG2 equ 33 ; Config BYTE 3 ; bit 0 = cal CV0 ; bit 1 = cal CV1 ; bit 2 = cal CV2 ; bit 3 = cal CV3 ; bit 4 = ; bit 5 = ; bit 6 = ; bit 7 = ---------------------------------------------------------------- SYSEX message construction ---------------------------------------------------------------- MCV876 firmware V3.03 sysex messages are composed as follow: - F0 = begin sysex - 70 = ID constructor ( arbitrary = 0x70 ) - 7D = ID model ( arbitrary = 0x7D = MCV876) - 0x = the MIDI channel x is the channel number from 0 to F - yy = the parameter adress - ww = Data LSB ( format 0000 aaaa) - zz = DATA MSB ( format 0000 bbbb) - F7 = EOX ( end of exclusive msg... ) with : data MSB byte and data LSB are internaly combined by the MCV876 interface to compose a 8 bit number as this : 0000aaaa + (0000bbbb * 16) = bbbbaaaa = the config byte ... examples: ---------- all message on midi channel 1 : +5V mode is a nibble flag at the adress H33 constructed as this : 0000 xywz with x=bit for DAC 0 , y for DAC1, W for DAC2 and Z for DAC3 +5V mode for only DAC0 set ON = F0 70 7d 00 33 00 01 F7 +5V mode for only DAC1 set ON = F0 70 7d 00 33 00 02 F7 +5V mode for only DAC2 set ON = F0 70 7d 00 33 00 04 F7 +5V mode for only DAC3 set ON = F0 70 7d 00 33 00 08 F7 +5V mode for ALL DAC set OFF = F0 70 7d 00 33 00 00 F7 +5V mode for ALL DAC set ON = F0 70 7d 00 33 00 0F F7 Swich mode and controlers on/OFF is a config byte at adrss Switch to Mono mode ( all DAC controlers OFF ) = F0 70 7d 00 30 00 00 F7 Switch to Multi2 mode ( all DAC controlers OFF ) = F0 70 7d 00 30 04 00 F7 Switch to Multi4 mode ( all DAC controlers OFF ) = F0 70 7d 00 30 06 00 F7 Switch to Multi2 with controler activated on DAC1 and DAC3 = F0 70 7d 00 30 04 0A F7 Activate picth bend on DAC 1 and velo on DAC3= F0 70 7d 00 32 0A 08 F7 Switch to Mono mode with controler active on DAC 2 = F0 70 7d 00 30 00 04 F7 ---------------------------------------------------------------- The write to flash command ( WTF) ---------------------------------------------------------------- To force the MCV876 to write all parameters in RAM memory ( 17 bytes ) to the flash EPROm a special sysex command is used : Adress = 14 LSB = 07 MSB = 0b example: WTF send on channel 1 = F0 70 7D 00 14 07 0B F7 ---------------------------------------------------------------- PAPAREIL SYNTH LABS Marc Bareille(c)2009