https://github.com/risto97/vrpark_remap
Remapping app for cheap Aliexpress joystick modules to be used with Kodi or other player
https://github.com/risto97/vrpark_remap
edev input joystick keyboard kodi linux mouse remote-control udev
Last synced: 2 months ago
JSON representation
Remapping app for cheap Aliexpress joystick modules to be used with Kodi or other player
- Host: GitHub
- URL: https://github.com/risto97/vrpark_remap
- Owner: Risto97
- License: apache-2.0
- Created: 2023-02-13T21:11:52.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-02-13T22:35:14.000Z (over 3 years ago)
- Last Synced: 2025-02-13T22:26:41.476Z (over 1 year ago)
- Topics: edev, input, joystick, keyboard, kodi, linux, mouse, remote-control, udev
- Language: Python
- Homepage:
- Size: 583 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![MIT License][license-shield]][license-url]
vrpark_remap
Application that remaps cheap Aliexpress remote mouse to keyboard button presses.
Report Bug
·
Request Feature
## About The Project
Intend of the project was to use one of the cheap Aliexpress bluetooth joysticks to control Kodi.
Originally the joystick of the remote controller is acting as a mouse.
### Original Layout

### Remapped layout
The remapped controller has 2 modes, Mouse mode and Keyboard mode.
It is possible to switch between modes by clicking D button, desktop notification is sent

#### Mouse mode
In this mode only VolumeUp is changed and is left for additional functionality.

#### Keyboard mode
This mode is meant to be used for Kodi player.
Joystick is remmaped so that it gives left, right up, down key presses when moved.
Buttons B, A are Backspace and Enter.

## Getting Started
### Prerequisites
* Python-evdev is used to intercept the inputs and inject keypresses
* Uinput kernel driver is used to inject inputs
* Py-notifier for notifications
* Udev for detecting connection of controller and running the mapper app
### Installation
In order to install vrpark_remap you need to follow these steps:
1. Clone the repo
```sh
git clone https://github.com/Risto97/vrpark_remap.git
cd vrpark_remap
```
2. Install python dependencies
```sh
pip install -r requirements.txt
```
3. Change 83-vr_park.rules path to script
```sh
KERNEL=="event[0-9]*", SUBSYSTEM=="input", SUBSYSTEMS=="input", ATTRS{name}=="VR-PARK", MODE="0660", RUN+="/run_remap.sh '%E{DEVNAME}'"
```
4. Change variable USER in run_remap.sh
5. Copy 83-vr_park.rules and 99-uinput.rules to /etc/udev/rules.d
```sh
cp 83-vr_park.rules 99-uinput.rules /etc/udev/rules.d
```
6. Reload udev rules, if it doesnt help restart the PC
```sh
udevadm control --reload
udevadm trigger
```
Turning on the controller it should work now.
## Contact
Your Name - risto.pejasinovic@gmail.com - risto.pejasinovic@cern.ch
[forks-shield]: https://img.shields.io/github/forks/Risto97/vrpark_remap.svg?style=for-the-badge
[forks-url]: https://github.com/Risto97/vrpark_remap/network/members
[stars-shield]: https://img.shields.io/github/stars/Risto97/vrpark_remap.svg?style=for-the-badge
[stars-url]: https://github.com/Risto97/vrpark_remap/stargazers
[issues-shield]: https://img.shields.io/github/issues/Risto97/vrpark_remap.svg?style=for-the-badge
[issues-url]: https://github.com/Risto97/vrpark_remap/issues
[license-shield]: https://img.shields.io/github/license/Risto97/vrpark_remap.svg?style=for-the-badge
[license-url]: https://github.com/Risto97/vrpark_remap/blob/master/LICENSE