.senselmap file format

Because placing tens of buttons by hand using the overlay designer can be a bit too tedious, I had a quick look into the .senselmap file format to see if I could create overlays with a script. The file format is quite easy to decode, though if you can provide a description of it that would be really helpful.

This is what I found till now:

16    // version?
48    // number of buttons
7     // number of columns in next section
Columns (2x48 lines): 
button type, subtype,
Depending on these the other 5 columns have different meanings:
0,0 Keyboard:
  ,keycode,fn-keycode,modifier bits,0,0
1,3 MIDI Slider:
1,5 and 1,19 MIDI Note:
1,14 MMC:
1,7-18 Morph MIDI Modifier:

3,0 MPE:

5,0 Setting

Innovator's  // overlay name

48    // number of buttons
3     // number of columns in next section
Columns (2x48 lines):
led number,led style?,threshold(0-250)
48    // number of buttons
4     // number of columns in next section
Columns (2x48 lines):
48    // number of buttons
5     // number of columns in next section
Columns (48 lines):

 Parameter values

Keyboard Modifier bits
  1: Ctrl
  2: Shift
  4: Alt
  8: Win

  CC (1-127) or pitchbend (128), poly aftertouch(129) or channel aftertouch(130)

LED style
  0: off
  1: flash?
  2: flash
  24: flash all 24 LEDs

  0: rectangle
  1: oval
  2: hex

Hey, thanks for contacting us. We plan to release a script and file format in the future once the format has stabilized (likely in the next few firmware releases). I would recommend not spending too much time decoding this version as it may change in the next few versions as we add more features. It could cause your Morph to enter a unrecoverable state if you flash the wrong information (hence why we are not releasing it until every variable can be tested). We definitely understand placing lots of buttons can be tedious and will look to make the process easier for coders and non-coders going forward.

1 Like

Using a format like JSON or XML would make it more robust and easier to add things in the future. …Tim…

See other forum messages about sending OSC. If you document and use an extensible format, I would be able to change my MorphOsc utility to read it and send OSC messages for the different areas. This (sending OSC) is something that the Morph can’t do on its own, since it doesn’t have IP and can’t send UDP packets.

Documenting and using an extensible format will be an important enabler, I hope you add this feature soon.


When you start adding this feature, I would love to provide input and beta-test it before you finalize the design.


As mentioned in the OSC thread, we agree and will keep you updated. Thanks!

so… it’s a bad idea to edit the .senselmap files? the manual method is super slow… copy/paste of areas would help

It’s about 10 months ago that the latest software was released, so it would be about time for a new release! I’m very much looking forward to a stable file format! (optimally json based)

1 Like