midibox_speakjet
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| midibox_speakjet [2007/01/24 00:48] – audiocommander | midibox_speakjet [2016/06/09 01:17] (current) – [Where to buy ?] psykhaze | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== MIDIBox SpeakJet ====== | ====== MIDIBox SpeakJet ====== | ||
| - | ===== What is it? ===== | + | \\ |
| [[http:// | [[http:// | ||
| The SpeakJet IC was brought to market in February 2004, and is available from a variety of vendors for around $25 USD. | The SpeakJet IC was brought to market in February 2004, and is available from a variety of vendors for around $25 USD. | ||
| + | |||
| + | {{youtube> | ||
| \\ | \\ | ||
| Line 17: | Line 19: | ||
| \\ | \\ | ||
| - | |||
| To build this Midi-playable nifty synthesizer project, you will need: | To build this Midi-playable nifty synthesizer project, you will need: | ||
| * 1 MBHP Core Module (PIC18F, host of kII speakJet application -> see below, communicates via IIC with the SJ-IIC-Module) | * 1 MBHP Core Module (PIC18F, host of kII speakJet application -> see below, communicates via IIC with the SJ-IIC-Module) | ||
| * 1 MBHP SpeakJet-ICC-Module (PIC16F, receives IIC commands from Core and communicates via Serial Transmission with the Speakjet -> breadboard construction described below) | * 1 MBHP SpeakJet-ICC-Module (PIC16F, receives IIC commands from Core and communicates via Serial Transmission with the Speakjet -> breadboard construction described below) | ||
| - | * 1 2x16 LCD, optional (displays last sent commands and various settings) | + | * 1 LCD, optional (2x16 for kII v 0.1.x; 1x8 LCD for kII v 0.2.x) |
| + | ====== Where to buy ? ======= | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[http:// | ||
| + | |||
| + | [[http:// | ||
| \\ | \\ | ||
| + | ====== The MBHP SpeakJet IIC Module ======= | ||
| - | ===== The MBHP SpeakJet IIC Module ====== | + | \\ |
| This project is in progress at the moment. Please visit the [[http:// | This project is in progress at the moment. Please visit the [[http:// | ||
| * [[http:// | * [[http:// | ||
| - | \\ | + | {{http:// |
| **SpeakJet-IIC-Module Breadboard v1.3** | **SpeakJet-IIC-Module Breadboard v1.3** | ||
| * **[[SpeakJet Breadboard Construction]]** – Description and How-To of this breadboard construction: | * **[[SpeakJet Breadboard Construction]]** – Description and How-To of this breadboard construction: | ||
| * [[http:// | * [[http:// | ||
| * [[http:// | * [[http:// | ||
| + | * [[http:// | ||
| - | \\ | + | If you need older outdated circuit versions, see [[SpeakJet |
| - | **SpeakJet-IIC-Module Breadboard v1.0** | + | |
| - | * [[http:// | + | |
| - | * [[http:// | + | |
| - | * [[http:// | + | |
| - | + | ||
| - | {{http:// | + | |
| \\ | \\ | ||
| - | ===== The SpeakJet | + | ====== SpeakJet Application Software ====== |
| - | 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 " | + | |
| - | + | ||
| - | If you are improving the application, | + | |
| \\ | \\ | ||
| - | **Features**: | + | This project is in progress at the moment. Please visit the [[http://forum.midibox.org/|Forum]] |
| - | * Full MSA and SCP Control via Midi! | + | |
| - | * Trigger Allophones and SoundFX by Notes | + | |
| - | * Trigger Allophones only by Notes | + | |
| - | * Trigger SoundFX only by Notes | + | |
| - | * Jaw/Tongue control: set position of jaw and tongue by CC, play pitched Allophone by Notes | + | |
| - | * Different Jaw/Tongue sets available: Vowels/ | + | |
| - | * Change | + | |
| - | * Play the 5 Oscillators by Notes, one OSC per Channel | + | |
| - | * Harmonic subtractive syntesis Multi-OSC playmode by Notes(!) | + | |
| - | * Control Waveforms (shapes) of harmonic synthesis Multi-OSC mode | + | |
| - | * Change Allophone Pitch by using the 14bit PitchBend-Wheel | + | |
| - | * Control Bend with CH_AFTERTOUCH | + | |
| - | * Control Speed by CC | + | |
| - | * Control Master Volume by CC | + | |
| - | * Send Pauses by CC | + | |
| - | * Send Next Slow/High/Low/Fast by CC | + | |
| - | * Control OSC-Frquencies and Levels by CC | + | |
| - | * Control ENV-Frequency and Type by CC | + | |
| - | * Control Distortion (OSC 4 & 5) by CC | + | |
| - | * Fire Phrases by CC | + | |
| - | * Supports System Realtime Messages START, STOP, CONTINUE, RESET | + | |
| - | * Send PANIC by Foot & AllNotes/ | + | |
| - | * Custom assignable controls by editing the definition listing (IIC_SpeakJetMidiDefines.h) | + | |
| - | + | ||
| - | \\ | + | |
| - | **Sometimes it's more important to know what it can't do** (yet?): \\ | + | |
| - | * AIN sensors to trigger & control natural speech (allophone) output < | + | |
| - | * Multiple MBHP-IIC-Speakjet Modules | + | |
| - | * Bankstick support to save patches < | + | |
| - | * Phrase storage (use the [[http:// | + | |
| - | \\ | + | |
| - | < | + | |
| - | < | + | |
| - | < | + | |
| + | You need the following Software: | ||
| + | * **Firmware for the SpeakJet-IIC-Module** -> [[http:// | ||
| + | * **SpeakJet Application Software kII** | ||
| + | * v 0.2 (including updated SJ-IIC-Firmware v 1.2) -> [[SpeakJet Application Software v 0.2]] (recommended) | ||
| + | * v 0.1 -> [[SpeakJet Application Software v 0.1]] | ||
| + | * **Phrase-A-Lator** from Magnevation (together with a serial connection to a PC running Windows) is needed if you want to store phrases on the SJ or debug the hardware -- (optional) -> [[http:// | ||
| \\ | \\ | ||
| - | **Download**: | ||
| - | |||
| - | * [[http:// | ||
| - | * runs on the PIC18F Core to enable the full control of the SpeakJet Module by MIDI-Messages. The package contains the source, an X-Code 2.0 project, ACSim-Classes and precompiled .hex and .syx files. | ||
| - | * Note that you will also need the PIC16F Firmware for the SpeakJet IIC Module! | ||
| - | * Check out the audio-examples at the bottom of this page! | ||
| - | |||
| + | ====== SpeakJet Controller Extensions ====== | ||
| \\ | \\ | ||
| - | **LCD-Values**: | + | Currently some optional |
| - | A 16x2 LCD is optional. You see following infos: | + | |
| - | {{http:// | + | {{youtube> |
| - | * N: (Note) Base Note Listener. ' | + | There are two controller extensions available for the SpeakJet project: |
| - | * H: (Harmony) Current Base Note, eg ' | + | |
| - | * V: (Value) Last Value (0..127) | + | |
| - | * J: (Jaw) Jaw Position, 0x0 opened, 0xB closed | + | |
| - | * T: (Tongue) Tongue Position, 0x0 front, 0x5 back | + | |
| - | * O: (OSC) Subtractive Synthesis Waveshape: SAW, TRIANGLE, SQUARE | + | |
| - | * E: (ENV) Envelope Waveshape: SINE, SAW, TRIANGLE, SQUARE | + | |
| - | * R: (REC) Record Buffer Mode (hidden feature) | + | |
| + | * **[[http:// | ||
| - | \\ | + | * **[[midibox_speakjet_k64_modul|k64 Keyboard Modul]]** -> from Rio. **Note that an adapted version |
| - | **MIDI-Implementation-Chart**:\\ | + | |
| - | + | ||
| - | ^ Function | + | |
| - | ^ == 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 | + | |
| - | | 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 ' | + | |
| - | | Tongue Position | SJCC_MOUTH_TONGUE | + | |
| - | | 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 Level | SJCC_OSCx_LVL | CC 101..105 | Poly | Set Volume of OSC 1 to 5 | | + | |
| - | | OSCx Freqency | SJCC_OSCx_FREQ | CC 111..115 | Poly | Set Frequency of OSC 1 to 5 | | + | |
| - | | Envelope Frequency | SJCC_ENV_FREQ | CC 106 | Omni | Set Envelope' | + | |
| - | | 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: | + | |
| - | | 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) | | + | |
| \\ | \\ | ||
| - | **Tools & Helpers**: | + | ====== Further Information... |
| - | If you're a developer and are working on your own implementations, | + | |
| - | * [[SpeakJet Control Overview]] (SCP and MSA Control Overview) | + | |
| - | * [[SpeakJet Definition List]] (SCP and MSA Command #defines) | + | |
| - | * [[acmididefines|Midi Definition List]] incl. Note2Frequency definitions (see [[MIDI Specification]]) | + | |
| - | + | ||
| - | + | ||
| - | \\ | + | |
| - | + | ||
| - | ===== For Further Information... ===== | + | |
| * [[http:// | * [[http:// | ||
midibox_speakjet.1169599699.txt.gz · Last modified: 2007/02/13 12:31 (external edit)
