Skip to content

Latest commit

 

History

History
215 lines (177 loc) · 5.21 KB

mk5-2846.md

File metadata and controls

215 lines (177 loc) · 5.21 KB

no 2846 Frankenstein MK5

https://ezykeys.com/

5:

  Product ID:	0x0003
  Vendor ID:	0xfefd
  Version:	0.02
  Serial Number:	vial:f64c2b3c
  Speed:	Up to 12 Mb/s
  Manufacturer:	vial:f64c2b3c
  Location ID:	0x02113000 / 6
  Current Available (mA):	500
  Current Required (mA):	500
  Extra Operating Current (mA):	0

Vial app works (had to enable unsigned apps)

has configured layers

Using the via.rocks web app -> "About 0005"

Manufacturer:
Product: 0005
VID: FEFD
PID: 0003
Device: /webhid
VIA protocol: 9
Vial protocol: 2
Vial keyboard ID: A78B9BEA5ABE77EC
Macro entries: 16
Macro memory: 314 bytes
Macro delays: yes
Complex (2-byte) macro keycodes: unsupported - Vial firmware too old
Tap Dance entries: unsupported - Vial firmware too old
Combo entries: unsupported - Vial firmware too old
Key Override entries: unsupported - Vial firmware too old
QMK Settings: unsupported - Vial firmware too old

Using hidtest from hidapi (this device only)

Device Found
  type: fefd 0003
  path: DevSrvsID:4295291580
  serial_number: vial:f64c2b3c
  Manufacturer: vial:f64c2b3c
  Product:      0005
  Release:      2
  Interface:    0
  Usage (page): 0x6 (0x1)

Device Found
  type: fefd 0003
  path: DevSrvsID:4295291580
  serial_number: vial:f64c2b3c
  Manufacturer: vial:f64c2b3c
  Product:      0005
  Release:      2
  Interface:    0
  Usage (page): 0x2 (0x1)

Device Found
  type: fefd 0003
  path: DevSrvsID:4295291580
  serial_number: vial:f64c2b3c
  Manufacturer: vial:f64c2b3c
  Product:      0005
  Release:      2
  Interface:    0
  Usage (page): 0x1 (0x1)

Device Found
  type: fefd 0003
  path: DevSrvsID:4295291578
  serial_number: vial:f64c2b3c
  Manufacturer: vial:f64c2b3c
  Product:      0005
  Release:      2
  Interface:    2
  Usage (page): 0xe (0x1)

Device Found
  type: fefd 0003
  path: DevSrvsID:4295291578
  serial_number: vial:f64c2b3c
  Manufacturer: vial:f64c2b3c
  Product:      0005
  Release:      2
  Interface:    2
  Usage (page): 0x21 (0xd)

Device Found
  type: fefd 0003
  path: DevSrvsID:4295291578
  serial_number: vial:f64c2b3c
  Manufacturer: vial:f64c2b3c
  Product:      0005
  Release:      2
  Interface:    2
  Usage (page): 0x80 (0x1)

Device Found
  type: fefd 0003
  path: DevSrvsID:4295291578
  serial_number: vial:f64c2b3c
  Manufacturer: vial:f64c2b3c
  Product:      0005
  Release:      2
  Interface:    2
  Usage (page): 0x1 (0xc)

Device Found
  type: fefd 0003
  path: DevSrvsID:4295291576
  serial_number: vial:f64c2b3c
  Manufacturer: vial:f64c2b3c
  Product:      0005
  Release:      2
  Interface:    1
  Usage (page): 0x61 (0xff60)

Using hidapitester to poke at the device...

Screen / dial is this:

FEFD/0003: vial:f64c2b3c - 0005
  vendorId:      0xFEFD
  productId:     0x0003
  usagePage:     0xFF60
  usage:         0x0061
  serial_number: vial:f64c2b3c
  interface:     1
  path: IOService:/AppleARMPE/arm-io/AppleT600xIO/usb-drd1@2280000/AppleT6000USBXHCI@01000000/usb-drd1-port-hs@01100000/USB2.0 Hub@01100000/AppleUSB20Hub@01100000/AppleUSB20HubPort@01110000/0005@01110000/IOUSBHostInterface@1/AppleUserUSBHostHIDDevice

usagePage hex FF60 -> dec 65376 usage hex 0061 -> dec 97

./hidapitester --vidpid FEFD:0003 --open --read-input-forever

Turn dial anticlockwise

Reading 64-byte input report 0, 250 msec timeout...read 32 bytes:
 FD 04 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

clockwise

Reading 64-byte input report 0, 250 msec timeout...read 32 bytes:
 FD 04 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Write "Hello " to screen row 2

$ hidapitester --vidpid FEFD:0003 --open --usagePage ff60 --usage 0061 --send-output 0x00,0xfd,0x01,0x01,0x48,0x65,0x6c,0x6c,0x6f,0x20
Opening device, vid/pid: 0xFEFD/0x0003
Writing output report of 64-bytes...wrote 64 bytes:
 00 FD 01 01 48 65 6C 6C 6F 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Closing device

Back to the keypad.

bootloader mode - hold bottom left key when plugging in

macOS sees

USB product 0x55e0 vendor 0x4348 --> it's a WCH chip (not that you can tell from the hardware as the chip ID is not visible)

Using chflasher

$ python ./chflasher.py --detect
Found CH552
Flash size: 16 blocks, 16384 bytes.
Reserved for application: 14 blocks, 14336 bytes.
Bootloader version: 2.40

--> it's a CH552 chip

  • supports USB
  • supports USB-C master/slave detection
  • supports USB HID
  • does NOT support QMK
  • ... so how is it implementing Vial?

Using ch55xtool

$ python -m ch55xtool -p
Found CH552 with SubId:17
BTVER:02.40
UID:26-48-93-54-00-00-00-00
Chip configs   0xFFFFFFFF   0x00000003   0xD77B72FF
Finalize communication. Done.