Prerequisites¶
Most prerequesites are automatically installed by sourcing NICO-setup.bash or
NICO-python3.bash. However some environment variables and permissions need to be set and apt packages to be installed for all the libraries to work.
PyRep¶
PyRep, which can be used to control and interact with CoppeliaSim, is
automatically installed by the setup, but requires COPPELIASIM_ROOT to point
to the folder where CoppeliaSim is located. To do so, edit the path and add
this to your .bashrc:
export COPPELIASIM_ROOT=EDIT/ME/PATH/TO/COPPELIASIM/INSTALL/DIR
Additionally, the COPPELIASIM_ROOT has to be added to LD_LIBRARY_PATH and QT_QPA_PLATFORM_PLUGIN_PATH to run PyRep. Since these can cause conflicts with other programms, a bash script is provided that can be sourced whenever PyRep is needed:
source pyrep_env.bash
Alternatively, add the following to your .bashrc (note that this can cause conflicts with other programms):
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$COPPELIASIM_ROOT
export QT_QPA_PLATFORM_PLUGIN_PATH=$COPPELIASIM_ROOT
See https://github.com/stepjam/PyRep for more information about PyRep.
nicoaudio¶
PyAudio requires portaudio:
sudo apt-get install portaudio19-dev
PyDub requires ffmpeg to process non-wav files:
sudo apt-get install ffmpeg
TextToSpeech:
The nicoaudio.TextToSpeech uses pico2wave as fallback (e.g if there is no internet):
sudo apt-get install pico2wave
It can also use a locally hosted MozillaTTS server (note that MozillaTTS is still in developement)
nicomotion¶
To open a serial connection, you need permissions for the port. This can be solved by adding the user to the dialout group:
sudo adduser $USER dialout
otherwise you need to manually set the permissions each time you open a shell:
sudo chmod 777 /dev/ttyACM*
nicomotion.Motion also tries to adjust port latency using setserial:
sudo apt-get install setserial
nicovision¶
v4l2-ctl:
sudo apt-get install v4l-utils
nicoros¶
For informations on ROS see https://www.ros.org/
nicotouch¶
To open a serial connection, you need permissions for the port. This can be solved by adding the user to the dialout group:
sudo adduser $USER dialout
otherwise you need to manually set the permissions each time you open a shell:
sudo chmod 777 /dev/ttyACM*