Skip to main content
ZeroKeyUSB connects through a USB-C receptacle but behaves as a classic USB 2.0 full-speed device. The board keeps the wiring simple so that any USB-A or USB-C host can power and communicate with the key.

Connector wiring

No high-speed pairs or USB 3.x pins are used. Shield is connected to ground through a 1 MΩ resistor and 10 nF capacitor for ESD suppression.

Power path

  • VBUS feeds a 3.3 V LDO regulator (TPS73533) that powers the SAMD21, OLED, touch controller, and EEPROM.
  • Total current stays under 120 mA during OLED animations, well within USB 2.0 limits.
  • Reverse current protection prevents powering the host when the device is off.
  • A PTC resettable fuse (250 mA) adds short-circuit protection.
Because ZeroKeyUSB has no battery, unplugging the cable immediately cuts power and clears volatile RAM.

USB descriptors

Each interface has its own endpoint pair, allowing simultaneous keyboard and serial communication without re-enumeration.

Security considerations

  • The firmware ignores vendor-specific control requests and only responds to standard USB descriptors.
  • HID reports are generated solely from user-confirmed actions; there is no host-triggered typing.
  • CDC commands require the device to be unlocked and, for destructive actions, a long-press confirmation.
  • USB suspend triggers an immediate lock after 30 seconds of inactivity.
These safeguards ensure that plugging the key into an unknown host does not expose stored secrets.

Troubleshooting enumeration

If USB data lines are damaged, the device can still power up, but no credentials will be typed. Inspect the connector for debris or mechanical stress.