This project provides a graphical interface to control the ESI Maya22 hardware via terminal commands. The interface allows you to adjust input and output volumes, enable/disable monitoring and headphones, and synchronize output volumes. Configuration is automatically saved to a JSON file.
The maya22-control
executable used in this project comes from the rabits/esi-maya22-linux repository. However, I have optionally included a modified maya22-control
file that adds an additional option to disable headphones, which the original version does not support.
It is recommended to use the modified executable included in this repository to take advantage of this additional functionality. However, if you prefer to use the original executable, you can download it from the mentioned repository, although you will lose the option to disable headphones.
- Adjust input volumes (left and right).
- Adjust output volumes (left and right).
- Automatic synchronization of output volumes.
- Enable and disable monitoring.
- Enable and disable headphones.
- Select input channel.
- Automatic configuration saving in a JSON file.
- Python 3.x
- Tkinter (generally included with Python)
maya22-control
executable in the same directory as this script
To install the required dependencies using apt-get
, follow these steps:
-
Update your package list:
sudo apt-get update
-
Install the necessary packages:
sudo apt-get install python3 python3-tk
This will install Python 3, the Tkinter GUI toolkit, and HID support.
To install the required dependencies using pacman
, follow these steps:
-
Update your system:
sudo pacman -Syu
-
Install the necessary packages:
sudo pacman -S python python-tk
These commands will install Python, Tkinter, and HID support on Arch Linux.
-
Clone this repository:
git clone https://github.com/piposeimandi/esi-maya22-linux-gui
-
Navigate to the project directory:
cd tu_repositorio
-
Ensure the
maya22-control
executable is accessible:- Use the modified executable included in this repository.
- If you choose to use the original executable, download it from the rabits/esi-maya22-linux repository.
- Place the executable in the same directory as the Python script.
- Ensure it is executable:
chmod +x maya22-control
-
Run the Python script:
python maya22-gui.py
-
The graphical interface will open, and you will be able to adjust volumes, enable/disable monitoring and headphones, and select the input channel.
Configuration is saved in a JSON file named config.json
in the same directory as the script. Settings are automatically loaded from this file when the application starts.
The config.json
file contains the following parameters:
mute_output
: mute all output (0 or 1).monitoring_enabled
: Monitoring status (0 or 1).input_vol_left
: Input volume left (0-127).input_vol_right
: Input volume right (0-127).output_vol_left
: Output volume left (0-145).output_vol_right
: Output volume right (0-145).input_channel
: Selected input channel (mic
,hiz
,line
,mic_hiz
,mute
).
- If you encounter any issues running the commands, make sure that
maya22-control
is correctly located and executable.
Contributions are welcome. If you find any bugs or have improvements to propose, please open an issue or a pull request.
This project is licensed under the MIT License. See the LICENSE file for more details.
For any questions or comments, please contact [email protected].