a6ad4c46f7 | ||
---|---|---|
.github | ||
assets | ||
azure-pipelines | ||
config | ||
nanoFrameworkDeployer | ||
.gitignore | ||
LICENSE.md | ||
NuGet.Config | ||
README.md | ||
azure-pipelines.yml | ||
nanoFrameworkDeployer.sln | ||
version.json |
README.md
⚠️ This tool is deprecated and no longer being maintained. The funcionalities are available in nanoff.
Cross-platform .NET nanoFrameworkDeployer Console Application
This repo provides a .NET Console Application that can deploy your .NET nanoFramework projects to a nanoFramework supported device connected via USB. While this is already possible through the nanoFramework extension in Visual Studio for Windows, this repository aims to add support for deploying your projects on non-Windows based devices such as macOS and Linux.
Requirements
Windows
- .NET 4.7.2. You can download from the official Microsoft website.
Linux / macOS
- mono-complete on non Windows platforms, you can find out how to install mono here. The reason that you need mono is because the tool requires .NET 4.7.2. This tool cannot yet be build using .NET 6.0 or .NET Core because some of the dependencies are those used by the Visual Studio extension. The other reason why you need mono is to build a nanoFramework project.
Getting Started
The tool provide various options:
-d, --directory Required. Folder containing the PE files.
-v, --verbose Show verbose messages.
-c, --comport The COM port to use if multiple. By default, the first
valid found is used.
-e, --exception COM Port exception file.
-r, --reboot Reboot the device after flash.
-b, --bin Creates a deployment binary file only. This is not attempting to deploy.
--help Display this help screen.
--version Display version information.
NOTE: When running this tool in a NON Windows environment, you need to use
mono
. If you are using Windows 7 or above, you DO NOT needmono
.
You can then use commands like:
Linux / macOS
mono nanoFrameworkDeployer -d path_to_pe_files
path_to_pe_files
is the path to the build folder where all the .pe
files are located. Note that the tool will automatically upload all the .pe
files available in that folder.
Excluding a COM port
Some virtual COM ports are provided by Bluetooth devices and other software. By default the tool will scan all the possible mounted COM ports to try to find a valid .NET nanoFramework device. That can disconnect temporally your connected headset or any other device using a COM port and may also cause lockups in the deployer tool. In that case, you can create an exclusion file. Just list the COM ports you want to exclude from the search, one port per line. You can then use the -e
option to pass the name of the file.
/dev/tty-bluetooth
COM7
Rebooting the device once flashed
You can automatically ask the tool to reboot your device once flashed, used the -r
options for that.
Selecting a specific COM port
If you have multiple valid .NET nanoFramework devices connected, you can select a specific COM port, just use the -c
option to specify that followed by the COM port you want to use.
Creating a binary deployment file
Using the --bin or -b option will create a binary deployment file. You can then use it with nanoff
to flash your device. Please note that using this option will not flash the device. All other options except the directory one will be ignored.
Feedback and documentation
For documentation, providing feedback, issues and finding out how to contribute please refer to the Home repo.
Join our Discord community here.
Credits
The list of contributors to this project can be found at CONTRIBUTORS.
License
The nanoFramework Class Libraries are licensed under the MIT license.
Code of Conduct
This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behaviour in our community. For more information see the .NET Foundation Code of Conduct.
.NET Foundation
This project is supported by the .NET Foundation.