Files
dog-trainer/README.md
2023-12-02 03:15:11 +01:00

84 lines
2.5 KiB
Markdown

Dog Trainer
===========
A device that allows dogs to speak. Click on the picture to see the video with the `dog-trainer` in action
![dog-trainer-photo](assets/dog-trainer-photo.png "https://peertube.virtonline.eu/w/2MXWQPC1zd2pgms5HQE1Ma")
Hardware
--------
Connect buttons to the Rarspberry pi GPIO as shown in the schema to debounce noisy buttons
![dog-trainer-schema](assets/dog-trainer-schema.png)
Operating system
----------------
Install `Raspberry Pi Imager` into your notebook. Launch it and choose `Raspberry Pi OS Lite` to write into the microSD card
Power on the Raspberry pi and finish the installation process. Log into its console using either:
- ethernet/wifi from your notebook: `ssh pi@raspberrypi`
- connected keyboard and monitor
- serial port
How to install
--------------
Once you are logged into the `Raspberry pi` console clone the `dog-trainer` source code into your home directory
> `git clone https://gitea.virtonline.eu/2HoursProject/dog-trainer.git --depth 1`
Go into the newly created directory
> `cd ~/dog-trainer`
Dependencies
------------
The recordings must be edited a little bit so some audio processing tool is needed. Install `ffmpeg` which will do the job
> `apt install -y ffmpeg`
Configuration
-------------
If your sound device is other then USB type then modify and adapt the line `hw:CARD=USB,DEV=0` in ALSA config
> `nano .asoundrc`
Install the ALSA config file
> `mv .asoundrc ~/`
Run it!
-------
Just run
> `python3 dog-trainer.py`
Pres `Ctrl+c` to exit
Make it a service to automaticaly run in the backgroud
------------------------------------------------------
If your `$HOME` directory is other then `/home/pi` then modify the systemd service file
> `sed -i "s#/home/pi#$HOME#g" dog-trainer.service`
If your username and group is other then `pi` and `pi` then also run
> `sed -i "s#User=pi#User=$USER#" dog-trainer.service`
`sed -i "s#Group=pi#Group=$(id -gn)#" dog-trainer.service`
Install the systemd service file
> `sudo mv dog-trainer.service /etc/systemd/system/`
Reload systemd manager configuration
> `systemctl daemon-reload`
Enable the `dog-trainer` service at boot time and also run it
> `systemctl enable --now dog-trainer`
If it does not work check logs
> `journalctl -f -u dog-trainer`
Set volume for playback and recording
-------------------------------------
Launch soundcard mixer
> `alsamixer`
Press F6 to select a soundcard. Find your USB sound device in the list e.g. `Jabra Speak 410 USB`. Press F4 and use up/down arrow keys to set recording volume and repeat also for the playback (F3). Press ESC fo exit.