multi-tracker/README.md

98 lines
2.5 KiB
Markdown
Raw Normal View History

# Multi-Tracker(LINX)
## Description
## BOM(Bill of Materials)
- [adafruit feather 32U4 RFM95](https://www.adafruit.com/product/3079)
- [ ST7789V2 1.69" LCD Display](https://www.waveshare.com/1.69inch-lcd-module.htm)
- [24 x WS2812 RGB Ring](https://www.amazon.ca/gp/product/B0774JNSCF/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1)
- [BN-220 GPS ](https://www.amazon.com/Navigation-Raspberry-Betaflight-Geekstory-Shipping/dp/B07PRDY6DS?th=1)
- [LSM303AGR Accelerometer + Compass](https://learn.adafruit.com/lsm303-accelerometer-slash-compass-breakout/overview)
## Configuration
The project can be configured to use a variety of hardware or differnt
development boards based on the selected hardware.
You can add or change this inside the `inc/board_config.h` file.
## Building
### Main Project
**Using Arduino IDE**
1. Install the Arduino IDE if not installed.
2. Using the library manager in the IDE install the dependencies.
3. Connect the micro-controller
4. Select your development boards version and connection under the drop-down.
5. Click the Upload button to flash the program.
If you're developing on a Windows machine or another operating system that
doesn't recognize symlinks(symbolic links) then you will need to copy the
`src/main.cpp` to the project's root directory as `multi-tracker.ino`.
### Tests
*Requirements:*
- CppUTest 3.X
- Bash shell
```sh
echo "1" | ./otto.sh
```
The above command runs the automation script `otto.sh` that automates the
process of running tests for the project.
### Documentation
*Requirements:*
- Doxygen
- Terminal/Shell
The project's documentation is generated through documentation comments
that are held within the source files. You can use the command below to
generate the documentation from terminal.
```sh
doxygen ./Doxyfile
```
**Resources:**
- [feather-32u4-radio](https://learn.adafruit.com/adafruit-feather-32u4-radio-with-lora-radio-module/)
## Project Directory Overview
Below you can find a list of the root directory. The project contains the
source files for arduino as well as the needed files for unit testing in
the future.
```sh
tree -L 1
.
├── build
├── CMakeLists.txt
├── compile_commands.json -> ./build/compile_commands.json
├── docs
├── Doxyfile
├── inc
├── LINX_SOFTWARE-COMMENTED.ino
├── mocks
├── otto.sh
├── README.md
├── setup.sh
├── src
└── tests
6 directories, 7 files
```
## Project Dependencies
- RadioHead RFM9x Library
- TinyGPS++