Kawai K1: MIDI CC, NRPN and OSC map¶
The Kawai K1 as named OSC addresses — 101 SysEx commands — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.
| Device | Kawai K1 |
|---|---|
| Vendor | Kawai |
| OSC prefix | /k1 |
| Source | 🎛️ Derived from an Electra One community preset |
| Revision | per Electra preset |
| Upstream | electra-preset |
| Driver file | devices/kawai/k1.json |
Not tested on the device yet
This driver comes from documentation or community data and has not been checked on real hardware. If you own one, a quick test and a pull request promoting it helps everyone — see CONTRIBUTING.
How do you control it?¶
Find the MIDI ports, then start the bridge with this driver:
osc-bridge detect # prints the ready-to-run line for what is plugged in
osc-bridge run --device devices/kawai/k1.json --out-port <N> --in-port <M>
Then send OSC to 127.0.0.1:7777, for example:
From Claude or any MCP client, the osc-bridge mcp server exposes this driver as k1: ask “what can the Kawai K1 do?” and it reads this map with list_routes. See the MCP guide.
SysEx commands (101)¶
| OSC address | Arguments |
|---|---|
/k1/level_s1 |
val: u7 |
/k1/level_s2 |
val: u7 |
/k1/level_s3 |
val: u7 |
/k1/level_s4 |
val: u7 |
/k1/mode |
val: u7 |
/k1/sources |
val: u7 |
/k1/wave_s1 |
val: u7 |
/k1/wave_s2 |
val: u7 |
/k1/wave_s3 |
val: u7 |
/k1/wave_s4 |
val: u7 |
/k1/am_12 |
val: u7 |
/k1/am_34 |
val: u7 |
/k1/fine_s1 |
val: u7 |
/k1/fine_s2 |
val: u7 |
/k1/fine_s3 |
val: u7 |
/k1/fine_s4 |
val: u7 |
/k1/mute_s1 |
val: u7 |
/k1/mute_s2 |
val: u7 |
/k1/coarse_s1 |
val: u7 |
/k1/coarse_s2 |
val: u7 |
/k1/coarse_s3 |
val: u7 |
/k1/coarse_s4 |
val: u7 |
/k1/mute_s3 |
val: u7 |
/k1/mute_s4 |
val: u7 |
/k1/key_track_s1 |
val: u7 |
/k1/key_track_s2 |
val: u7 |
/k1/key_track_s3 |
val: u7 |
/k1/key_track_s4 |
val: u7 |
/k1/fix_s1 |
val: u7 |
/k1/fix_s2 |
val: u7 |
/k1/fix_s3 |
val: u7 |
/k1/fix_s4 |
val: u7 |
/k1/program_change |
val: u7 |
/k1/get_patch |
val: u7 |
/k1/delay_s1 |
val: u7 |
/k1/delay_s2 |
val: u7 |
/k1/delay_s3 |
val: u7 |
/k1/delay_s4 |
val: u7 |
/k1/volume |
val: u7 |
/k1/envelope_s1 |
val: u7 |
/k1/envelope_s2 |
val: u7 |
/k1/envelope_s3 |
val: u7 |
/k1/envelope_s4 |
val: u7 |
/k1/p_b_range |
val: u7 |
/k1/vel_curve_s1 |
val: u7 |
/k1/vel_curve_s2 |
val: u7 |
/k1/vel_curve_s3 |
val: u7 |
/k1/vel_curve_s4 |
val: u7 |
/k1/level_mod_s1 |
val: u7 |
/k1/level_mod_s2 |
val: u7 |
/k1/level_mod_s3 |
val: u7 |
/k1/level_mod_s4 |
val: u7 |
/k1/time_mod_s1 |
val: u7 |
/k1/time_mod_s2 |
val: u7 |
/k1/time_mod_s3 |
val: u7 |
/k1/time_mod_s4 |
val: u7 |
/k1/prs_level_s1 |
val: u7 |
/k1/prs_level_s2 |
val: u7 |
/k1/prs_level_s3 |
val: u7 |
/k1/prs_level_s4 |
val: u7 |
/k1/ks_level_s1 |
val: u7 |
/k1/ks_level_s2 |
val: u7 |
/k1/ks_level_s3 |
val: u7 |
/k1/ks_level_s4 |
val: u7 |
/k1/ks_curve |
val: u7 |
/k1/at_pitch_depth |
val: u7 |
/k1/ks_time_s1 |
val: u7 |
/k1/ks_time_s2 |
val: u7 |
/k1/ks_time_s3 |
val: u7 |
/k1/ks_time_s4 |
val: u7 |
/k1/at_pitch_s1 |
val: u7 |
/k1/at_pitch_s2 |
val: u7 |
/k1/ks_pitch_s1 |
val: u7 |
/k1/ks_pitch_s2 |
val: u7 |
/k1/ks_pitch_s3 |
val: u7 |
/k1/ks_pitch_s4 |
val: u7 |
/k1/at_pitch_s3 |
val: u7 |
/k1/at_pitch_s4 |
val: u7 |
/k1/lfo_shape |
val: u7 |
/k1/lfo_speed |
val: u7 |
/k1/lfo_depth |
val: u7 |
/k1/time_lfo_delay |
val: u7 |
/k1/pressure_depth |
val: u7 |
/k1/mod_wheel |
val: u7 |
/k1/depth |
val: u7 |
/k1/ks_time |
val: u7 |
/k1/velocity_depth |
val: u7 |
/k1/vib_abend_s1 |
val: u7 |
/k1/vib_abend_s2 |
val: u7 |
/k1/vib_abend_s3 |
val: u7 |
/k1/vib_abend_s4 |
val: u7 |
/k1/char1 |
val: u7 |
/k1/char2 |
val: u7 |
/k1/char3 |
val: u7 |
/k1/char4 |
val: u7 |
/k1/char5 |
val: u7 |
/k1/char6 |
val: u7 |
/k1/char7 |
val: u7 |
/k1/char8 |
val: u7 |
/k1/char9 |
val: u7 |
/k1/char10 |
val: u7 |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /k1/note/on <note> <velocity>, /k1/cc/<number> <value>, /k1/pitchbend <0-16383>, /k1/program_change <n>.
Limitations¶
Imported from an Electra One community preset. The mapping reflects the preset author's editorial choices: parameter naming, ranges, and which params are exposed. Untested on hardware in this repo.