-
Notifications
You must be signed in to change notification settings - Fork 1
Install Thymio related software
The software package aseba is a bundle including all necessary software to control a Thymio2 robot from a chosen controller system. Unfortunately at the time of writing this page aseba's official build guide to build their latest official version on different OS fails many times, e.g. on Ubuntu 20 or on Raspbian 10 as well. Therefore we need to use the latest compiled and distributed version of Aseba on the Raspberries. To install Aseba 1.5.5 on a Pi4 with Raspbian 10/Buster follow these steps:
- As both building aseba locally and using a package manager to get the latest versions we need to install the 3 main
deb
packages manually. At the time of writing this page this is v1.5.5 and you can find the source links on this page
The following commands will make a directory and download the 3 main packages in this directory so that we can install the deb files with dpkg
.
mkdir aseba_install
cd aseba_install
# getting dashel
wget http://wiki.thymio.org/local--files/en:linuxinstall/libdashel_1.3.0_armhf.deb
# getting enki
wget http://wiki.thymio.org/local--files/en:linuxinstall/libenki_2.0~git.20161121_armhf.deb
# getting aseba
wget http://wiki.thymio.org/local--files/en:linuxinstall/aseba_1.5.5_armhf.deb
# installing dashel
sudo dpkg -i libdashel_1.3.0_armhf.deb
# installing enki
sudo dpkg -i libenki_2.0~git.20161121_armhf.deb
# installing aseba
sudo dpkg -i aseba_1.5.5_armhf.deb
# deleting deb files and temp folder
cd ..
sudo rm -rf aseba_install
-
After installing them some dependencies will be broken and you will have to fix them with
apt
.apt
will show you the command for that. (apt --fix-broken install
) -
If some dependencies are still missing use this line to install all noted dependencies of aseba according to their github repo:
sudo apt-get install libqt4-dev libqtwebkit-dev qt4-dev-tools libqwt5-qt4-dev libudev-dev libxml2-dev libsdl2-dev libavahi-compat-libdnssd-dev cmake g++ git make
- Install libqt4-sql-sqlite as
sudo apt install libqt4-sql-sqlite
-
Note, that if you use an "Nvidia" graphics card with an official nvidia driver, it will break all X forwarding of aseba related user interface windows (using LibGl) to you PC. This is something you are not able to fix without digging very deep into your graphics settings and drivers. I highly recommend not to do this because you can mess up your PC configuration big time. Instead, create a virtual machine with Oracle VM with e.g. ubuntu18 base image. This fresh install will use "mesa" graphics driver and it allows you to use
ssh -Y pi@<pi address>
forwarding any aseba related graphics from the Pi to your virtual machine. Don't forget to set the defaultNAT
network settings of your VM toBridged Network
so that you are able to reach the network of the host machine as well as other computers can reach your VM. Only use bridged network when you trust the network you use! -
Test your installation by running
asebachallenge
. Create a new simulated Thymio2 robot on port 33333, then run asebastudio and connect to this robot viatcp:localhost;33333
. If a coding window with parameters on the left side pops up the connection has been established and you can be sure that your installation succeded.
Our final goal is to use the previously installed aseba
package from python3. To do so, we need to install a few dependencies to use pycairo
and PyGObject
both necessary to interface python3 with asebamedulla
. Read more about PyGObject here
- Install the dependencies of
pycairo
andPyGObject
. Without this step pip will fail into install the mentioned 2 packages fromsetup.py
sudo apt install libgirepository1.0-dev gcc libcairo2-dev pkg-config python3-dev gir1.2-gtk-3.0