Kawai XD-5

Hello there,

I’m working on a preset for the Kawai XD-5 and have hit a wall trying to implement full waveform selection for the S2, S3, and S4 tone sources. Kawai appears to use a pair of SysEx bytes to set a waveform index from 0–255, a way of working with certain parameters that appears to be shared across several synths in their range.

Electra One App can you see this or should i make it public?

What is working :

I have a fully working control for S1 waveform selection (on page 2), which sends :

F0 40 09 10 00 06 15 [MSB] [LSB] F7

Where :

  • [MSB] is the most significant 7 bits (bit 7 of the value),
  • [LSB] is the least significant 7 bits (bits 0–6).

Here’s the Sysex block for S1 that works :

[

“F0”,

“40”,

“9”,

“10”,

“00”,

“06”,

“15”,

{

“type”: “value”,

“rules”: [

{

“type”: “sysex”,

“parameterNumber”: 211,

“parameterBitPosition”: 7,

“byteBitPosition”: 0,

“bitWidth”: 7

}

]

},

{

“type”: “value”,

“rules”: [

{

“type”: “sysex”,

“parameterNumber”: 211,

“parameterBitPosition”: 0,

“byteBitPosition”: 0,

“bitWidth”: 7

}

]

},

“F7”

]

This maps the 0–255 range cleanly into two 7-bit MIDI bytes and works reliably for S1.

What’s not working: S2, S3, S4

When duplicating this structure for S2/S3/S4 waveform selection, adjusting the address byte (15) accordingly, things start to break :

  • SysEx messages either get stuck, loop, or only range from 00–7F.
  • In some attempts, MSB never increments.
  • Other times, the parameter outputs a static value like 19 19 19 19.
  • Using parameterNumber = 212, 213, 214, etc., and combinations of value and expression-based rules — no luck.

Stuff I’ve Tried :

  • Rewriting with expression rules (e.g., (value >> 7) and value & 127)
  • Testing both List controls and Value controls (0–255)
  • Reviewing working community presets (e.g., K1/K4 below) but their complexity is a beyond me atm.
  • Swapping byte order and offsets

References :

My Questions :

  1. Does anyone know the correct parameter mapping approach for the S2–S4 waveform selection?
  2. Is there a rule or limitation around parameterNumber reuse?
  3. How do others manage composed values when the same format is repeated across multiple SysEx address offsets?

If you’ve implemented this kind of dual-byte parameter on a Kawai (or similar) synth with sysex, I’d love to hear your approach.

Bests

Hi I downloaded your preset but I do not find the controls in it for wave form selection S2, S3 and S4. Only on S1.
Without those controls it’s logic it cannot work :slight_smile:

Provide the preset please that has those controls

Thanks heaps for getting back to me @NewIgnis

Here’s a version of the preset with an unsuccessful attempt S2, S3 & S4

https://app.electra.one/preset/8zBmBzU9MBwxE512VrDr/edit