Skip to main content

Controllable

A program to control your computer through its camera.

Requirements

  • Python 3.9 - 3.12
  • A camera connected to your computer

Installation

  1. Clone the repository:

    git clone https://github.com/simon0302010/Controllable.git
    cd Controllable
    
  2. Install the dependencies:

    It is recommended to use a virtual environment.

    python -m venv .venv
    source .venv/bin/activate  # On Windows, use `.venv\Scripts\activate`
    

    Install the required packages using pip:

    pip install -e . # or pip install controllable-py
    pip uninstall -y opencv-contrib-python opencv-python-headless
    pip cache purge
    pip install opencv-python-headless
    

    opencv-contrib-python is being uninstalled to prevent issues with PyQt5.

Usage

  1. Run the application:

    python -m controllable
    

    You can also just run controllable

  2. Calibrate:

    A window will open showing your camera feed. Place your hand in a comfortable position in front of the camera and press the "Calibrate" button.

  3. Start controlling:

    After calibration, press the "Start" button. You can now control your mouse by moving your hand. To prevent accidental inputs, keep your hand the same distance from the camera during usage.

    • Mouse movement: The position of your index finger controls the cursor.
    • Clicking: Tap your index finger and thumb together to perform a click.
    • Dragging: Hold your index finger and thumb together to drag (has to be enabled in settings)
  4. Stop:

    Press the "Stop" button to stop controlling the mouse.

Known Issues

  • Mouse control and clicking doesn't work under Wayland

License

This project is licensed under the GNU General Public License v3.0. For more details, see the LICENSE file.

Metadata

Release files for controllable-py 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for controllable-py 0.1.2
File Size Uploaded
controllable_py-0.1.2.tar.gz 21.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for controllable-py 0.1.2
File Interpreter ABI Platform
controllable_py-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 42.9 kB

Release files / controllable_py-0.1.2.tar.gz

Download URL controllable_py-0.1.2.tar.gz
Size 21.1 kB
Tags Source
SHA-256 checksum
How to use checksums
c3cb57aa8086c93a452ef342f90cca961c49355d53dcd81c9c4776f3162f7edb
BLAKE2b-256 checksum
How to use checksums
6c740645687c763fc47b907541eb3e40931fc0b96d96c43f54828dd1a14da3b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release files / controllable_py-0.1.2-py3-none-any.whl

Download URL controllable_py-0.1.2-py3-none-any.whl
Size 21.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3f415e01f1b4bfdbf280c7a5cd1a3c2c0f0305b14c0cc6a3a77b6d2129032168
BLAKE2b-256 checksum
How to use checksums
4d67612518f948e4fa89690ecc6fc3184da60da415ccca2a9f8e458ee7329c0f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.11

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page