A simple audio menu handler for Linux using Myo. Create a menu in JSON, use it for anything. No graphical feedback, no screen needed ! Released under MIT license
Developed under Fedora Linux 21. Tested on personal laptop and Raspberry Pi B+
This is a program that provides a simple way to interact with a Linux computer using Thalmic lab's Myo armband. The goal is to provide a simple way to describe a menu (using JSON file) and be able to navigate through it with audio feedback from the computer. For now it can handle two type of actions :
- Running an arbitrary command
- Running a command and reading the output back to the user
The following software are required to make the app run:
- avplay (or ffmpeg)
- pySerial
- enum34
- python 2.7+
- pyAudio
- pydub
Myo armband firmwmare >= 1.X
git clone https://github.com/monsieurh/myo-menu.git
cd myo-menu
git submodule init
sudo pip install -r requirements.txt
Additional packages may be needed depending on your Linux installation (ffmpeg/avplay). Feel free to contact me to add them in this readme.
Open and edit the file 'default_menu.json' to fit your needs
Simply run python main.py
or ./main.py
to start the program.
Perform the synchronisation gesture, and navigate the menu.
- WAVE-IN : Previous item
- WAVE-OUT : Next item
- FINGERSPREAD : Parent node
- FIST : Enter submenu/execute action
The Myo seems to loose synchronisation when the output of an action is read back to the user [FIXED]
- Controls configuration through JSON file
- Locale configuration through JSON file
- Action callback to launch an arbitrary python command in the main loop
- Handle parameters in JSON menu file
- Visualization of some kind ?
This program uses GoogleTTS by Hung Truong released under the MIT license to generate spoken sounds. (source)
It also relies on myo-raw for Linux-Myo communication in python (MIT license). It had to be tweaked to match most recent's firmware though