Subsystem Search

This page is read from MIDI Instrument Definitions, a Python library used in the author's other projects, in which every number is traced to a document its maker published. Its source is on GitHub.

Expressive E Osmose MIDI implementation

The MIDI implementation of the Expressive E Osmose: what it answers to, and the 17 controls it offers, on firmware 2.3.

At a glance

Firmware
This page describes firmware 2.3.
MIDI channel
1 to 14.
MPE
Sent and received: its voices are spread across its MIDI channels, a note to each.
Voices
24.
Note range
Not recorded.
Velocity
Sent, and ignored when received. Release velocity is ignored.
Aftertouch
Channel pressure, which over MPE is a value for each note. It sends aftertouch too.
Pitch bend
How far it bends is not recorded, and the range can be changed.
Program change
Received, with 609 presets.
MIDI clock
Received.
Start and stop
Received.
Control change
17 controls, in the tables below.
NRPN
None.
System exclusive
None.

Controls

In the order the definition gives them, by group. Under each control is the name a program calls it by, once pymidiinstrumentdefs.load("expressive_e/osmose") has loaded them.

Program

Control CC Values
Bank Select (MSB)
bank_select
0 0-127
Received, never sent

Macros

Control CC Values
Macro 1
macro_1
12 0-127
Macro 2
macro_2
13 0-127
Macro 3
macro_3
14 0-127
Macro 4
macro_4
15 0-127
Macro 5
macro_5
16 0-127
Macro 6
macro_6
17 0-127

Global fx

Control CC Values
Global FX Parameter 1
global_fx_parameter_1
20 0-127
Global FX Parameter 2
global_fx_parameter_2
21 0-127
Global FX Parameter 3
global_fx_parameter_3
22 0-127
Global FX Parameter 4
global_fx_parameter_4
23 0-127
Global FX Mix
global_fx_mix
24 0-127

Comp & drive

Control CC Values
Pre Gain
pre_gain
26 0-127
Post Gain
post_gain
18 0-127
Compressor Mix
compressor_mix
93 0-127

Mod/pedal

Control CC Values
Modulation Wheel / Pedal 2
mod_wheel_pedal_2
1 0-127
Pedal 1
pedal_1
64 0-127

Where these facts come from

Source documents

How they were read

MIDI implementation chart v2.3.x rev. A (3pp), and the user manual rev. 2.3 (92pp), pp. 10, 14-15, 29-36, 45, 87-88 and 92, with three pages of the maker's own online manual for the Advanced Users material the printed manual does not carry. The chart is where every control number below comes from; the manual is where the groups, the descriptions and the behaviour come from.

THE MANUAL CARRIES NO CHART AND SAYS SO, which is why there are two documents: "For advanced use cases like establishing a connection with the Haken Editor, triggering Osmose's sound engine from an external source, switching sounds with Program Change messages, and remote-controlling parameters with MIDI CC messages, please refer to our online knowledge base" (p. 92). The words "master channel", "member channel", "program change" and "bend range" appear nowhere in its 92 pages, and it states the sound engine's polyphony nowhere.

THE CHART DESCRIBES ONE OF FIVE PORTS, and nothing in the definition holds beyond it: "All information refers to USB MIDI Port 2, the 'sound engine' mode" (chart_article). Port 1 sends what the player configures in External MIDI Mode, port 3 is a DIN interface, port 4 carries DAW control, and port 5 is the Haken Editor's (p. 15).

EVERY ROW OF THE CHART IS ACCOUNTED FOR. It prints 126 rows, which is 0-126 without 63, and 34 of them name a function. 17 are controls here. The other 17 are excluded and each for a stated reason: 7 channel mode messages, CC 120-126, which a control list may not carry; 4 rows that name the NRPN and RPN number controllers, CC 98-101, all four marked as answering to nothing; 2 data entry rows, CC 6 and 38, the same; CC 74, which is aftertouch and is recorded under voice rather than as a parameter; CC 87, which carries the low 7 bits of a pressure value rather than a parameter anybody sets; and CC 83 and 84, which the chart marks as neither sent nor received - see the comment on the eq. The remaining 92 rows name no function and are marked No in both directions, so the numbers missing below are checked absences and not unread rows.

THE CHART PRINTS NO ROW AT ALL FOR CC 63 OR CC 127, which was established from the page's geometry rather than from the order its text layer draws: pages 2 and 3 each draw an unbroken ladder of 63 rows at a uniform spacing, 0-62 and 64-126, with no gap where a dropped row would show and no number drawn twice. Both extractions agreed. CC 127 would have been Poly Mode On, so the chart's channel mode block stops one row short.

NOT RECORDED: