sudo apt-install build-essential clang
We use meson as our build tool in this project. It can be installed with pip:
pip3 install --user meson
Meson does out of src builds therefore we will use novaGround/build directory as standard. I think we will likely add more build directories in the future for testing and release builds. But for development use build. To set up the build directory and use clang for compilation, run the following:
cd novaGround
CC=clang CXX=clang++ meson setup build
This will set up the build directory build. To compile, run the following:
meson compile -C build
The -C flag specifies which build directory to use.
Note that boost libraries will also need to be installed.
sudo apt-get install libboost-all-dev libpaho-mqttpp-dev
sudo apt install libgpiod-dev
Install the daqhats library Install WiringPI for the servo drivers
In order to run the program, a mqtt broker must be set up and running on port 1883. Execute
./build/novaGround
If you change the board stackup and have more than one HAT board attached you must update the saved EEPROM images for the library to have the correct board information. You can use the DAQ HAT Manager or the command:
sudo daqhats_read_eeproms