- C/C++ code based on micro-tools framework: https://github.com/c272/micro-tools
- Documentation: https://microbit.c272.org
- Hardware: 2x Microbit v2 micro controllers: Link to Microbit documentation
- Hand controller: Defining control inputs and visualize on display
- AirBit Drone: Detect and fly based on input
PARTY: Pitch, arm, roll, throttle, yaw
There are some dependancies needed:
- GCC
- Python 3
- CMake
- GCC ARM EABI
- GCC ARM binutils
- GCC ARM newlib
- GCC ARM libstdc++
This can be done via brew:
brew install cmake python3
brew install --cask gcc-arm-embedded./microinstall.sh
// ADD micro-tools to PATH:
echo 'source /Users/geirolatvinnereim/AirBit/aliases.sh' >> ~/.bashrc
source ~/.bashrc
. aliases.sh
./microbuild.sh BUILD_DIRECTORY=./srcor you can edit aliases.sh, such that you can use the microbuild command directly:
alias microbuild="/Users/geirolatvinnereim/AirBit/microbuild.sh BUILD_DIRECTORY=./src"-
microinstall: fetching the lastest microbit v2 sdk into repository and building the source
-
microbuild: Building the repository you call the command from into the sdk. Copying source files into sdk
-
microflash: Making mnt folder with flashed output. NB! microbit must be connected.
-
setup:
Feed in filepath to microbit-v2-sdk: /Users/geirolatvinnereim/AirBit/microbit-v2-sdk
If nrf_sdh_soc_init() cannot be found. You have called build from a wrong folder. Chech microbit-v2-sdk/source and assure that only the src/.cpp files are present.
In order allow debugging, the project needs to be built by navigating into the microbit-v2-sdk and access debugger inside Visual Studio Code.
python3 build.pyWe want to utilize a dynamic analysis tool, which can linter codebase, not a static one
Using clang-format as dynamic cpp-linter. install and usage: This command line tool can only linter one file at a time, so we need to apply recursiveness
brew install clang-format
find /Users/geirolatvinnereim/AirBit/src -iname '*.h' -o -iname '*.cpp' | xargs clang-format -i