Skip to content

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:

osc-bridge osc-send /k1/level_s1

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.