Communicating with the Play Acoustic
Auto-generated from param-defs.js — only verified, user-facing parameters are listed.
Introduction
The TC Helicon Play Acoustic is a vocal and guitar effects processor that connects to a computer via USB. While it appears as a standard USB MIDI device, it does not respond to conventional MIDI messages like Control Change (CC) or Program Change (PC). Instead, all device control happens through SysEx (System Exclusive) messages — a part of the MIDI specification designed for manufacturer-specific communication.
Standard MIDI vs SysEx
Standard MIDI messages are short (1–3 bytes) and well-defined: Note On, Note Off, Control Change, Program Change. Most MIDI devices respond to these — for example, sending a Program Change to a guitar pedal typically switches presets. The Play Acoustic sends these messages (CC#28 for HIT, CC#32 + PC for preset changes, CC#102–107 for footswitches) but ignores them when received.
SysEx messages are variable-length, manufacturer-specific data packets that can carry anything — preset data, configuration, firmware updates. They start with F0 (SysEx start) and end with F7 (SysEx end), with all data bytes between limited to 7-bit values (0x00–0x7F). This means regular 8-bit data must be encoded into 7-bit format.
How the Play Acoustic Communicates
All messages to and from the device use the TC Helicon SysEx header:
F0 00 01 38 00 70 [command] [data...] F7
│ │ │ │
│ │ │ └─ Play Acoustic device ID (0x70)
│ │ └──── Device group (0x00)
│ └───────────── Manufacturer ID (TC Helicon = 00 01 38)
└──────────────── SysEx start
00 60 is the bootloader. Sending messages with this header will put the device in firmware update mode, requiring a power cycle to recover.What the Device Sends (outgoing standard MIDI)
- Program Change + Bank Select (CC#32) — when you switch presets on the device
- CC#28 — when HIT is toggled on or off
- CC#102–107 — when footswitches are pressed (requires Switch-3 or Switch-6 pedal configured to send MIDI)
What the Device Accepts (incoming SysEx only)
- Preset loading — the full preset (header + 5 data packets) must be transmitted. There is no "switch to preset N" command.
- Global settings — read and write the device's setup data (HIT state, guitar effects, pitch correction, looper input, etc.) via a read-modify-write cycle.
This is the same protocol that TC Helicon's VoiceSupport 2 application uses. Everything documented here was reverse-engineered by capturing and comparing data packets between VoiceSupport and the device.
Setup Parameter Map (Global Settings)
Global setup is stored in 7 packets of 112 bytes each (0x13 command). Each parameter has a logical index s<n> used by the editor; the underlying byte positions are handled by tch-format.js.
Read: BeginSync → RequestSetup (0x15 00) → receive 7 packets → EndSync
Write: BeginSync → RequestSetup → receive 7 packets → send 7 modified packets (30ms apart) → ACK → EndSync. Read and write must be in the same sync session.
Checksum: (sum of raw bytes 10–109) % 128, stored at raw byte 110.
| Index | Name | Group | Range / Options |
|---|---|---|---|
s0 | Low Gain (Para) | Setup: Guitar EQ (System) | -12–12 dB |
s1 | Low Gain (Shelf) | Setup: Guitar EQ (System) | -12–12 dB |
s2 | Low Freq (Para) | Setup: Guitar EQ (System) | 0–500 Hz |
s3 | Low Freq (Shelf) | Setup: Guitar EQ (System) | 0–500 Hz |
s4 | Low BW (Para) | Setup: Guitar EQ (System) | 0–100 |
s5 | Low BW (Shelf) | Setup: Guitar EQ (System) | 0–100 |
s6 | Notch Gain | Setup: Anti-Feedback | -12–12 dB |
s8 | Hi Gain (Para) | Setup: Guitar EQ (System) | -12–12 dB |
s9 | Hi Gain (Shelf) | Setup: Guitar EQ (System) | -12–12 dB |
s10 | Hi Freq (Para) | Setup: Guitar EQ (System) | 0–500 Hz |
s11 | Hi Freq (Shelf) | Setup: Guitar EQ (System) | 0–500 Hz |
s12 | Hi BW (Para) | Setup: Guitar EQ (System) | 0–100 |
s13 | Hi BW (Shelf) | Setup: Guitar EQ (System) | 0–100 |
s14 | Notch Freq | Setup: Anti-Feedback | 45–97 |
s16 | Guitar Level | Setup: Mixer | -31–24 dB (-31=Off) |
s17 | Out Level | Setup: Mixer | -36–0 dB (-36=Off) |
s18 | USB Out Level | Setup: Mixer | -36–0 dB (-36=Off) |
s19 | Headphone Level | Setup: Mixer | -61–0 dB (-61=Off) |
s20 | USB In Level | Setup: Mixer | -36–0 dB (-36=Off) |
s21 | Delay/Reverb Level | Setup: Mixer | -36–0 dB (-36=Off) |
s22 | Harmony Level | Setup: Mixer | -36–0 dB (-36=Off) |
s23 | Guitar µMod Level | Setup: Mixer | -60–12 dB |
s24 | Guitar Delay Level | Setup: Mixer | -60–12 dB |
s25 | Guitar Reverb Level | Setup: Mixer | -60–12 dB |
s26 | Guitar BodyRez Level | Setup: Mixer | -60–12 dB |
s27 | Guitar µMod Width | Setup: Mixer | 0–200 |
s28 | Guitar Delay Width | Setup: Mixer | 0–200 |
s29 | Guitar Reverb Width | Setup: Mixer | 0–200 |
s30 | Guitar BodyRez Width | Setup: Mixer | 0–200 |
s31 | Output Mode | Setup: Mixer | 0=Vocal/Guitar (DI), 1=Stereo, 2=Mono |
s32 | Input | Setup: Looper | 0=Vocal, 1=Guitar, 2=Aux, 3=Vocal+Guitar, 4=Guitar+Aux, 5=All |
s33 | Style | Setup: Guitar µMod | 0=Corona Chorus 12:00, 1=Corona Chorus - Fast, 2=Corona Chorus - Slow, 3=Silky Detune, 4=Medium Detune, 5=Mono Chorus |
s34 | Depth | Setup: Guitar µMod | 0–100 % |
s35 | Speed | Setup: Guitar µMod | 0–300 |
s36 | Style | Setup: Guitar Delay | 0=Flashback 2290, 1=Flashback Analog, 2=Flashback Tape, 3=Flashback Lofi, … (16 total) |
s37 | BodyRez Delay Style | Setup: Guitar Delay | 0=Flashback 2290, 1=Flashback Analog, 2=Flashback Tape, 3=Flashback Lofi, … (16 total) |
s38 | Time L | Setup: Guitar Delay | 0–1500 ms |
s39 | Time R | Setup: Guitar Delay | 0–1500 ms |
s40 | Feedback (BodyRez) | Setup: Guitar Delay | 0–100 % |
s41 | Feedback (Guitar) | Setup: Guitar Delay | 0–100 % |
s42 | Filter Style | Setup: Guitar Delay | 0=Digital, 1=Tape, 2=Analog, 3=Radio, … (13 total) |
s43 | Lo Cut L | Setup: Guitar Delay | 0–300 |
s44 | Lo Cut R | Setup: Guitar Delay | 0–300 |
s45 | Hi Cut L | Setup: Guitar Delay | 0–300 |
s46 | Hi Cut R | Setup: Guitar Delay | 0–300 |
s47 | Style | Setup: Guitar Reverb | 0=HoF - Hall, 1=HoF - Plate, 2=HoF - Room, 3=HoF - Church, … (36 total) |
s48 | Decay | Setup: Guitar Reverb | 91–290 s |
s49 | Pre-delay | Setup: Guitar Reverb | 0–100 ms |
s50 | Pitch Correction | Setup: Vocal | 0–100 % |
s52 | Mic Type | Setup: Vocal | 0=Dynamic Mic, 1=Condenser Mic, 2=MP-75 Mic, 3=E835FX Mic, 4=MP-76 Mic, 5=USB |
s54 | RoomSense Level | Setup: Mixer | -36–0 dB (-36=Off) |
s65 | Tune Reference | Setup: Guitar | 840–920 Hz |
s66 | Guitar Gain | Setup: Guitar | -31–24 dB |
s67 | Global Guitar FX | Setup: Guitar | 0 = Off, 1 = On |
s68 | Global Key | Setup: Device | 0 = Off, 1 = On |
s69 | Harmony Key | Setup: Vocal | 0=Auto, 1=C, 2=C#/Db, 3=D, … (13 total) |
s70 | Global Tempo | Setup: Device | 0 = Off, 1 = On |
s71 | Lead Delay | Setup: Vocal | 0=None, 1=Voice Sync, 2=Auto |
s72 | Lead Mute | Setup: Vocal | 0 = Off, 1 = On |
s73 | MP-75 Control | Setup: Controls | 0=HIT, 1=HIT & Talk, 2=Preset Up, 3=Loop |
s74 | LCD Contrast | Setup: Device | 0–5 |
s75 | Up/Down Function | Setup: Controls | 0=Looping, 1=Set Key |
s76 | Feedback | Setup: Looper | 0–100 % |
s77 | Undo | Setup: Looper | 0 = Off, 1 = On |
s81 | RoomSense | Setup: Guitar | 0=Ambient, 1=Ambient/Auto |
s83 | Tone Style | Setup: Vocal | 0=Off, 1=Normal, 2=Less Bright, 3=Norm+Warmth, … (9 total) |
s84 | Aux to Main Out | Setup: Mixer | 0 = Off, 1 = On |
s85 | Aux In Type | Setup: Mixer | 0=Live, 1=Tracks |
s86 | Loop Level | Setup: Mixer | -36–0 dB (-36=Off) |
s87 | Style | Setup: BodyRez | 0=Custom, 1=Flat, 2=Just Comp, 3=Bodyrez 1, … (14 total) |
s88 | Amount | Setup: BodyRez | -1–10 |
s89 | Low Gain (Para) | Setup: BodyRez | -12–12 dB |
s90 | Low Gain (Shelf) | Setup: BodyRez | -12–12 dB |
s91 | Hi Gain (Para) | Setup: BodyRez | -12–12 dB |
s92 | Hi Gain (Shelf) | Setup: BodyRez | -12–12 dB |
s93 | Delay Level | Setup: BodyRez | -60–12 dB |
s94 | Comp Threshold | Setup: BodyRez | -60–0 dB |
s95 | Comp Makeup | Setup: BodyRez | 0–40 dB |
s96 | Headphone Limiter | Setup: Mixer | -61–0 dB (-61=Off) |
s97 | Vocal Cancel | Setup: Vocal | 0 = Off, 1 = On |
s98 | Guitar Gate | Setup: Guitar | -81–0 dB (-81=Off) |
s105 | Phase Invert | Setup: Anti-Feedback | 0 = Off, 1 = On |
s106 | Low Cut Filter | Setup: Anti-Feedback | 0–86 Hz |
s107 | Guitar Boost | Setup: Guitar | 0–9 dB |
s109 | Mic Boost | Setup: Mixer | 0=Off, 1=Low, 2=High |
s110 | Guitar Delay | Setup: Guitar FX Global | 0 = Off, 1 = On |
s111 | Guitar Reverb | Setup: Guitar FX Global | 0 = Off, 1 = On |
s112 | Guitar µMod | Setup: Guitar FX Global | 0 = Off, 1 = On |
s113 | RoomSense LoCut | Setup: Guitar | 0–112 Hz |
s114 | Footswitch Mode | Setup: Controls | 0=Loop, 1=Custom |
s117 | SW-3 Btn 1 Func | Setup: Controls | 0=Loop Rec/Play, 1=Loop Stop/Erase, 2=Loop Undo, 3=Loop Start/Stop, … (30 total) |
s118 | SW-3 Btn 2 Func | Setup: Controls | 0=Loop Rec/Play, 1=Loop Stop/Erase, 2=Loop Undo, 3=Loop Start/Stop, … (30 total) |
s119 | SW-3 Btn 3 Func | Setup: Controls | 0=Loop Rec/Play, 1=Loop Stop/Erase, 2=Loop Undo, 3=Loop Start/Stop, … (30 total) |
s120 | BodyRez Editing | Setup: Guitar | 0=Basic, 1=Advanced |
s121 | Shelve Low Freq | Setup: BodyRez Custom | 0–240 Hz |
s122 | Shelve Low Gain | Setup: BodyRez Custom | -12–12 dB |
s123 | Shelve Hi Freq | Setup: BodyRez Custom | 0–240 Hz |
s124 | Shelve Hi Gain | Setup: BodyRez Custom | -12–12 dB |
s125 | Para Low Freq | Setup: BodyRez Custom | 0–240 Hz |
s126 | Para Low Width | Setup: BodyRez Custom | 0=Narrow, 1=0.11, 2=0.12, 3=0.14, … (33 total) |
s127 | Para Low Gain | Setup: BodyRez Custom | -12–12 dB |
s128 | Para Hi Freq | Setup: BodyRez Custom | 0–240 Hz |
s129 | Para Hi Width | Setup: BodyRez Custom | 0=Narrow, 1=0.11, 2=0.12, 3=0.14, … (33 total) |
s130 | Para Hi Gain | Setup: BodyRez Custom | -12–12 dB |
s131 | Comp Threshold | Setup: BodyRez Custom | -60–0 dB |
s132 | Comp Ratio | Setup: BodyRez Custom | 0–20 :1 |
s133 | Comp Makeup Gain | Setup: BodyRez Custom | 0–40 dB |
s134 | Comp Attack | Setup: BodyRez Custom | 0=0 (4.0ms), 1=1 (5.0ms), 2=2 (6.0ms), 3=3 (6.5ms), … (19 total) |
s135 | Comp Release | Setup: BodyRez Custom | 0=0 (28ms), 1=1 (28ms), 2=2 (46ms), 3=3 (65ms), … (19 total) |
s136 | Ambience Level | Setup: BodyRez Custom | -60–12 dB |
s137 | Ambience Time L | Setup: BodyRez Custom | 0–500 ms |
s138 | Ambience Time R | Setup: BodyRez Custom | 0–500 ms |
s139 | Ambience Filter | Setup: BodyRez Custom | 0=Digital, 1=Tape, 2=Analog, 3=Radio, … (13 total) |
s140 | MP-76 Control | Setup: Controls | 0=Default, 1=Custom |
s141 | MP-76 Bottom | Setup: Controls | 0=Preset Down, 1=Preset Up, 2=HIT, 3=HIT & Talk, … (18 total) |
s142 | MP-76 Left | Setup: Controls | 0=Preset Down, 1=Preset Up, 2=HIT, 3=HIT & Talk, … (18 total) |
s143 | MP-76 Top | Setup: Controls | 0=Preset Down, 1=Preset Up, 2=HIT, 3=HIT & Talk, … (18 total) |
s144 | MP-76 Right | Setup: Controls | 0=Preset Down, 1=Preset Up, 2=HIT, 3=HIT & Talk, … (18 total) |
s145 | Footswitch | Setup: Controls | 0=Switch-3, 1=Switch-6 |
s146 | SW-6 Mode | Setup: Controls | 0=Default, 1=Guitar, 2=Custom |
s147 | SW-6 Btn 1 Func | Setup: Controls | 0=Loop Rec/Play, 1=Loop Stop/Erase, 2=Loop Undo, 3=Loop Start/Stop, … (30 total) |
s148 | SW-6 Btn 2 Func | Setup: Controls | 0=Loop Rec/Play, 1=Loop Stop/Erase, 2=Loop Undo, 3=Loop Start/Stop, … (30 total) |
s149 | SW-6 Btn 3 Func | Setup: Controls | 0=Loop Rec/Play, 1=Loop Stop/Erase, 2=Loop Undo, 3=Loop Start/Stop, … (30 total) |
s150 | SW-6 Btn 4 Func | Setup: Controls | 0=Loop Rec/Play, 1=Loop Stop/Erase, 2=Loop Undo, 3=Loop Start/Stop, … (30 total) |
s151 | SW-6 Btn 5 Func | Setup: Controls | 0=Loop Rec/Play, 1=Loop Stop/Erase, 2=Loop Undo, 3=Loop Start/Stop, … (30 total) |
s152 | SW-6 Btn 6 Func | Setup: Controls | 0=Loop Rec/Play, 1=Loop Stop/Erase, 2=Loop Undo, 3=Loop Start/Stop, … (30 total) |
SysEx Commands
All messages use header: F0 00 01 38 00 70 [command] [data] F7
00 60 is the bootloader. Never send messages with this header.| Command | Direction | Args | Response | Purpose |
|---|---|---|---|---|
0x57 00 00 | Host → Device | — | — | Begin sync session |
0x57 00 01 | Host → Device | — | — | End sync session |
0x15 00 | Host → Device | — | 7× 0x13 | Request global setup |
0x45 | Host → Device | bank, preset# | 0x20 + 5× 0x21 | Request full preset |
0x46 | Host → Device | bank, preset# | 0x20 | Request preset header only |
0x47 | Host → Device | bank, preset# | 0x22 | Request preset metadata |
0x50 | Host → Device | bank, preset# | 0x34 | Delete preset slot |
0x13 | Host → Device | 104 bytes | 0x34 | Write setup packet (×7) |
0x20 | Host → Device | header data | — | Write preset header |
0x21 | Host → Device | chunk data | 0x34 | Write preset data (×5) |
0x7E | Both | varies | 0x7E | Identity / handshake |
0x34 | Device → Host | status | — | Acknowledgement |
Preset Parameter Map
Each preset consists of 5 data packets (0x21), each containing 25 parameters encoded as 4-byte 28-bit signed integers. Parameters are indexed 0–124 across the 5 packets.
Encoding: Each parameter uses 4 bytes in 7-bit MIDI format (28-bit signed). val = ((b0 & 0x7F) << 21) | ((b1 & 0x7F) << 14) | ((b2 & 0x7F) << 7) | (b3 & 0x7F). If val ≥ 0x08000000, subtract 0x10000000 for negative values.
Packet structure: F0 00 01 38 00 70 21 [chunk#] [100 bytes data] [checksum] F7 = 110 bytes total.
Packet 0 (Params 0–24)
| Index | Name | Group | Firmware ID | Range / Options | Byte Offset |
|---|---|---|---|---|---|
| 12 | Gate Threshold | Vocal FX: Transducer | EXP_TRANSDUCER_GATE_THRESHOLD | -50–0 dB | 56 |
| 13 | Style | Vocal FX: Harmony | EXP_HARMONY_STYLE | 0=High, 1=Higher, 2=Low, 3=Lower, … (28 total) | 60 |
| 14 | Humanize | Vocal FX: Harmony | EXP_HARMONY_HUMANIZE | 0–100 | 64 |
| 15 | Key | Vocal FX: Harmony | EXP_HARMONY_KEY | 0=Auto, 1=C, 2=C#/Db, 3=D, … (13 total) | 68 |
| 16 | Scale | Vocal FX: Harmony | EXP_HARMONY_SCALE | 0=Major 1, 1=Major 2, 2=Major 3, 3=Minor 1, 4=Minor 2, 5=Minor 3 | 72 |
| 17 | Portamento | Vocal FX: Harmony | EXP_HARMONY_PORTAMENTO | 0–200 | 76 |
| 19 | Style | Vocal FX: Double | EXP_DOUBLE_STYLE | 0=1 Voice Tight, 1=1 Voice Loose, 2=2 Voices Tight, 3=2 Voices Loose, … (10 total) | 84 |
| 20 | Level | Vocal FX: Harmony | EXP_HARMONY_LEVEL | -36–0 dB (-36=Off) | 88 |
| 21 | Level | Vocal FX: Double | EXP_DOUBLE_LEVEL | -36–0 dB (-36=Off) | 92 |
| 22 | Level | Vocal FX: µMod | EXP_MICROMOD_LEVEL | -51–0 dB (-51=Off) | 96 |
| 23 | Level | Vocal FX: Delay | EXP_DELAY_LEVEL | -51–0 dB (-51=Off) | 100 |
| 24 | Level | Vocal FX: Reverb | EXP_REVERB_LEVEL | -51–0 dB (-51=Off) | 104 |
Packet 1 (Params 25–49)
| Index | Name | Group | Firmware ID | Range / Options | Byte Offset |
|---|---|---|---|---|---|
| 25 | Level | Guitar FX: µMod | EXP_MIXER_LW_LEVEL_GTR_UMOD | -51–0 dB (-51=Off) | 8 |
| 25 | Guitar µMod Level | Mix | EXP_MIXER_LW_LEVEL_GTR_UMOD | -60–12 dB | 8 |
| 26 | Level | Guitar FX: Delay | EXP_MIXER_LW_LEVEL_GTR_DELAY | -51–0 dB (-51=Off) | 12 |
| 26 | Guitar Delay Level | Mix | EXP_MIXER_LW_LEVEL_GTR_DELAY | -60–12 dB | 12 |
| 27 | Level | Guitar FX: Reverb | EXP_MIXER_LW_LEVEL_GTR_REVERB | -51–0 dB (-51=Off) | 16 |
| 27 | Guitar Reverb Level | Mix | EXP_MIXER_LW_LEVEL_GTR_REVERB | -60–12 dB | 16 |
| 28 | Guitar BodyRez Level | Mix | EXP_MIXER_LW_LEVEL_GTR_DELAY_BODYREZ | -60–12 dB | 20 |
| 29 | Voice Level 2 | Mix | EXP_VOICE_LEVEL_2 | 0–100 | 24 |
| 30 | Voice Level 3 | Mix | EXP_VOICE_LEVEL_3 | 0–100 | 28 |
| 31 | Voice Unmod Level | Mix | EXP_VOICE_UNMOD_LEVEL | 0–100 | 32 |
| 32 | Guitar µMod Width | Mix | EXP_MIXER_LW_WIDTH_GTR_UMOD | 0–200 | 36 |
| 33 | Guitar Delay Width | Mix | EXP_MIXER_LW_WIDTH_GTR_DELAY | 0–200 | 40 |
| 34 | Guitar Reverb Width | Mix | EXP_MIXER_LW_WIDTH_GTR_REVERB | 0–200 | 44 |
| 35 | Guitar BodyRez Width | Mix | EXP_MIXER_LW_WIDTH_GTR_DELAY_BODYREZ | 0–200 | 48 |
| 36 | Style | Vocal FX: µMod | EXP_MICROMOD_STYLE | 0=Micromod Clone, 1=Micromod Wider, 2=Thicken, 3=Light Chorus, … (24 total) | 52 |
| 37 | Style | Guitar FX: µMod | EXP_MICROMOD_STYLE_GUITAR_PRESET | 0=Corona Chorus 12:00, 1=Corona Chorus - Fast, 2=Corona Chorus - Slow, 3=Silky Detune, 4=Medium Detune, 5=Mono Chorus | 56 |
| 38 | Mod Depth | Guitar FX: µMod | EXP_MICROMOD_MOD_DEPTH_L_GUITAR | 0–200 | 60 |
| 39 | Mod Speed | Guitar FX: µMod | EXP_MICROMOD_MOD_SPEED_GUITAR | 0–1000 Hz | 64 |
| 40 | Style | Vocal FX: Delay | EXP_DELAY_STYLE | 0=Quarter, 1=Eighth, 2=Triplet, 3=Dotted 1/8th, … (18 total) | 68 |
| 41 | Style | Guitar FX: Delay | EXP_DELAY_STYLE_GUITAR_PRESET | 0=Flashback 2290, 1=Flashback Analog, 2=Flashback Tape, 3=Flashback Lofi, … (16 total) | 72 |
| 42 | BodyRez Delay Style | Guitar FX: Delay | EXP_DELAY_STYLE_BODYREZ_PRESET | 0=Flashback 2290, 1=Flashback Analog, 2=Flashback Tape, 3=Flashback Lofi, … (16 total) | 76 |
| 43 | Tempo | Vocal FX: Delay | EXP_DELAY_TEMPO | 40–300 BPM | 80 |
| 44 | Time L | Vocal FX: Delay | EXP_DELAY_DELAYTIME_L | 1–1500 ms | 84 |
| 45 | Time L | Guitar FX: Delay | EXP_DELAY_DELAYTIME_L_GUITAR | 0–1500 ms | 88 |
| 46 | Time R | Vocal FX: Delay | EXP_DELAY_DELAYTIME_R | 1–1500 ms | 92 |
| 47 | Time R | Guitar FX: Delay | EXP_DELAY_DELAYTIME_R_GUITAR | 0–1500 ms | 96 |
| 48 | Feedback | Vocal FX: Delay | EXP_DELAY_FEEDBACK | 0–100 % | 100 |
| 49 | Feedback | Guitar FX: Delay | EXP_DELAY_FEEDBACKCONTROL_GUITAR | 0–100 % | 104 |
Packet 2 (Params 50–74)
| Index | Name | Group | Firmware ID | Range / Options | Byte Offset |
|---|---|---|---|---|---|
| 50 | Filter Style | Vocal FX: Delay | EXP_DELAY_FILTER_STYLE | 0=Digital, 1=Tape, 2=Analog, 3=Radio, … (13 total) | 8 |
| 51 | Filter Style | Guitar FX: Delay | EXP_DELAY_FILTER_STYLE_GUITAR | 0=Digital, 1=Tape, 2=Analog, 3=Radio, … (13 total) | 12 |
| 56 | Style | Vocal FX: Reverb | EXP_REVERB_STYLE | 0=Smooth Plate, 1=Reflection Plate, 2=Thin Plate, 3=Bright Plate, … (28 total) | 32 |
| 57 | Style | Guitar FX: Reverb | EXP_REVERB_STYLE_GUITAR_PRESET | 0=HoF - Hall, 1=HoF - Plate, 2=HoF - Room, 3=HoF - Church, … (36 total) | 36 |
| 58 | Decay | Vocal FX: Reverb | EXP_REVERB_DECAY | 91–290 s | 40 |
| 59 | Decay | Guitar FX: Reverb | EXP_REVERB_DECAY_GUITAR | 0–290 s | 44 |
| 60 | Pre-delay | Guitar FX: Reverb | EXP_REVERB_PREDELAY_GUITAR | 0–100 ms | 48 |
| 61 | Style | Vocal FX: Transducer | EXP_TRANSDUCER_STYLE | 0=Megaphone, 1=Radio, 2=On The Phone, 3=Overdrive, … (8 total) | 52 |
| 62 | Routing | Vocal FX: Transducer | EXP_TRANSDUCER_ROUTING | 0=Output, 1=FX | 56 |
| 63 | Drive | Vocal FX: Transducer | EXP_TRANSDUCER_DRIVE | 0–100 % | 60 |
| 64 | Gain | Vocal FX: Transducer | EXP_TRANSDUCER_GAIN | -20–10 dB | 64 |
| 65 | Filter | Vocal FX: Transducer | EXP_TRANSDUCER_FILTER | 0–100 | 68 |
| 66 | Style | Vocal FX: HardTune | EXP_HARDTUNE_STYLE | 0=Pop, 1=Country Gliss, 2=Robot, 3=Correct Natural, … (7 total) | 72 |
| 67 | Shift | Vocal FX: HardTune | EXP_HARDTUNE_SHIFT | -36–36 semi | 76 |
| 68 | Gender | Vocal FX: HardTune | EXP_HARDTUNE_GENDER | -50–50 | 80 |
| 69 | Style | Guitar FX: BodyRez | EXP_BODYREZ_STYLE_PRESET | 0=Custom, 1=Flat, 2=Just Comp, 3=Bodyrez 1, … (14 total) | 84 |
| 70 | Amount | Guitar FX: BodyRez | EXP_BODYREZ_AMOUNT_PRESET | -1–10 (-1=Off) | 88 |
Packet 3 (Params 75–99)
| Index | Name | Group | Firmware ID | Range / Options | Byte Offset |
|---|---|---|---|---|---|
| 75 | Ambience Level | Guitar FX: BodyRez | EXP_BODYREZ_DELAY_LEVEL_PRESET | -21–0 dB (-21=Off) | 8 |
| 76 | Threshold | Guitar FX: BodyRez | EXP_BODYREZ_COMP_THRESHOLD_PRESET | -60–0 dB | 12 |
| 77 | Makeup Gain | Guitar FX: BodyRez | EXP_BODYREZ_COMP_MAKEUPGAIN_PRESET | 0–40 dB | 16 |
| 78 | Control | Vocal FX: µMod | EXP_BLOCK_MICROMOD | 0=Off, 1=On, 2=HIT | 20 |
| 79 | Control | Vocal FX: Delay | EXP_BLOCK_DELAY | 0=Off, 1=On, 2=HIT | 24 |
| 80 | Control | Vocal FX: Reverb | EXP_BLOCK_REVERB | 0=Off, 1=On, 2=HIT | 28 |
| 81 | Control | Vocal FX: Harmony | EXP_BLOCK_HARMONY | 0=Off, 1=On, 2=HIT | 32 |
| 82 | Control | Vocal FX: Double | EXP_BLOCK_DOUBLE | 0=Off, 1=On, 2=HIT | 36 |
| 83 | Control | Vocal FX: Transducer | EXP_BLOCK_TRANSDUCER | 0=Off, 1=On, 2=HIT | 40 |
| 84 | Control | Vocal FX: HardTune | EXP_BLOCK_HARDTUNE | 0=Off, 1=On, 2=HIT | 44 |
| 85 | Control | Guitar FX: Delay | EXP_BLOCK_GUITAR_DELAY_PRESET | 0=Off, 1=On, 2=HIT | 48 |
| 86 | Control | Guitar FX: Reverb | EXP_BLOCK_GUITAR_REVERB_PRESET | 0=Off, 1=On, 2=HIT | 52 |
| 87 | Control | Guitar FX: µMod | EXP_BLOCK_GUITAR_MICROMOD_PRESET | 0=Off, 1=On, 2=HIT | 56 |
| 88 | Speed | Vocal FX: µMod | EXP_MICROMOD_SPEED | 0–1000 Hz | 60 |
| 98 | Shelve Low Freq | Guitar FX: BodyRez | EXP_BREZCUSTOM_SHELVE_LOW_FREQ_PRESET | 0–240 Hz | 100 |
| 99 | Shelve Low Gain | Guitar FX: BodyRez | EXP_BREZCUSTOM_SHELVE_LOW_GAIN_PRESET | -12–12 dB | 104 |
Packet 4 (Params 100–124)
| Index | Name | Group | Firmware ID | Range / Options | Byte Offset |
|---|---|---|---|---|---|
| 100 | Shelve Hi Freq | Guitar FX: BodyRez | EXP_BREZCUSTOM_SHELVE_HI_FREQ_PRESET | 0–240 Hz | 8 |
| 101 | Shelve Hi Gain | Guitar FX: BodyRez | EXP_BREZCUSTOM_SHELVE_HI_GAIN_PRESET | -12–12 dB | 12 |
| 102 | Para Low Freq | Guitar FX: BodyRez | EXP_BREZCUSTOM_PAR_LOW_FREQ_PRESET | 0–240 Hz | 16 |
| 103 | Para Low Width | Guitar FX: BodyRez | EXP_BREZCUSTOM_PAR_LOW_BW_PRESET | 0=Narrow, 1=0.11, 2=0.12, 3=0.14, … (33 total) | 20 |
| 104 | Para Low Gain | Guitar FX: BodyRez | EXP_BREZCUSTOM_PAR_LOW_GAIN_PRESET | -12–12 dB | 24 |
| 105 | Para Hi Freq | Guitar FX: BodyRez | EXP_BREZCUSTOM_PAR_HI_FREQ_PRESET | 0–240 Hz | 28 |
| 106 | Para Hi Width | Guitar FX: BodyRez | EXP_BREZCUSTOM_PAR_HI_BW_PRESET | 0=Narrow, 1=0.11, 2=0.12, 3=0.14, … (33 total) | 32 |
| 107 | Para Hi Gain | Guitar FX: BodyRez | EXP_BREZCUSTOM_PAR_HI_GAIN_PRESET | -12–12 dB | 36 |
| 109 | Ratio | Guitar FX: BodyRez | EXP_BREZCUSTOM_COMP_RATIO_PRESET | 0=1.0, 1=1.1, 2=1.2, 3=1.4, … (15 total) | 44 |
| 111 | Attack | Guitar FX: BodyRez | EXP_BREZCUSTOM_COMP_ATTACK_PRESET | 0=0 (4.0ms), 1=1 (5.0ms), 2=2 (6.0ms), 3=3 (6.5ms), … (19 total) | 52 |
| 112 | Release | Guitar FX: BodyRez | EXP_BREZCUSTOM_COMP_RELEASE_PRESET | 0=0 (28ms), 1=1 (28ms), 2=2 (46ms), 3=3 (65ms), … (19 total) | 56 |
Important Notes
- No MIDI CC input — the device only sends MIDI, never receives it.
- No preset switch command — full preset data must be sent each time.
- Guitar Boost on/off — the toggle is volatile (runtime only), not accessible via SysEx. Only the boost level (0–9 dB) can be read and written.
- Effect state on preset load — when a preset loads, it sets the guitar effect block enables in the global setup. These can be overridden by writing to the setup after the preset loads.
- Global Guitar FX — when enabled on the device, guitar effect states persist across preset changes. When disabled, each preset resets them.
- Global Guitar FX = Off gates the setup-side guitar FX bytes — they become read-only and writes are silently dropped. Toggling On→Off resets the BodyRez Custom values to factory defaults.
- Preset addressing — Bank 0: presets 1–127 (slots 1–127). Bank 1: presets 0–127 (slots 128–255). Full preset = bank × 128 + in-bank number.
- Verified mappings only — this page only lists parameters where the byte-to-meaning mapping has been verified on the device. Unmapped or speculative bytes (still tracked internally for round-trip integrity) are intentionally omitted.