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.4.tar.gz (10.2 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.4-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: dotbot_provision-0.1.4.tar.gz
  • Upload date:
  • Size: 10.2 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.4.tar.gz
Algorithm Hash digest
SHA256 19fac3bc904254a93871a42562513d5cf184d2eccb978aa92864f9aaa2dedbbc
MD5 1fdf9489ea537cdf0721a8bf770f65ed
BLAKE2b-256 dd7ca76c3096a691126ec439297ae72d156f4b119239c50607bbef85b661d580

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dotbot_provision-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 f45f39423fb3e4042028f13750bb0681b25b276652457c406a91194e2b15b22a
MD5 b5fe1c32f3a674cfb45e97cf92fc3459
BLAKE2b-256 5364a58292c4a48cdbd97a1d51ac6d22e633dc8098a05986b48c9a79622f2d68

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