HUlks Level Abstraction (HULA)
HULA is an abstraction layer that connects to LoLA, the by Aldebaran Robotics provided Low Level Abstraction of the NAOv6 and serves an interface for other applications. Unlike LOLA, HULA also supports multiple clients.
On the Nao
On the NAO, systemd manages the hula.service
.
It can be stopped / started using standard systemd commands, such as systemctl start hula
.
Custom Build
To build HULA for the NAO,
- Source the SDK by calling
. naosdk/<version>/environment-setup-corei7-64-aldebaran-linux
from the default HULKs folder. Be sure to use a POSIX compliant shell such as Bash (not Fish). - Use
cargo build --manifest-path tools/hula/Cargo.toml
to compile the HULA binary. - Copy the compiled binary from the target folder in the hula folder to the NAO using e.g.
scp
. - Connect to the NAO using
pepsi shell
- Stop the probably already running default hula by calling
systemctl stop hula
- Execute the copied hula binary
- Enjoy 🚀
Installing the SDK
If you have never uploaded code to the NAO, first download the SDK using pepsi sdk install