Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/slayingripper/keyboard-rumble
https://github.com/slayingripper/keyboard-rumble
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/slayingripper/keyboard-rumble
- Owner: Slayingripper
- License: gpl-3.0
- Created: 2023-12-30T17:25:31.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2023-12-30T18:32:39.000Z (12 months ago)
- Last Synced: 2023-12-30T19:23:58.395Z (12 months ago)
- Language: Python
- Size: 2.14 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Keyboard-Rumble
This Python script monitors mouse activity using the `pynput` library and sends MQTT messages based on mouse events. It logs mouse movements, button presses/releases, and scroll actions. The script utilizes the `paho.mqtt.client` library to publish messages to an MQTT broker.
The messages are then interpreted by the Pi or Arduino to vibrate the keyboard just like a controller would.## Prerequisites
1. Rumble motors
2. PI or Arduino (to drive the motors)
3. 3D printed case to attach to the motors to keyboard (optional)
4. MQTT server## Schematics
You can use what ever pins you want as long as you can use PWM.![Rumble Schematics](https://github.com/Slayingripper/Keyboard-Rumble/blob/main/Schematics/keyboard.png)
![Demo](https://github.com/Slayingripper/Keyboard-Rumble/blob/main/Schematics/keyboard.mp4 "Keyboard")
## Usage
Step 1:- Desktop.py needs to be running to send data to the server
```
python Desktop.py
```Step 2:
```
python rumbler.py
```## TODO Checklist
- [ ] Add individual mouse click addressing