Skip to main content

A command-line tool for provisioning DotBot devices and gateways.

Project description

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 flashing
  • pyocd for DAPLink/J-Link OB programmer flashing
  • JLinkExe (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).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dotbot_provision-0.1.1.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dotbot_provision-0.1.1-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file dotbot_provision-0.1.1.tar.gz.

File metadata

  • Download URL: dotbot_provision-0.1.1.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.12

File hashes

Hashes for dotbot_provision-0.1.1.tar.gz
Algorithm Hash digest
SHA256 7339c5788620acb86505ad7830468789d839b510235344e62ff4862a38748903
MD5 6b0a21ffbefa350c2ed6742a02a1144c
BLAKE2b-256 4d63bab0ab87ae45ea97a816560f9b4c7b3fbf5f8063f1daaac781751c62c855

See more details on using hashes here.

File details

Details for the file dotbot_provision-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for dotbot_provision-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 888ff80571049cd3c3e850a1165e3e11cebc5c9c3ab8b365e74c0bd7ff9d16c5
MD5 fd7c3c406f86440b9d6d9aa0d347e076
BLAKE2b-256 f417defe3bd95cb83def5e2f933b3b6e337d6eacfbc4f332637ba7d14e3af767

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page