{
 "_sources": [
  {
   "type": "vendor-doc",
   "name": "norns script mouse",
   "url": "https://github.com/cfdrake/mouse/tree/581d575dcfb23293e7e4044b2be31d08b2e23e9e",
   "notes": "norns script mouse: mouse.lua, lib/mouse_halfsecond.lua, lib/mouse_hnds.lua @ 581d575. No licence declared. Listed in norns.community (monome/norns-community community.json @ 41d05e7).",
   "firmware": "mouse-581d575",
   "imported_at": "2026-10-26"
  }
 ],
 "_limitations": "Source: the Lua source of the norns script mouse by cfd90 (cfdrake/mouse at 581d575), listed in norns.community. Shares the norns system OSC of monome/norns.vendor.fw-2.9.4 (port 10111, /param, /remote): give the norns' IP address as host override. Its own routes are the 32 parameter(s) whose id is written out in its source, read without running it, with range, options and default when written out too; set them while the script runs on the norns. 6 parameter call(s) could not be read without running the script (ids built at run time, values from variables) and are not mapped: reach them with the base driver's /param/{id}. Parameters added by libraries or engines outside the repository are not mapped either. A value goes in the parameter's units (an option's index from 1). MIDI is not mapped: the script's MIDI handling is its own and parameter MIDI mappings are learned by each user (PMAP). Untested on hardware.",
 "_coverage": {
  "host_software": "norns script mouse",
  "commands": 32,
  "subscriptions": 0,
  "replies": 0
 },
 "midi_of": "monome/norns.vendor.fw-2.9.4",
 "device": {
  "name": "norns",
  "vendor": "Monome",
  "revision": "script mouse (cfdrake/mouse @ 581d575)",
  "osc_prefix": "/norns_mouse"
 },
 "commands": [
  {
   "osc": "/param/scale_mode",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "default": 11
    }
   ],
   "forward": {
    "path": "/param/scale_mode",
    "args": [
     "{value}"
    ]
   },
   "_notes": "scale mode: option index, from 1."
  },
  {
   "osc": "/param/root_note",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      12
     ],
     "values": {
      "c": 1,
      "c#": 2,
      "d": 3,
      "d#": 4,
      "e": 5,
      "f": 6,
      "f#": 7,
      "g": 8,
      "g#": 9,
      "a": 10,
      "a#": 11,
      "b": 12
     },
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/root_note",
    "args": [
     "{value}"
    ]
   },
   "_notes": "root note: option index, from 1."
  },
  {
   "osc": "/param/transpose_interval",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      12
     ],
     "default": 3
    }
   ],
   "forward": {
    "path": "/param/transpose_interval",
    "args": [
     "{value}"
    ]
   },
   "_notes": "transposition interval."
  },
  {
   "osc": "/param/speed",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      4
     ],
     "values": {
      "1": 1,
      "2": 2,
      "4": 3,
      "8": 4
     },
     "default": 3
    }
   ],
   "forward": {
    "path": "/param/speed",
    "args": [
     "{value}"
    ]
   },
   "_notes": "clock division: option index, from 1."
  },
  {
   "osc": "/param/speed_mod",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      2
     ],
     "values": {
      "yes": 1,
      "no": 2
     },
     "default": 2
    }
   ],
   "forward": {
    "path": "/param/speed_mod",
    "args": [
     "{value}"
    ]
   },
   "_notes": "modulate clock division: option index, from 1."
  },
  {
   "osc": "/param/voice_mode",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      2
     ],
     "values": {
      "melody": 1,
      "pairs": 2
     },
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/voice_mode",
    "args": [
     "{value}"
    ]
   },
   "_notes": "voice mode: option index, from 1."
  },
  {
   "osc": "/param/enables_1",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      2
     ],
     "values": {
      "yes": 1,
      "no": 2
     },
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/enables_1",
    "args": [
     "{value}"
    ]
   },
   "_notes": "voice 1 enabled: option index, from 1."
  },
  {
   "osc": "/param/enables_2",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      2
     ],
     "values": {
      "yes": 1,
      "no": 2
     },
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/enables_2",
    "args": [
     "{value}"
    ]
   },
   "_notes": "voice 2 enabled: option index, from 1."
  },
  {
   "osc": "/param/enables_3",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      2
     ],
     "values": {
      "yes": 1,
      "no": 2
     },
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/enables_3",
    "args": [
     "{value}"
    ]
   },
   "_notes": "voice 3 enabled: option index, from 1."
  },
  {
   "osc": "/param/enables_4",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      2
     ],
     "values": {
      "yes": 1,
      "no": 2
     },
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/enables_4",
    "args": [
     "{value}"
    ]
   },
   "_notes": "voice 4 enabled: option index, from 1."
  },
  {
   "osc": "/param/running_pattern",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      2
     ],
     "values": {
      "yes": 1,
      "no": 2
     },
     "default": 2
    }
   ],
   "forward": {
    "path": "/param/running_pattern",
    "args": [
     "{value}"
    ]
   },
   "_notes": "pattern enabled: option index, from 1."
  },
  {
   "osc": "/param/pattern_index",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/pattern_index",
    "args": [
     "{value}"
    ]
   },
   "_notes": "selected pattern."
  },
  {
   "osc": "/param/output_mode",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      3
     ],
     "values": {
      "thebangs": 1,
      "midi": 2,
      "thebangs + midi": 3
     },
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/output_mode",
    "args": [
     "{value}"
    ]
   },
   "_notes": "output mode: option index, from 1."
  },
  {
   "osc": "/param/midi_port_x",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      16
     ],
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/midi_port_x",
    "args": [
     "{value}"
    ]
   },
   "_notes": "midi port (x)."
  },
  {
   "osc": "/param/midi_channel_x",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      16
     ],
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/midi_channel_x",
    "args": [
     "{value}"
    ]
   },
   "_notes": "midi channel (x)."
  },
  {
   "osc": "/param/midi_note_length_x",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      1000
     ],
     "default": 100
    }
   ],
   "forward": {
    "path": "/param/midi_note_length_x",
    "args": [
     "{value}"
    ]
   },
   "_notes": "midi note length (x)."
  },
  {
   "osc": "/param/midi_note_probability_x",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      100
     ],
     "default": 100
    }
   ],
   "forward": {
    "path": "/param/midi_note_probability_x",
    "args": [
     "{value}"
    ]
   },
   "_notes": "midi note probability (x)."
  },
  {
   "osc": "/param/midi_port_y",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      16
     ],
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/midi_port_y",
    "args": [
     "{value}"
    ]
   },
   "_notes": "midi port (y)."
  },
  {
   "osc": "/param/midi_channel_y",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      16
     ],
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/midi_channel_y",
    "args": [
     "{value}"
    ]
   },
   "_notes": "midi channel (y)."
  },
  {
   "osc": "/param/midi_note_length_y",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      1000
     ],
     "default": 100
    }
   ],
   "forward": {
    "path": "/param/midi_note_length_y",
    "args": [
     "{value}"
    ]
   },
   "_notes": "midi note length (y)."
  },
  {
   "osc": "/param/midi_note_probability_y",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      100
     ],
     "default": 100
    }
   ],
   "forward": {
    "path": "/param/midi_note_probability_y",
    "args": [
     "{value}"
    ]
   },
   "_notes": "midi note probability (y)."
  },
  {
   "osc": "/param/encoder_layout",
   "section": "MOUSE",
   "args": [
    {
     "name": "value",
     "type": "int",
     "range": [
      1,
      2
     ],
     "values": {
      "default": 1,
      "shield": 2
     },
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/encoder_layout",
    "args": [
     "{value}"
    ]
   },
   "_notes": "encoder layout: option index, from 1."
  },
  {
   "osc": "/param/amp",
   "section": "SYNTH",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 0.5
    }
   ],
   "forward": {
    "path": "/param/amp",
    "args": [
     "{value}"
    ]
   },
   "_notes": "amp: 0 to 1."
  },
  {
   "osc": "/param/pw",
   "section": "SYNTH",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 50
    }
   ],
   "forward": {
    "path": "/param/pw",
    "args": [
     "{value}"
    ]
   },
   "_notes": "pw: 0 to 100 %."
  },
  {
   "osc": "/param/release",
   "section": "SYNTH",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 1.2
    }
   ],
   "forward": {
    "path": "/param/release",
    "args": [
     "{value}"
    ]
   },
   "_notes": "release: 0.1 to 3.2 s."
  },
  {
   "osc": "/param/cutoff",
   "section": "SYNTH",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 12000
    }
   ],
   "forward": {
    "path": "/param/cutoff",
    "args": [
     "{value}"
    ]
   },
   "_notes": "cutoff: 50 to 12000 hz."
  },
  {
   "osc": "/param/gain",
   "section": "SYNTH",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/gain",
    "args": [
     "{value}"
    ]
   },
   "_notes": "gain: 0 to 4."
  },
  {
   "osc": "/param/pan",
   "section": "SYNTH",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 0
    }
   ],
   "forward": {
    "path": "/param/pan",
    "args": [
     "{value}"
    ]
   },
   "_notes": "pan: -1 to 1."
  },
  {
   "osc": "/param/delay",
   "section": "Parameters",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 0.0
    }
   ],
   "forward": {
    "path": "/param/delay",
    "args": [
     "{value}"
    ]
   },
   "_notes": "delay: 0 to 1."
  },
  {
   "osc": "/param/delay_rate",
   "section": "Parameters",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 1
    }
   ],
   "forward": {
    "path": "/param/delay_rate",
    "args": [
     "{value}"
    ]
   },
   "_notes": "delay rate: 0.5 to 2."
  },
  {
   "osc": "/param/delay_feedback",
   "section": "Parameters",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 0.75
    }
   ],
   "forward": {
    "path": "/param/delay_feedback",
    "args": [
     "{value}"
    ]
   },
   "_notes": "delay feedback: 0 to 1."
  },
  {
   "osc": "/param/delay_pan",
   "section": "Parameters",
   "args": [
    {
     "name": "value",
     "type": "float",
     "default": 0
    }
   ],
   "forward": {
    "path": "/param/delay_pan",
    "args": [
     "{value}"
    ]
   },
   "_notes": "delay pan: -1 to 1."
  }
 ]
}
