Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/haasr/mqtt_mouse_dashboard
node.js MQTT client to read mouse input and broadcast it to Mosquitto broker along with Python MQTT client dashboard to visualize mouse data.
https://github.com/haasr/mqtt_mouse_dashboard
hid iot mouse mouse-events mouse-tracking mqtt mqtt-client node node-js nodejs python python3 raspberry-pi raspberry-pi-3 tkinter tkinter-python
Last synced: about 1 month ago
JSON representation
node.js MQTT client to read mouse input and broadcast it to Mosquitto broker along with Python MQTT client dashboard to visualize mouse data.
- Host: GitHub
- URL: https://github.com/haasr/mqtt_mouse_dashboard
- Owner: haasr
- Created: 2020-10-08T22:02:45.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-07-10T05:35:12.000Z (over 2 years ago)
- Last Synced: 2025-01-10T19:45:50.309Z (about 1 month ago)
- Topics: hid, iot, mouse, mouse-events, mouse-tracking, mqtt, mqtt-client, node, node-js, nodejs, python, python3, raspberry-pi, raspberry-pi-3, tkinter, tkinter-python
- Language: Python
- Homepage:
- Size: 3.3 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
Internet of Things (Fall 2020), MQTT Midterm Project
====================================================For an overview of the project, read [the project writeup](https://github.com/haasr/mqtt_mouse_dashboard/blob/master/HaasR-4677-901-midterm-project.pdf).
In this project, I was tasked to acquire a USB mouse or game controller, study
the outputs of the device to identify what each byte indicates, and then create
two MQTT components.The first component is the Node.js client (in mqtt_broacast_mouse) which transmits the bytes when any event is registered by the mouse (a click, scroll, or X/Y movement).
![Boring text-based mouse dashboard](screenshots/node-dashboard.png)
The second component (in mqtt_display_mouse) is a dashboard which correctly interprets the bytes received from the MQTT broker. You will
note I actually have two dashboards: one is a boring text-based Node dashboard
because I was required to use Node.js for my grade; the other is a rudimentary
Python tkinter dashboard which maps where action is happening on an image of a
mouse.![Neat graphical mouse dashboard](screenshots/python-dashboard.png)