Update: This blog post provides more information on how Solo Toolkit works
A desktop-based collection of utilities for the 3DR Solo drone.
The 3DR Solo is a great drone for development. However, changing firmware versions, pulling logs, and performing other tasks on Solo typically involves using SSH and tedious command line tools. Solo Toolkit exposes much of this functionality using Electron, a cross-plaform desktop application framework. This enables both developers and casual users to modify and maintain their Solo.
A note about cross-plaform capability
Electron enables cross-platform development, and Solo Toolkit is technically capable of running on multiple platforms. However, all development thus far has been done on macOS and more development is needed to run Solo Toolkit on Linux and Windows.
One of the main barriers to running on Windows it the heavy reliance on SSH. SSH2, the node library used by Solo Toolkit, can leverage Cygwin or Putty to make this work, but this hasn't been implemented or tested. Linux and Windows support are on the roadmap (see below).
macOS
brew install node
Electron
npm install electron-prebuilt -g
Gulp
npm install gulp -g
App dependencies
npm install
Run in a dev environment
npm run dev
Solo Toolkit is very much a work in progress. Below are a list of upcoming features to be added. The list is mostly a collection of ideas and is not necessarily prioritized.
Solo Toolkit leverages [electron-packager]() to create runnable .app packages. To package the app for distribution, run npm run clean
and npm run package
. If you'd like to include Chrome dev tools in the resulting package for debugging, run npm run package-dev
.
The package version is derived from the version specified in package.json
.