Skip to content

Add verified SikaiCase 1189:8842 12-key 4-knob support - #1

Open
geniosid wants to merge 1 commit into
jvspier:mainfrom
geniosid:add-sikaicase-1189-8842-12+4knobs
Open

geniosid wants to merge 1 commit into
jvspier:mainfrom
geniosid:add-sikaicase-1189-8842-12+4knobs

Conversation

@geniosid

@geniosid geniosid commented Sep 3, 2026

Copy link
Copy Markdown

Hi! I opened PR #1 with support for the SikaiCase 1189:8842 12-key / 4-encoder variant.

I wanted to mention that the protocol details in the PR were determined and tested against my physical device, rather than inferred from the existing layouts.

The two important device-specific findings are:

encoder 4 uses slots 0x0D–0x0F, while encoders 1–3 use 0x10–0x18;
reading the 24 records requires FA 0F 03 rather than the generic FA 0C 04 .

I also physically tested reading, writing, committing, reconnecting and reading the bindings back again.

Hopefully this is useful for supporting this variant. Thanks for creating the project!

What

Adds verified support for the SikaiCase 1189:8842 macropad with 12 keys and 4 rotary encoders.

Hardware verified

  • USB VID:PID: 1189:8842
  • 12 physical keys
  • 4 rotary encoders
  • 3 layers
  • HID configuration interface: interface 0, Usage Page 0xFF00, Usage 0x01
  • Report ID 0x03
  • 64-byte HID payload

Important device-specific details

This model does not use the standard knob slot numbering assumed by the generic layout.

Physical encoder slots are:

| Encoder | CCW | Press | CW |

| K1 | 0x10 | 0x11 | 0x12 |
| K2 | 0x13 | 0x14 | 0x15 |
| K3 | 0x16 | 0x17 | 0x18 |
| K4 | 0x0D | 0x0E | 0x0F |

The fourth encoder is therefore stored before the first three encoder groups.

The device also requires the following read command for its 24 records:

FA 0F 03 <layer>

rather than the generic:

FA 0C 04 <layer>

Verification

The implementation was tested against a physical SikaiCase 1189:8842 device.

Verified:

  • device identification and identity restoration
  • reading all 24 records
  • key bindings
  • encoder CCW / press / CW mappings
  • modifier + keycode readback
  • writing and committing bindings
  • persistence after disconnecting and reconnecting the device

The unusual slot mapping and read command were determined from the actual device and verified with physical hardware.

No changes are made to the behavior of the existing layouts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant