You should have come here from the Midibox SpeakJet Project. On this page you'll find descriptions of the Application Software kII for the Core Module, that controls the MBHP-IIC-SpeakJet-Module.
The SJ Control Application Software provides full access to all SJ-Functions via MIDI!
kII is a MIDI control application for the MBHP_SpeakJet Module. By connecting a Core equipped with this program to the SpeakJet Module via IIC you can control nearly all functions of the SpeakJet Chip by Midi-Messages.
kII stands for “Kempelen Two”, Baron Wolfang von Kempelen has been a hungarian inventor and creator of famous automats. Whereas his most famous creatin has been the “Turkish Chessplayer” (which was a late-revealed fake with a chess-player sitting inside), he also invented one of the first talking machines ever. Baron Kempelen lived from 1734 to 1804.
If you are improving the application, please send me an email or PM me in the forum, so I can update the project! –audiocommander
Sometimes it's more important to know what it can't do (yet?):
1) will be available with the next version
2) would be nice, I'm thinking about it…
3) don't wait for it (or help coding :)
A 16×2 LCD is optional. You see following infos:
Function | #define | default assingment | Channel Mode | Description | |
---|---|---|---|---|---|
== NOTES == | |||||
Voice | |||||
Soundcodes | SJCH_SOUNDCODES | CH 1 | Omni | Play all available Sounds | |
Allophones | SJCH_ALLOPHONES | CH 2 | Omni | Play all available Vocal Allophones | |
Sound-FX | SJCH_FX | CH 3 | Omni | Play all available Sound-FX | |
Pitch | SJCH_PITCH | CH 4 | Omni | Change the pitch of current Sounds; if nothing is triggered, you can't hear anything! | |
Vowels | SJCH_VOWELS | CH 5 | Omni | Trigger Pitched Allophone; Jaw- and Tongue-Controls are needed to change the vowel | |
Consonants | SJCH_CONSONANTS | CH 6 | Omni | Trigger Pitched Consonants; Jaw- and Tongue-Controls are needed to change the consonant | |
Vowels/Cons | SJCH_VOWELS_CONSONANTS | CH 7 | Omni | Trigger Pitched Allophones; Jaw- and Tongue-Controls are needed to change the consonant | |
Vowels w. Pauses | SJCH_VOWL_PAUS | CH 8 | Omni | Trigger Pitched Vowels with Pauses; Jaw- and Tongue-Controls are needed to change the consonant | |
Vowels/Cons w. Pauses | SJCH_VOWL_CONS_PAUS | CH 9 | Omni | Trigger Pitched Vowels & Consonants with Pauses; Jaw- and Tongue-Controls are needed to change the consonant | |
Vocal Percussion | SJCH_PERCUSSIVE | CH 10 | Omni | Trigger percussive sounds only | |
Synth | |||||
OSC1 | SJCH_OSC1 | CH 11 | Poly | Play OSC 1 | |
OSC2 | SJCH_OSC2 | CH 12 | Poly | Play OSC 2 | |
OSC3 | SJCH_OSC3 | CH 13 | Poly | Play OSC 3 | |
OSC4 | SJCH_OSC4 | CH 14 | Poly | Play OSC 4 | |
OSC5 | SJCH_OSC5 | CH 15 | Poly | Play OSC 5 | |
Synth | SJCH_OSC_Omni | CH 16 | Omni | Subtractive Soundsynthesis with all 5 OSCs (Single Voice only). Apply different waveforms for both synth & envelope and add distortion for soundmodelling! | |
== CONTROL CHANGE (Sliders) == | |||||
Voice | |||||
Phrases | SJCC_PHRASE | CC 9 | Omni | Fire SpeakJet Phrase | |
Jaw Open | SJCC_MOUTH_JAW | CC 40 | Omni | Open Jaw, eg: closed 'u', opened 'a' | |
Tongue Position | SJCC_MOUTH_TONGUE | CC 41 | Omni | Position Tongue, eg: front 'th', back 'err' | |
Stress | SJCC_MOUTH_STRESS | CC 43 | Omni | Bend Voice from high env to low env (pitch independent) | |
Speed | SJCC_MOUTH_SPEED | CC 44 | Omni | Speed up or slow down allophone lengths | |
Pauses | SJCC_MOUTH_PAUSES | CC 45 | Omni | Inserts Pauses from 0 to 640 ms (0..127) | |
Volume | SJCC_MASTER_VOL | CC 108 | Omni | Set Main Volume | |
Synth | |||||
OSCx Freqency | SJCC_OSCx_FREQ | CC 101..105 | Poly | Set Frequency of OSC 1 to 5 | |
OSCx Level | SJCC_OSCx_LVL | CC 111..115 | Poly | Set Volume of OSC 1 to 5 | |
Envelope Frequency | SJCC_ENV_FREQ | CC 106 | Omni | Set Envelope's frequency | |
Envelopy Waveform | SJCC_ENV_TYPE | CC 116 | Omni | Set Waveshape of ENV: Saw, Sine, Triangle, Square | |
Distortion | SJCC_DISTORTION | CC 118 | Omni | Set Distortion Amount (0..127) | |
Harmonizer | |||||
Base Note | SJCC_HARMONY_BASE | CC 39 | Omni | Set base note (0..127) | |
== CONTROL CHANGE (Buttons) == | |||||
Voice | |||||
Phrases 0..3 | SJCC_PHRASEx | CC 29..32 | Omni | Fire SpeakJet Phrases 0 to 3 | |
Pauses 0..6 | SJCC_PAUSEx | CC 21..24 | Omni | Fire Pauses; currently implemented: 1,2,3,5 | |
Slower | SJCC_NEXT_SLOW | CC 25 | Omni | Play next Allophone slower | |
Lower | SJCC_NEXT_LOW | CC 26 | Omni | Play next Allophone lower | |
Higher | SJCC_NEXT_HIGH | CC 27 | Omni | Play next Allophone higher | |
Faster | SJCC_NEXT_FAST | CC 28 | Omni | Play next Allophone faster | |
Synth | |||||
Synth Waveshape | SJCC_OSC_WAVESHAPE | CC 50 | Omni | Toggle Synth Waveshape: Saw, Triangle, Square | |
Envelope Waveshape | SJCC_ENV_WAVESHAPE | CC 51 | Omni | Toggle Env Waveshape: Saw, Triangle, Square, Sine | |
Harmonizer | |||||
Base Note | SJCC_HARMONY_LISTEN | CC 37 | Omni | Toggle on to set new base note by next incoming note | |
Scale | SJCC_HARMONY_SCALE | CC 38 | Omni | Next Scale; 0=none, 1=major, 2=minor | |
== PITCH WHEEL == | |||||
Voice | |||||
Pitch | SJCC_PITCH | - | Omni | Changes the Pitch of Soundcodes | |
== POLY AFTERTOUCH == | |||||
Voice | |||||
Bend | MIDI_POLY_AFTER | - | Omni | Changes the Bending of Soundcodes | |
Bend | MIDI_CH_AFTER | - | Omni | Changes the Bending of Soundcodes | |
== SYSTEM REALTIME MESSAGES == | |||||
START, CONTINUE | MIDI_START, MIDI_CONTINUE | - | - | Start Enunciating | |
STOP | MIDI_STOP | - | - | Pause Enunciating | |
RESET | MIDI_RESET | - | - | Hardware-Reset (similar to switching power off/on) |
If you're a developer and are working on your own implementations, you will find these sources useful: