Prerequisites
Follow the the guide at WIP - Flutter Setup for flutter setup. Note that the android part is not needed for this project. You only need the Windows (or MacOS if that is your OS) desktop setup for IMACS2.
Below is a TLDR; of the steps required
(Optional for most tasks) Set up Mission Planner
Note: We currently do not have a way to run Mission Planner on MacOS or Linux.
Open the Mission Planner application and follow the steps inhttps://uwarg-docs.atlassian.net/wiki/spaces/CV/pages/2240643073/Ardupilot+Simulation+with+Mission+Planner#MAVLink-Forwarding to forward MAVLink messages to port 14550.
...
Follow the guide at https://docs.flutter.dev/get-started/install/windows to install the flutter software development kit
Make sure you have “Desktop development with C++” workload installed, this can be downloaded from visual studio build tools
Run
flutter --version
to check if installation was successfulEnable windows developer mode, you can access this setting by typing
start ms-settings:developers
into command prompt
IMACS Setup
Visit the UWARG github and locate the IMACS 2.0 repo: https://github.com/UWARG/IMACS-2
Clone the IMACS 2.0 repository to local:
Code Block |
---|
git clone [repository link]git@github.com:UWARG/IMACS-2.git |
Navigate to the flutter_app directory
In the repository flutter_app directory directory, run
flutter build windows
to build the windows runnerStart debugging using the ‘runcreate --platforms=windows,macos,linux .
You may exclude operating systems you don’t intend to build for
E.g. If you only want to build for Windows, run
flutter create --platforms=windows .
To start the app either
Run
flutter run
in the flutter_app directoryClick the 'run and debug’ button or press the F5 key in VSCode. Make sure you have selected
the correct device as shown by the status bar.
The IMACS GUI should pop up (this step might take a while for the first time)
It will error out if your mission planner is not setup to send data (due to current implementation)
...
.
...
Next Steps
Join the weekly meetings to get assigned a task
Try building the app using
flutter build [target platform]
(Optional) complete this codelab to familiarize yourself with Flutter: https://codelabs.developers.google.com/codelabs/flutter-codelab-first#0