milobella / device

Client code in device (raspberry pi3B+ for now)
0 stars 0 forks source link
frontend milobella raspberry-pi raspberry-pi-3

Milobella device Client

Run milobella in a device, using mic and speakers to communicate.

Requirements

Check requirements before install ### #1 : Google cloud authentication configuration Authentication process is detailed in this documentation https://cloud.google.com/speech-to-text/docs/quickstart-protocol. It is using basically a ``GOOGLE_APPLICATION_CREDENTIALS`` env variable pointing to a JSON private key file. The JSON private key is generated when you create a Service Account. Make sure you activated both of the APIs in your Google Cloud Project, and the same JSON file will be used. ### #2 : Milobella authentication configuration The env variable ``MILOBELLA_AUTHORIZATION_TOKEN`` should contain the JWToken generated every time you authenticate. A script ``authenticate.sh`` is here to show you how. (You need [jq](https://stedolan.github.io/jq/download/) if you want to use it) ``` export MILOBELLA_USERNAME=myuser export MILOBELLA_PASSWORD=mypass source authenticate.sh ``` ### #3 : Raspberry audio configuration If you are using a Raspberry PI B+ with RASPIAUDIO Ultra +, check the [RASPIAUDIO ultra+ configuation](docs/raspiaudio-ultra+-configuration.md) documentation. ### #4 : Make sure you have all dependencies installed On linux : ```bash sudo apt-get install libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0 sudo apt-get install ffmpeg sudo apt-get install libpulse-dev sudo apt-get install python3-pyaudio ```

Install

pip install -r requirements.txt
pip install -U --upgrade-strategy=eager -e .

Run

$ milobella --help
usage: milobella [-h] [--verbose] [--url URL] [--keyword KEYWORD]
                 [--pocket-sphinx-threshold POCKET_SPHINX_THRESHOLD] [--gpio-led GPIO_LED]
                 [--tracing-config TRACING_CONFIG]

optional arguments:
  -h, --help            show this help message and exit
  --verbose             increase output verbosity
  --url URL             Milobella URL
  --keyword KEYWORD     Wake up word
  --pocket-sphinx-threshold POCKET_SPHINX_THRESHOLD
                        Pocket Sphinx threshold
  --gpio-led GPIO_LED   GPIO Led ID
  --tracing-config TRACING_CONFIG
                        Tracing YAML configuration file

Documentation