User Tools

Site Tools


midibox_speakjet

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
midibox_speakjet [2006/12/23 01:04]
audiocommander added features I'm currently working upon
midibox_speakjet [2016/06/09 01:17]
psykhaze [Where to buy ?]
Line 1: Line 1:
 ====== MIDIBox SpeakJet ====== ====== MIDIBox SpeakJet ======
  
-===== What is it? =====+\\
 [[http://​www.ucapps.de/​mbhp_iic_speakjet.html|MIDIBox SpeakJet Synthesiser]] is a project that uses the [[http://​www.magnevation.com|Magnevation]][[http://​www.speakjet.com/​|Speakjet]] controlled by midibox as a standalone synthesizer. [[http://​www.ucapps.de/​mbhp_iic_speakjet.html|MIDIBox SpeakJet Synthesiser]] is a project that uses the [[http://​www.magnevation.com|Magnevation]][[http://​www.speakjet.com/​|Speakjet]] controlled by midibox as a standalone synthesizer.
  
 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>​small:​EWSybnx2SOM}}
  
 \\ \\
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://​www.sparkfun.com/​products/​9578|Sparkfun]]
  
-===== The MBHP SpeakJet IIC Module ====== +[[http://​www.speechchips.com/shop/item.aspx?itemid=6|Speechchips]]
-This project is in progress at the moment. Please visit the [[http://​forum.midibox.org/​|Forum]] (and especially ​[[http://​www.midibox.org/forum/index.php?topic=2870.0|the first SpeakJet thread]] or see the links below for more info.+
  
-  * [[http://​www.ucapps.de/mbhp_iic_speakjet.html|IIC SpeakJet Module]] <​sup>​uCApps</​sup>​+[[http://​www.lextronic.fr/P3124-circuit-integre-speakjet.html|Lextronic France]]
  
 \\ \\
-**SpeakJet-IIC-Module ​Breadboard v1.3** +====== The MBHP SpeakJet IIC Module ​=======
-  * **[[SpeakJet Breadboard Construction]]** – Description and How-To of this breadboard construction:​ +
-  * [[http://​www.audiocommander.de/​downloads/​midibox/​mbhp_iic_speakjet_13.board.pdf|Preliminary Breadboard with lowPassFilter v1.3]] (PDF, 604 kB) +
-  * [[http://​www.audiocommander.de/​downloads/​midibox/​mbhp_iic_speakjet_13.board.fh11.zip|Preliminary Breadboard with lowPassFilter v1.3]] (FreeHandMX sourcefile with a lot of nice electronical symbols, 264 kB)+
  
 \\ \\
-**SpeakJet-IIC-Module Breadboard v1.0** +This project is in progress at the momentPlease visit the [[http://forum.midibox.org/|Forum]] (and especially ​[[http://​www.midibox.org/forum/index.php?topic=2870.0|the first SpeakJet ​thread]] or see the links below for more info.
-  * [[http://www.audiocommander.de/downloads/​midibox/​mbhp_iic_speakjet_10.board.pdf|Preliminary Breadboard with lowPassFilter]] (PDF, 480 kB) +
-  * [[http://​www.audiocommander.de/​downloads/​midibox/​mbhp_iic_speakjet_10.board.fh11.zip|Preliminary Breadboard with lowPassFilter]] (FreeHandMX sourcefile with a lot of nice electronical symbols, 292 kB) +
-  * [[http://​www.audiocommander.de/picBrowser/picBrowser.php?go=galleries/​060600_kII_MIOS&​thumbs=0|Picture Gallery: ​SpeakJet ​Breadboard]]+
  
-{{http://www.audiocommander.de/picBrowser/​phpThumb.php?​src=galleries/060600_kII_MIOS/​IMG_6776.jpg&​w=250&​h=166&​q=95&​f=.jpg?​250x166}}+  * [[http://www.ucapps.de/mbhp_iic_speakjet.html|IIC SpeakJet Module]] <​sup>​uCApps<​/sup>
  
 +{{http://​www.audiocommander.de/​picBrowser/​phpThumb.php?​src=galleries/​070305_kII/​IMG_7772.jpg&​w=250&​h=166&​q=95&​f=.jpg?​250x166}}
  
-\\ +**SpeakJet-IIC-Module Breadboard v1.3** 
-===== The SpeakJet ​Control Application Software ===== +  * **[[SpeakJet Breadboard Construction]]** – Description and How-To of this breadboard construction:​ 
-The SJ Control Application Software provides full access to all SJ-Functions via MIDI!+  * [[http://​www.audiocommander.de/​downloads/​midibox/​mbhp_iic_speakjet_13.board.pdf|Breadboard Design with lowPassFilter v1.3]] (PDF, 604 kB) 
 +  * [[http://​www.audiocommander.de/​downloads/​midibox/​mbhp_iic_speakjet_13.board.fh11.zip|Breadboard Design with lowPassFilter v1.3]] (FreeHandMX sourcefile with a lot of nice electronical symbols, 264 kB) 
 +  * [[http://​www.audiocommander.de/​picBrowser/​picBrowser.php?​go=galleries/​070305_kII&​thumbs=1&q=|Picture Gallery: ​SpeakJet ​Breadboard v1.3]]
  
-kII_2 is a MIDI control application for the MBHP_SpeakJet Module. +If you need older outdated circuit versions, see [[SpeakJet ​Dev Archive]]
-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. 
- 
-To my knowledge, this is the first MIDI controllable DIY-project available. 
-If you are improving the application,​ please send me an email or PM me in the forum, so I can update the project! // --audiocommander//​ 
  
 \\ \\
-**Features**:​\\ 
-  * 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/​Consonants/​Pauses 
-  * Change the pitch of currently played Allophones by Notes 0..59 
-  * 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/​SoundsOFF Messages 
-  * Custom assignable controls by editing the definition listing (IIC_SpeakJetMidiDefines.h) 
  
-\\ +====== SpeakJet Application Software ======
-**Sometimes it's more important to know what it can't do** (yet?): \\ +
-  * AIN sensors to trigger & control natural speech (allophone) output <​sup>​**1)**</​sup>​ +
-  * Multiple MBHP-IIC-Speakjet Modules (cascaded SpeakJets!) <​sup>​**2)**</​sup>​ +
-  * Bankstick support to save patches <​sup>​**2)**</​sup>​ +
-  * Phrase storage (use the [[http://​www.magnevation.com/​software.htm|Phrase-A-Lator]] from Magnevation via RS232!) <​sup>​**3)**</​sup>​ +
-\\ +
-<​sup>​**1)**</​sup>​ will be available with the next version\\ +
-<​sup>​**2)**</​sup>​ would be nice, I'm thinking about it...\\ +
-<​sup>​**3)**</​sup>​ don't wait for it (or help coding :) \\+
  
 \\ \\
-**LCD-Values**:​\\ +This project ​is in progress at the momentPlease visit the [[http://​forum.midibox.org/​|Forum]] (and especially [[http://www.midibox.org/forum/index.php?topic=2870.0|the first SpeakJet thread]] or see the links below for more info.
-A 16x2 LCD is optionalYou see following infos: +
- +
-{{http://www.audiocommander.de/picBrowser/phpThumb.php?src=galleries/​060600_kII_MIOS/​IMG_7714.jpg&​w=250&​h=166&​q=95&​f=.jpg?​250x166}} +
- +
-  * N: (Note) Base Note Listener. '​-'​ => inactive, '​*'​ => next note will get new base +
-  * H: (Harmony) Current Base Note, eg '​D#'​ +
-  * 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)+
  
 +You need the following Software:
 +  * **Firmware for the SpeakJet-IIC-Module** -> [[http://​www.ucapps.de/​mbhp_iic_speakjet.html|download from uCApps.de/​mbhp_iic_speakjet.html]] (v 1.0)
 +  * **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://​www.magnevation.com/​software.htm|Phrase-A-Lator Download Page]]
  
 \\ \\
-**MIDI-Implementation-Chart**:​\\ 
- 
-^ 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 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'​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) | 
  
 +====== SpeakJet Controller Extensions ======
  
 \\ \\
-**Download**:​\\+Currently some optional add-ons are being developed that allow various control of the MBHP-SpeakJet Project. You can add just one of them or all ;)
  
-  * [[http://​www.audiocommander.de/​downloads/​midibox/​kII.tgz|SpeakJet Application Software '​kII'​]] – (138 kb) 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. +{{youtube>​small:qSiMwpbNNsg}}
-  * 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!+
  
-{{http://​www.audiocommander.de/​picBrowser/​phpThumb.php?​src=galleries/​060600_kII_MIOS/​IMG_7712.jpg&​w=250&​h=166&​q=95&​f=.jpg?​250x166}}+There are two controller extensions available for the SpeakJet project:
  
 +  * **[[http://​www.youtube.com/​watch?​v=qSiMwpbNNsg|HandTracker Sensor Matrix]]** -> from audiocommander,​ part of the v0.2 release!
  
- +  ​* **[[midibox_speakjet_k64_modul|k64 Keyboard Modul]]** -> from Rio. **Note that an adapted version of the k2 application based on v0.1 is required**. The k64 has some additional synth functions, the original k2 app does not provide atm. Future k2-updates may or may not be compatible with this mod.
-\\ +
-**Tools & Helpers**:​\\ +
-If you're a developer and are working on your own implementations,​ you will find these sources useful: +
-  ​* [[SpeakJet Control Overview]] (SCP and MSA Control Overview) +
-  ​[[SpeakJet Definition List]] (SCP and MSA Command #defines) +
-  ​[[acmididefines|Midi Definition List]] inclNote2Frequency definitions (see [[MIDI Specification]])+
  
  
 \\ \\
- +=====Further Information... ​======
-===== For Further Information... =====+
    
   * [[http://​www.midibox.org/​forum/​index.php?​topic=2870.0|Midibox.org SpeakJet thread]]   * [[http://​www.midibox.org/​forum/​index.php?​topic=2870.0|Midibox.org SpeakJet thread]]
midibox_speakjet.txt · Last modified: 2016/06/09 01:17 by psykhaze