********************************* * * ********************************* Version 1: 28.08.2006 for consult to Johannes Taelman and Kristof Lauwers PC board used: MidiHub board, rev2, 01/2006, X16 added in the breadboard area. PIC: 18F2525 update: 01.09.2006 bug report: 02.09.2006: crash on controller 70: solved: was hardware ground-loop 11.09.2006: Watch out: on pitch bend reset, the siren will turn at half speed !!! 09.10.2006: revision of siren code. Now pitch bend requires note on to work. Pitch bend now uses the 14 bit range. So at 0 it will not turn, at 2^14 it will be at maximum speed. msb=64 will be mid range speed now. Sysex implemented now. It did'nt work in the previous code version. Midi channel for springers: 7 (offset 0) Weidmueller X17: PWM Motor control: PWM output for Siren motor. Midi note 1, velo = PWM value ? double mapped on note 24 Weidmueller X17, pin2 - PIC pin 13 = RC2 big siren motor, 75V PWM output for police light, Midi note 2, velo = PWM value, double mapped with controller 70 Weidmueller X17, pin3 - PIC pin 12 = RC1 rotating police light 24V Weidmueller X17, pin1 - GND Weidmueller X17, pin4 - NC On reception of note off, PWM should be entirely OFF The siren should also listen to pitch bend commands (upwards only?) (14bits) For safety reasons we may have to limit the maximum PWM value. Springers-drivers: these require pulsing only. Velocity controls the pulse duration Weidmueller X11: Weidmueller X11, pin1 - GND Weidmueller X11, pin4 = +75V Weidmueller X11, pin2 Note 120 double mapped on note 36 Weidmueller X11, pin3 Note 121 double mapped on note 37 Weidmueller X12: Weidmueller X11, pin1 - GND Weidmueller X11, pin4 = +75V Weidmueller X11, pin2 Note 122 double mapped on note 38 Weidmueller X11, pin3 Note 123 double mapped on note 39 Weidmueller X15: Weidmueller X11, pin1 - GND Weidmueller X11, pin4 = +75V Weidmueller X11, pin2 Note 118 double mapped on note 40 Weidmueller X11, pin3 Note 119 double mapped on note 41 Weidmueller X16: Pin1 = PIC pin 23 (RB2) = shaker1 up midi note 124, pulse only double mapped on note 72 Pin2 = PIC pin 22 (RB1) = shaker1 down midi note 125, pulse only double mapped on note 73 Pin3 = +75V Pin4 = PIC pin 16 (RC5) = shaker2 up midi note 126, pulse only double mapped on note 79 Pin5 = PIC pin 15 (RC4) = shaker2 down midi note 127, pulse only double mapped on note 80 Pin6 = GND, power return All notes off should zero all outputs. Sysex velocity lookup required.