Examples

ILX MultiPad

Works with Nexting · keyboard case

Nexting Devices SDK · Case

ILX MultiPad

Keep the MultiPad's original controls and connect them to Nexting through a Bridge, with an observable proof at every step.

Case study: bring the ILX MultiPad to Nexting

MultiPad is an STM32F103VET6 desktop control keyboard published on the Lichuang open hardware platform, with keys, rotary controls, and display openings. The steps below keep its original controls and connect them to Nexting through a Bridge.

The upstream page confirms the STM32F103VET6 MCU, Electron Host, and GPL-3.0 license. Confirm the programming entry, USB protocol, and BLE implementation from the board and source; a Type-C connector is not proof of UF2 drag-and-drop flashing.
MultiPad front with transparent mechanical keys, rotary controls, and display openings
Front: keys, rotary controls, and display openings. The firmware chooses the mapping.
MultiPad enclosure back with a USB-C cable
Back: the Type-C connector is visible; confirm its download role from the schematic and board.
MultiPad opened to show its circuit board
Opened: the STM32 board, controls, and display module are visible.

Hardware and protocol notes

SourceDescription
Upstream MultiPad project pageSTM32F103VET6 MCU, Electron desktop Host, and GPL-3.0 project license.
Your physical-board photosTransparent mechanical keys, several rotary controls, display openings, and a Type-C connector. Confirm the programming entry and pins on the board.
Nexting Devices SDKapproval/1, status/1, keys/1, rotary/1, and text/1 express generic device intent; MultiPad reaches these Profiles through a Bridge.

Connection path

The Nexting device contract uses encrypted BLE GATT. Keep MultiPad's original firmware and Electron Host, then run a computer Bridge that translates USB/Host events into Nexting Profiles. Direct phone discovery requires a BLE companion or new wireless firmware.

Control mapping: the protocol does not choose the key

MultiPad control (example)Nexting intentProfileFirst implementation
One key you chooseallow for a one-time requestapproval/1Declare the mapping in firmware or the Bridge; there is no fixed Allow key.
Another key you choosedeny for a one-time requestapproval/1Return only the choice for the current request ID.
Any rotary controldirection or delta eventrotary/1Record delta in the Bridge first, then map it in the Host.
Rotary press or another keyconfirm, select, or command eventkeys/1 / navigation/1Let the Host assign meaning instead of baking it into the enclosure.
Display or screen openingAgent state, title, or short textstatus/1 / text/1Confirm the controller and resolution before declaring Device Info.
Mapping sketch (not vendor MultiPad firmware)c
/* Physical slots belong to your MultiPad firmware. */
if (event.slot == MULTIPAD_CONFIRM_SLOT &&
    event.gesture == NEXTING_DEVICE_GESTURE_PRESS) {
    nexting_device_state_choose(
      &approval, NEXTING_DEVICE_CHOICE_ALLOW, now_ms, &answer);
    transport_send(answer);
}

/* Another control can map to deny, navigation, or rotary. */

Firmware preparation

  1. Preserve the original firmware

    Use the original Electron Host to verify keys, rotary controls, displays, and Type-C first. Save the original image or at least a known recovery path.
  2. Identify the STM32 programming entry

    After opening the board, use the schematic and silkscreen to locate SWD, Boot0/UART, or a USB download chip. Type-C is a connector shape, not proof of UF2 drag-and-drop.
  3. Build the Bridge before changing the MCU

    If the original firmware already reports input to a computer, implement the USB/Host-to-Nexting adapter first. It is safer and reversible.
  4. Flash only a matched artifact

    Flash only after the build artifact matches STM32F103VET6, the boot mode, and the board wiring. The Nexting Zephyr UF2 is not valid for this board by default.
There is no Nexting firmware that can be flashed to MultiPad directly. Confirm the STM32 programming entry, board wiring, and matching build artifact before adding the exact tool, command, format, and rollback steps.

Verification order: every step has an observable result

OrderVerificationPass condition
1Operate every control with the original HostThe original firmware behavior is intact.
2Have the Bridge report identity and capabilitiesHost sees stable model, firmware, and profiles.
3Map only one key to approval/1One request produces one allow or deny; duplicates do not execute twice.
4Round-trip rotary and display stateDirection, delta, status, and disconnect clearing are observable.
5Unplug, reconnect, expire, and roll backExpired requests fail, stale state clears, and the original firmware is recoverable.