Skip to content

thewh1teagle/zero-hid

Repository files navigation

HID python library for emulating mouse and keyboard on PI.

Setup

  1. Install apt dependencies
sudo apt-get update
sudo apt-get install -y git python3-pip python3-venv
  1. install usb gadget module

  2. Create virtual environment

python3 -m venv ~/venv
source ~/venv/bin/activate
  1. Install zero-hid with pip
pip3 install zero-hid
  1. Reboot if not already!

Usage

Note: You should connect the data usb port (left one) to the raspberry, and NOT the power port

  • Control mouse
from zero_hid import Mouse
m = Mouse()
for i in range(5):
    m.move(10, 10)
  • Control keyboard
from zero_hid import Keyboard

k = Keyboard()
k.type('Hello world!')

Features

  • Relative / Absolute mouse movements
  • Left / Right / Middle click
  • Scrolling
  • Typing
  • Hot keys
  • Drag and Drop
  • LEDs status
  • Easy to setup
  • Comprehensive Testing

Examples

see examples

Tests

Raspberry Pi Model Raspbian Version Kernel Version Date of Testing
Raspberry Pi 4 Raspbian 12 (bookworm) 6.6.31 04/08/2024
Raspberry Pi 4 Raspbian 12 6.1 01/01/2023
Raspberry Pi Zero Raspbian 5.10 - 01/01/2023

Gotchas


Absolute mouse used only for positioning - use relative mouse for clicking, etc. See examples.