Skip to the content
PCBKitNew board
2 layers35 × 115.8 mmArduino, the printed circuit board in 3D

An Arduino and Python project for controlling the mouse cursor

Size
35 × 115.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
6
Nets
30
Pads
60
Tracks, vias
84, 0
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
12 Feb 2024
Updated
7 Dec 2025

Overview

Arduino is an open-source printed circuit board by gsg211, from the gsg211/Mouse-controller repository on GitHub. It is a 2-layer board of 35 × 115.8 mm with 6 parts on 30 nets, routed with 84 tracks and 0 vias.

It is built around the COM-09032. It belongs with the AVR (ATmega, ATtiny) boards of this library.

Main components

1

README

README.md

Description

This project is a simple mouse controller built using an Arduino and Python. The Arduino reads input from sensors or buttons, and the Python script translates those inputs into mouse movements and actions on your computer.

Project Overview

  • Arduino Part: Handles sensor/button inputs and communicates with the computer via serial.
  • Python Part: Receives serial data from the Arduino and uses it to control the mouse with the pyautogui library.

Breadboard Setup

Refer to the following image for the breadboard wiring:

Breadboard design

PCB Setup

For a more permanent build, you can use the provided PCB design:

  • Schematic: pcb design schematic

  • PCB Layout:

    pcb footprint design

Python Setup

Required Libraries

Make sure you have the following Python libraries installed:

text
# Libraries:
├── pyserial
└── pyautogui
Running the Script
  1. Connect your Arduino to your computer.
  2. Upload the appropriate sketch to the Arduino.
  3. Make sure to select the right serial port in the python script
  4. Run the Python script:
bash
python mouse_controller.py

How It Works
  • The Arduino reads input from connected components (e.g., joystick, buttons, or sensors).
  • It sends the data to the computer over the serial port.
  • The Python script reads this data and translates it into mouse actions using pyautogui.

Parts

6
QtyValueFootprintReferences
4SW_PushButton_Switch_THT:SW_PUSH_6mmDown, Left, Right, Up
1Arduino_Nano_v3.xModule:Arduino_NanoA1
1COM-09032XDCR_COM-09032:XDCR_COM-09032joystick

Questions

How big is the Arduino PCB?

It measures 35 × 115.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Arduino use?

6 parts, built around the COM-09032. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Arduino KiCad files?

From the gsg211/Mouse-controller repository on GitHub, at the commit this page was made from: the board is Arduino/Project.kicad_pcb and its schematic Arduino/Project.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Arduino design in my own project?

Its repository states no licence, so its author keeps all rights: ask gsg211 before reusing the design.

Similar boards

  • 2 layers304.8 × 95.2 mmLMN, the printed circuit board in 3D

    LMN

    FundamentalFrequency/LMN-3-ECAD

    Electrical CAD Files for the LMN-3 Project

    106 parts106CC-BY-SA-4.0
  • 2 layers27.3 × 34.3 mmPs4, the printed circuit board in 3D

    Ps4

    little-scale/PS4_joystick_footprint

    PS4 Joystick Footprint for Kicad

    6 parts18
  • 2 layers235.8 × 117.2 mmErgorox50, the printed circuit board in 3D

    Ergorox50

    ReGenBot03/Ergorox50

    Personal Split Keyboard Project with Thumstick & Trackpad

    197 parts13
  • 2 layers130 × 109 mmRight, the printed circuit board in 3D

    Right

    Hex-4/glyph

    [ a custom split keyboard for portably and comfortably interfacing with computing systems ]

    49 parts11MIT
  • 2 layers107 × 83 mmHEX remote, the printed circuit board in 3D

    HEX remote

    Josh4minee/HEX-B12.V1

    HEX-B12.V120 is a custom designed hexapod using mg996r servos and has it's theme based on the beloved bot B-12 from the popular video game STRAY.

    16 parts7MIT
  • 2 layers268.4 × 63.2 mmProject Hermes, the printed circuit board in 3D

    Project Hermes

    shiva233/Project-Hermes

    Project Hermes is a handheld "console" designed for people who already own gaming PCs so they can stream their games via SteamLink so they can take it anywhere for cheap!

    17 parts4
  • 2 layers50 × 200 mmMouse c1, the printed circuit board in 3D

    Mouse c1

    kayaked/esp32-ble-mouse-remote

    Bluetooth LE hybrid of a computer mouse and a TV remote. (software/electronics)

    31 parts2MIT
  • 2 layers188.5 × 88.9 mmEsp gamepad v2, the printed circuit board in 3D

    Esp gamepad v2

    Reiko0908/NeuralNetwork_Based_AutonomousCar

    This project focuses on developing an autonomous car system powered by neural networks (NN). It utilizes deep learning techniques to enable key functionalities such as perception, path planning, and control.

    70 parts2Apache-2.0