devices/monome/norns.vendor.fw-seeker-ii-1ba7ae7.jsonEdit on GitHubJSONMonome norns (script seeker_ii): OSC control from Claude, scripts and controllers
89 named commands to drive Monome norns over OSC — from Claude (MCP), live-coding environments or a MIDI controller.
- sourcemaker's documentation
- firmwareseeker-ii-1ba7ae7
- real unitnot yet checked
Not checked on a real Monome norns yet. Own one? Load a sound or send a control, and tell us whether it worked.
- Maker
- Monome
- Version
- script seeker_ii (brokyo/seeker_ii @ 1ba7ae7)
- Source
- maker's documentation
- OSC prefix
/norns_seeker_ii
From the README of brokyo/seeker_ii at 1ba7ae7.
Seeker II
Seeker II is an interface for writing and procedurally manipulating music and visuals. I originally wrote it on New Year’s Day 2025 to make Discreet Music-style phasing simple on a Norns. I’ve since spent the past year using it almost daily, slowly adding features whenever I found gaps between what I wanted to do and what Seeker could do.
Today it includes software instruments, a full sample chopping engine, an algorithmic chord progression builder, a sequenceable motif transformation engine, extensive Eurorack control via I2C, a W/Tape Frippertronics effect, and TouchDesigner communication — all in cross-communication on a shared clock.
Seeker begins with eight musical lanes that run in parallel, each performing its own motif recorded on Grid. Those motifs can be procedurally transformed as the program loops, creating evolving music while maintaining structure and intentionality.
It continues with Grid/Arc UIs connected to modulation sources covering every way of moving through voltage I could think of: strums, bursts, LFOs, knob recording, random walks, non-linear distributions. If it’s a way of moving through numbers, it’s probably in there.
Seeker is intended to travel with you and scale to whatever you have on hand. It works as well in a studio with towers of modules as it does on a train with a Grid and a field recorder. I’ve been relentless about user experience, and I hope that despite its complexity, it’s easy to pick up and make something that helps you expresses how you’re feeling at that moment.
Open the next.
Requirements
Required - Norns - Grid
Recommended - mx.samples - Seeker's default engine is fantastic mx.samples from infinitedigits. If you purely want to use Eurorack it's not necessary, but so much of this script was designed with it in mind. - Arc — Seeker has a lot of configurability. Arc makes that configurability pleasant. Encoders 2, 3, 4 are mapped to different significant figures for high-resolution control and realtime performability of parameters. Everything works with out it but strongly recommended. - Seeker TouchDesigner tox — Seeker connects fairly naturally to TouchDesigner and enables a kind of visual painting that I think is a lot of fun, particularly with Arc. I've included toxs for each type of output. More on this further down.
Optional - Crow — Lots of CV and gate output patterns. Clock-synced modulation with some unusual approaches. - TXO — More CV and trigger outputs. And full polyphonic support for the TXO+ oscillators. TXO forever. - i2c modules — Control the playback and settings of Just Friends, W/Syn, and Disting EX - MIDI — external synths and DAWs
Use it
Start the bridge with this driver; it forwards named OSC commands to the software:
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 norns_seeker_ii: ask “what can the Monome norns do?” and it reads this map with list_routes. See the MCP guide.
MIDI controls
89 controls, each with its number, its range and the name to send
OSC commands
| Command | Arguments | Name to send |
|---|---|---|
| Param | id: string, value: float | /norns_seeker_ii/param/{id} |
| Param {set} {id} | set: string, id: string, value: float | /norns_seeker_ii/param/{set}/{id} |
| Remote key | n: int, z: int | /norns_seeker_ii/remote/key |
| Remote enc | n: int, delta: int | /norns_seeker_ii/remote/enc |
| Remote brd | code: int, z: int | /norns_seeker_ii/remote/brd |
| Param midi input device | value: int | /norns_seeker_ii/param/midi_input_device |
| Param rc composer start | value: int | /norns_seeker_ii/param/rc_composer_start |
| Param rc composer movement | value: int | /norns_seeker_ii/param/rc_composer_movement |
| Param rc composer chord len | value: int | /norns_seeker_ii/param/rc_composer_chord_len |
| Param rc composer voicing | value: int | /norns_seeker_ii/param/rc_composer_voicing |
| Param rc composer strum order | value: int | /norns_seeker_ii/param/rc_composer_strum_order |
| Param rc composer rotation | value: int | /norns_seeker_ii/param/rc_composer_rotation |
| Param rc composer spread | value: float | /norns_seeker_ii/param/rc_composer_spread |
| Param rc composer stages | value: int | /norns_seeker_ii/param/rc_composer_stages |
| Param rc composer loops | value: int | /norns_seeker_ii/param/rc_composer_loops |
| Param rc composer beats | value: int | /norns_seeker_ii/param/rc_composer_beats |
| Param rc composer gate | value: int | /norns_seeker_ii/param/rc_composer_gate |
| Param rc composer vel min | value: int | /norns_seeker_ii/param/rc_composer_vel_min |
| Param rc composer vel max | value: int | /norns_seeker_ii/param/rc_composer_vel_max |
| Param rc composer vel stage | value: int | /norns_seeker_ii/param/rc_composer_vel_stage |
| Param rc composer vel tone | value: int | /norns_seeker_ii/param/rc_composer_vel_tone |
| Param seeker clock tempo | value: int | /norns_seeker_ii/param/seeker_clock_tempo |
| Param tap tempo | value: int | /norns_seeker_ii/param/tap_tempo |
| Param sync all clocks | value: int | /norns_seeker_ii/param/sync_all_clocks |
| Param background brightness | value: float | /norns_seeker_ii/param/background_brightness |
| Param screensaver timeout | value: int | /norns_seeker_ii/param/screensaver_timeout |
| Param shield encoder fix | value: int | /norns_seeker_ii/param/shield_encoder_fix |
| Param snap midi to scale | value: int | /norns_seeker_ii/param/snap_midi_to_scale |
| Param record midi note | value: int | /norns_seeker_ii/param/record_midi_note |
| Param overdub midi note | value: int | /norns_seeker_ii/param/overdub_midi_note |
| Param eurorack selected type | value: int | /norns_seeker_ii/param/eurorack_selected_type |
| Param eurorack selected number | value: int | /norns_seeker_ii/param/eurorack_selected_number |
| Param sync all eurorack clocks | value: int | /norns_seeker_ii/param/sync_all_eurorack_clocks |
| Param osc sync all clocks | value: int | /norns_seeker_ii/param/osc_sync_all_clocks |
| Param osc dest octet 1 | value: int | /norns_seeker_ii/param/osc_dest_octet_1 |
| Param osc dest octet 2 | value: int | /norns_seeker_ii/param/osc_dest_octet_2 |
| Param osc dest octet 3 | value: int | /norns_seeker_ii/param/osc_dest_octet_3 |
| Param osc dest octet 4 | value: int | /norns_seeker_ii/param/osc_dest_octet_4 |
| Param osc dest port | value: int | /norns_seeker_ii/param/osc_dest_port |
| Param osc test trigger | value: int | /norns_seeker_ii/param/osc_test_trigger |
| Param wtape toggle playing | value: int | /norns_seeker_ii/param/wtape_toggle_playing |
| Param wtape speed | value: float | /norns_seeker_ii/param/wtape_speed |
| Param wtape reverse | value: int | /norns_seeker_ii/param/wtape_reverse |
| Param wtape toggle recording | value: int | /norns_seeker_ii/param/wtape_toggle_recording |
| Param wtape erase strength | value: float | /norns_seeker_ii/param/wtape_erase_strength |
| Param wtape monitor level | value: float | /norns_seeker_ii/param/wtape_monitor_level |
| Param wtape rec level | value: float | /norns_seeker_ii/param/wtape_rec_level |
| Param wtape echo mode | value: int | /norns_seeker_ii/param/wtape_echo_mode |
| Param wtape rewind time | value: float | /norns_seeker_ii/param/wtape_rewind_time |
| Param wtape rewind | value: int | /norns_seeker_ii/param/wtape_rewind |
| Param wtape ff time | value: float | /norns_seeker_ii/param/wtape_ff_time |
| Param wtape fast forward | value: int | /norns_seeker_ii/param/wtape_fast_forward |
| Param wtape loop mode | value: int | /norns_seeker_ii/param/wtape_loop_mode |
| Param wtape loop start | value: int | /norns_seeker_ii/param/wtape_loop_start |
| Param wtape loop end | value: int | /norns_seeker_ii/param/wtape_loop_end |
| Param wtape goto start | value: int | /norns_seeker_ii/param/wtape_goto_start |
| Param wtape init | value: int | /norns_seeker_ii/param/wtape_init |
| Param sampler voice count | value: int | /norns_seeker_ii/param/sampler_voice_count |
| Param motif config sync all clocks | value: int | /norns_seeker_ii/param/motif_config_sync_all_clocks |
| Param motif config column steps | value: int | /norns_seeker_ii/param/motif_config_column_steps |
| Param motif config row steps | value: int | /norns_seeker_ii/param/motif_config_row_steps |
| Param tuning preset | value: int | /norns_seeker_ii/param/tuning_preset |
| Param root note | value: int | /norns_seeker_ii/param/root_note |
| Param scale type | value: int | /norns_seeker_ii/param/scale_type |
| Param spc visual edit | value: int | /norns_seeker_ii/param/spc_visual_edit |
| Param spc start pos | value: float | /norns_seeker_ii/param/spc_start_pos |
| Param spc stop pos | value: float | /norns_seeker_ii/param/spc_stop_pos |
| Param spc attack | value: float | /norns_seeker_ii/param/spc_attack |
| Param spc release | value: float | /norns_seeker_ii/param/spc_release |
| Param spc fade time | value: float | /norns_seeker_ii/param/spc_fade_time |
| Param spc rate | value: float | /norns_seeker_ii/param/spc_rate |
| Param spc pitch | value: int | /norns_seeker_ii/param/spc_pitch |
| Param spc max volume | value: float | /norns_seeker_ii/param/spc_max_volume |
| Param spc pan | value: float | /norns_seeker_ii/param/spc_pan |
| Param spc mode | value: int | /norns_seeker_ii/param/spc_mode |
| Param spc filter type | value: int | /norns_seeker_ii/param/spc_filter_type |
| Param spc lpf | value: float | /norns_seeker_ii/param/spc_lpf |
| Param spc resonance | value: float | /norns_seeker_ii/param/spc_resonance |
| Param spc hpf | value: float | /norns_seeker_ii/param/spc_hpf |
| Param sampler creator duration | value: float | /norns_seeker_ii/param/sampler_creator_duration |
| Param sampler velocity 1 | value: int | /norns_seeker_ii/param/sampler_velocity_1 |
| Param sampler velocity 2 | value: int | /norns_seeker_ii/param/sampler_velocity_2 |
| Param sampler velocity 3 | value: int | /norns_seeker_ii/param/sampler_velocity_3 |
| Param sampler velocity 4 | value: int | /norns_seeker_ii/param/sampler_velocity_4 |
| Param sampler velocity selected | value: int | /norns_seeker_ii/param/sampler_velocity_selected |
| Param tape keyboard layout | value: int | /norns_seeker_ii/param/tape_keyboard_layout |
| Param tape velocity 1 | value: int | /norns_seeker_ii/param/tape_velocity_1 |
| Param tape velocity 2 | value: int | /norns_seeker_ii/param/tape_velocity_2 |
| Param tape velocity selected | value: int | /norns_seeker_ii/param/tape_velocity_selected |
The same MIDI as norns.vendor.fw-2.9.4, which this firmware shares.
Limitations
Source: the Lua source of the norns script seeker_ii by awakening.systems (brokyo/seeker_ii at 1ba7ae7), 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 84 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. 280 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.
Firmwares
The Monome norns runs 353 firmwares SynthHub maps, each with its own MIDI or another's it shares. All the devices with several: firmwares.
353 firmwares
Other sources
The Monome norns is mapped in 356 versions. per Electra preset, per Electra preset, per Electra preset.
Frequently asked questions
Can an AI agent like Claude control the Monome norns?
Yes: SynthHub's hosted MCP server knows the Monome norns's MIDI map, and its browser relay lets the agent send it parameter changes or load a sound, each sound change confirmed by you.