dotbot-provision
A command-line tool for provisioning DotBot devices and gateways.
It can fetch, config, and flash pre-built firmwares from repos SwarmIT and mari.
Requirements
This tool shells out to external flashing utilities:
nrfjprog(Nordic nRF Command Line Tools) for nRF5340 flashingpyocdfor DAPLink/J-Link OB programmer flashingJLinkExe(SEGGER J-Link) for STM32 bootloader flashing
Make sure these are installed and available on your PATH.
Installation
pip install dotbot-provision
Usage: dotbot-provision [OPTIONS] COMMAND [ARGS]...
A tool for provisioning DotBot devices and gateways.
Options:
--help Show this message and exit.
Commands:
fetch Fetch firmware assets into bin/<fw-version>/.
flash Flash firmware + config using versioned bin layout.
flash-bringup Flash J-Link OB or DAPLink programmer firmware.
flash-hex Flash explicit app/net hex files.
read-config Read config from the device.
Deploying a testbed
First, download firmware assets:
dotbot-provision fetch --fw-version v0.7.0
Then, to flash a DotBot-v3 while specifying a certain Network ID:
dotbot-provision flash --device dotbot-v3 --fw-version v0.7.0 --network-id 0100
You can also pass -a <fw-name> to flash, in addition to bootloader and netcore, a default app firmware:
dotbot-provision flash --device dotbot-v3 --fw-version v0.7.0 --network-id 0100 -a motors
And to flash a Mari Gateway:
dotbot-provision flash --device gateway --fw-version v0.7.0 --network-id 0100
... and it's done!
Deploying a testbed on fresh robots
If your robot just arrived from factory, first you have to run the flash-bringup command.
You can concatenate it with a regular flash command so that all happens in sequence with minimal manual work.
Like this:
dotbot-provision flash-bringup --programmer-firmware jlink -d ../../../programer-files-dotbot && \
dotbot-provision flash -d dotbot-v3 -f local -n 0100 -s 77
... where the -s flag stands for --sn-starting-digits and serves as a pattern to identify the connected programming probe. In this case it solves a problem where the flash command incorrectly selects the external J-Link probe instead of the dotbot's (most DotBots come from factory with a serial number starting by 77).
Metadata
Release files for dotbot-provision 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| dotbot_provision-0.1.5.tar.gz | 10.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dotbot_provision-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.4 kB
Release files / dotbot_provision-0.1.5.tar.gz
| Download URL | dotbot_provision-0.1.5.tar.gz |
|---|---|
| Size | 10.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
effbe055befecbc31723452b6303a76c2fc2d5970714665c7031075f1f0749f1
|
|
BLAKE2b-256 checksum How to use checksums |
681a33f0c966d2ee69d61e3a9e6730592e98b00495dc4385c34669038d96b2a6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.12
|
Release files / dotbot_provision-0.1.5-py3-none-any.whl
| Download URL | dotbot_provision-0.1.5-py3-none-any.whl |
|---|---|
| Size | 13.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
49a331141507ac36cce5f3678f515f4ebb52c078e64b2d71168e756e80c87d48
|
|
BLAKE2b-256 checksum How to use checksums |
6d605b71f438d51a59dce9bbcda2513ea1ce8992ad7525ad5f82e944af015648
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.12
|
Security for dotbot-provision 0.1.5
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.