Skip to content

Reset CH9329 Configuration

Toby Chui edited this page Aug 12, 2026 · 2 revisions

Strange behavior in remote keyboard / HID

Some advance users might want to code their own HID controller so they can automate remote control or simpily wanting to hack the USB-KVM into a IP-KVM device. In the case where you accidentally wipe the CH9329 configuration, you might use the following instruction discovered by Neil to reset your DezKVM-Go to a working state.

Here is the instruction from Neil:


I found an English version of the data sheet here https://www.wch-ic.com/downloads/CH9329DS1_PDF.html which I used along with your ‘dezkvmd’ ‘configure_chip.sh’ script. For completeness I found the English protocol sheet here https://github.com/AaLl86/MiniKvm_public/tree/main/Specs.

Steps to fix:

1). Prepare for programming CH9329 chip:

 a). Clone DezKVM

 b). Build dezkvmd

2). Restore configuration of CH9329 to the factory default settings - data sheet page 5 and this:

 a). Connect Control/Client USB-C port - made sure it was connected as /dev/ttyUSB0

 b). Connect Remote/Guest USB port to power only.

 c). Short CH9329 pin 10 (DEF) to GND for 3 seconds

3). Prepare CH9329 for configuration - data sheet page 5:

 a). Short CH9329 pin 11 (SET) to GND

4). Program CH9329:

 a). Run “configure_chip.sh” which reports “Baudrate updated to 115200 successfully” and …”Unplug device and plug it back in to apply changes.”

5). Disconnect cables from DezKVM Go and reconnect to Control/Client and Remote/Guest.

6). Happy KVM’ing :)

Notes:

  • I used fine pointed metal tweezers to short pins to ground, but jumper wires would do just as well if careful!
  • it took awhile to figure out I needed to short pin 11 (SET) before programming - before I did this I’d get “timeout waiting for reply” and “failed to get reply” errors.

P.S. If someone got the time, please help tidy this into a proper wiki page.

Clone this wiki locally