brentvatne/oxi-e16-config
Overview
This skill helps create, edit, and validate .oxie16 scene files for the OXI E16 MIDI controller. It focuses on correct MIDI mappings (CC, NRPN, 14-bit CC), encoder behavior, icon formatting, and scene/page/encoder structure. Use it to produce scenes that load reliably on the E16 and behave as expected with synths and MIDI gear.
How this skill works
It inspects scene JSON for required fields and correct field order, validates encoder action objects include all required keys, and checks MIDI mapping consistency (CC vs CC14 vs NRPN and channel usage). It verifies icon arrays are exactly 32 bytes and flags common pitfalls (truncated titles, wrong output values, disabled-action shorthand). It also suggests color schemes and mode choices based on mapping types and target hardware.
When to use it
- Creating a new .oxie16 scene for a synth, drum machine, or effects unit
- Converting hardware MIDI mappings into E16 encoder/page layouts
- Auditing existing scene files to fix silent load failures or broken icons
- Setting up CC14 or NRPN mappings for high-resolution control
- Preparing performance scenes with presets, pages and correct channel routing
Best practices
- Always include every field in push_action and turn_actions—do not use shorthand disabled objects
- Keep the encoder.bipolar field after turn_actions to avoid parsing errors
- Ensure icons are exactly 32 bytes (16×16, 1-bit) or the scene will silently fail to load
- Use Auto Channel for Elektron devices where you want the controller to follow the device's selected track
- Ask users about color strategy before assigning colors; prefer consistent schemes (by parameter type or function)
Example use cases
- Map filter cutoff to CC14 (type 4) for smooth sweeping and set nr1 to the MSB CC number
- Create a synth page with bipolar pan encoders (bipolar: true) and display value B63 for -63..+64
- Build a scene for an Elektron device and use Auto Channel (10) so pages follow the active track
- Design a sampler page with snapshot encoders (type 10) to morph between A/B sample states
- Validate a scene that loads but shows incorrect values by checking action field completeness and page/channel overrides
FAQ
Most silent failures come from missing required keys in action objects or an icon array that is not exactly 32 bytes. Validate every action object and the icon length.
When should I use CC14 vs NRPN vs relative CC?
Use CC14 (type 4) for high-resolution parameters like filter frequency; use NRPN (type 9) for devices that expect NRPN addressing; use relative CC (type 1/2) for pickup-free endless encoder control when the device tracks its own state.