Native Instruments B4
|
The NI B4 is a Hammond B3 software clone which runs on a pc in either standalone form or as a plugin for sequencers etc. I first heard about this (and J.D.Petkov) in the alt.music.hammond-organ usenet channel. Jordan Petkov produces a pcb containing a single chip micro together with a few ic's which encodes all of the B4 functions into MIDI data, suitable for feeding directly into the pc (the pcb also offers keyboard scanning if required). I would normally have produced a single-chip board, but most facilities for producing pcb's (especially a photo-plotter) are no longer available to me. However, I utilised one of my earlier pcb designs to filter/remap some of the MIDI data. I use my Yamaha HS-8 multikeyboard as the main MIDI note source and to provide SWELL pedal data and also knee-lever on/off data for B4 rotor speed. (The normal HS-8 knee-lever function is for switching sustain on/off). The HS-8 is also used for selecting B4 presets. Chinwag mode off for now, let's have some pics.
|

The
B4 controller (control surface) in situ.
|
|
|
|
|
|

Block diagram
| Since I'm using a seperate MIDI note source (Jordan's board is not scanning keys in my case) I had to utilise a MIDI-merge unit. This caused problems, it seems that the merge unit doesn't like handling 'active sensing' or 'timing clock' data which the HS-8 produces in abundance, hung and/or missing notes was the result . The HS-8 also produces lots of aftertouch and swell pedal data. I decided therefore to use an old pcb design of mine to filter/limit some of these messages. I could also use it to remap some of the MIDI codes. The SWELL pedal and knee-lever needed remapping, not absolutely necessary since I had been using midiox and midiyoke for this (www.midiox.com). This pcb is also used to remap the HS-8 preset buttons (16 of them) into 2 groups of 8 (8 banks of 8 presets) thus giving 64 presets, something which I couldn't fathom using midiox. Jordan's board will encode 'preset switches' but since the HS-8 already had 16 buttons I wanted to use those. |
|
FILTERED OUT
COMPLETELY: C2 00 to C2 0F - PKB
preset change ch3 (HS-8 buttons 1 to 16) not reqd
|
| FILTERED OUT
PARTIALLY: BF 0B nn - Swell pedal - 50% of data removed
|
|
REMAPPING: C0 00 to C0 0F - UKB
preset change (HS-8 buttons 1 to 16) |
BUTTONS - PRESET - BANK
| BANKS | |||||||||
| 9(1) | 10(2) | 11(3) | 12(4) | 13(5) | 14(6) | 15(7) | 16(8) | ||
|
P R E S E T S |
8 | 8 | 16 | 24 | 32 | 40 | 48 | 56 | 64 |
| 7 | 7 | 15 | 23 | 31 | 39 | 47 | 55 | 63 | |
| 6 | 6 | 14 | 22 | 30 | 38 | 46 | 54 | 62 | |
| 5 | 5 | 13 | 21 | 29 | 37 | 45 | 53 | 61 | |
| 4 | 4 | 12 | 20 | 28 | 36 | 44 | 52 | 60 | |
| 3 | 3 | 11 | 19 | 27 | 35 | 43 | 51 | 59 | |
| 2 | 2 | 10 | 18 | 26 | 34 | 42 | 50 | 58 | |
| 1 | 1 | 9 | 17 | 25 | 33 | 41 | 49 | 57 | |
FILTER/MAPPER FILES - ASSEMBLY IMAGE (INTEL HEX) PRN file
|
|
|
| The pc has a Creative 'Audigy Player' soundcard (with ASIO drivers) purely for reverb (a slightly modified 'Garage reverb' sounds the best to me) plus a sniff of chorus. Latency is set at 35mS, 25mS may have been acceptable (I can't remember) but 35 gives some 'click overhead' and I find it quite alright for playing. Signal/noise ratio is quoted as 100db and if I release all notes I can't tell that it's switched on. Parameters are set at max treble and a tad above centre for bass. Too much bass and the overtones/undertones/general garbage (B3 emulation) on note B's becomes very noisy. |
Here are some of the
components that you'll need
(if you decide to go this way).
|
http://rswww.com |
|
|
http://www.rapidelectronics.co.uk/ |
|
http://www.maplin.co.uk
|
http://www.geocities.com/JDPetkov/

|
NOTES: 1/. In Jordan's info sheet, slider #1 is the leftmost of each set. 2/. Pots common (up) = +5v goes to the ends of the sliders nearest to you ;) 3/. H14 (Power) I can't remember which is + (and I'm not removing all those knobs) so trace it back from the capacitor through the bridge :)
LINKS: |