A utility for reading and writing flash contents on Sinowealth 8051-based devices (keyboards and mice) since they all seem to have similar ISP bootloaders.
This is an experimental tool, so use it at your own risk.
| Keyboard | ISP MD5 | MCU | Supported | | -------- | ------- | --- | --------- | | NuPhy Air60 | 3e0ebd0c440af5236d7ff8872343f85d | SH68F90A (labeled as BYK916) | ✅ | | NuPhy Air75 | 3e0ebd0c440af5236d7ff8872343f85d | SH68F90A (labeled as BYK916) | ✅‡ | | NuPhy Air96 | 3e0ebd0c440af5236d7ff8872343f85d | SH68F90A (labeled as BYK916) | ✅‡ | | NuPhy Halo65 | 3e0ebd0c440af5236d7ff8872343f85d | ❓ | ✅ | | Hykker X Range 2017 (RE-K70-BYK800) | 13df4ce2933f9654ffef80d6a3c27199 | SH68F881 (labeled as BYK801) | ✅ | | Xinmeng K916 | cfc8661da8c9d7e351b36c0a763426aa | SH68F90 | ✅ |
‡ Reading tested, writing untested.
To enable running this tool without superuser privileges add the following udev rule with xxxx
and yyyy
replaced with your device Vendor ID and Product ID respectively.
```udev
SUBSYSTEMS=="usb", ATTRS{idVendor}=="xxxx", ATTRS{idProduct}=="yyyy", MODE="0660", GROUP="plugdev" SUBSYSTEMS=="usb", ATTRS{idVendor}=="0603", ATTRS{idProduct}=="1020", MODE="0660", GROUP="plugdev" ```
Make sure your user is part of the plugdev
group.