Skip to main content

Package to easily control your DotBots and SailBots.

Project description

DotBots

This package contains a complete environment for controlling and visualizing DotBots.

The DotBots hardware design can be found here (PCB) and here (chassis). The firmware running on the DotBots can be found here.

This package can also be used to control devices running the SailBot firmware application.

DotBots controller overview

Installation

Run pip install dotbots

Setup

Flash the required firmwares on the DotBots and gateway board (use an nRF52840DK board as gateway), as explained in the DotBots firmware repository.

Usage

dotbots-controller --help
Usage: dotbots-controller [OPTIONS]

  BotController, universal SailBot and DotBot controller.

Options:
  -t, --type [joystick|keyboard]  Type of your controller. Defaults to
                                  'keyboard'
  -p, --port TEXT                 Linux users: path to port in '/dev' folder ;
                                  Windows users: COM port. Defaults to
                                  '/dev/ttyACM0'
  -b, --baudrate INTEGER          Serial baudrate. Defaults to 1000000
  -d, --dotbot-address TEXT       Address in hex of the DotBot to control.
                                  Defaults to FFFFFFFFFFFFFFFF
  -g, --gw-address TEXT           Gateway address in hex. Defaults to
                                  0000000000000000
  -s, --swarm-id TEXT             Swarm ID in hex. Defaults to 0000
  -w, --webbrowser                Open a web browser automatically
  -c, --calibrate                 Run controller in calibration mode
                                  (lighthouse mode)
  -D, --calibration-dir PATH      Directory containing calibration files
  -v, --verbose                   Run in verbose mode (all payloads received
                                  are printed in terminal)
  --help                          Show this message and exit.

By default, the controller expects the serial port to be /dev/ttyACM0, as on Linux, use the --port option to specify another one if it's different. For example, on Windows, you'll need to check which COM port is connected to the gateway and add --port COM3 if it's COM3.

Using the --webbrowser option, a tab will automatically open at http://localhost:8000/dotbots. The page maintains a list of available DotBots, allows to set which one is active and controllable and provide a virtual joystick to control it or change the color of the on-board RGB LED.

Lighthouse

The DotBots firmware comes with a cheap indoor positionning system based on Valve Lighthouse 2.

To get the positionning to work and the DotBots to be tracked in real-time the system must be first calibrated by clicking the "Start calibration" or "Update calibration" button below the grid map and then by following the instructions there.

Tests

To run the tests, install tox and use it:

tox

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

dotbots-0.7.0.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

dotbots-0.7.0-py3-none-any.whl (1.3 MB view details)

Uploaded Python 3

File details

Details for the file dotbots-0.7.0.tar.gz.

File metadata

  • Download URL: dotbots-0.7.0.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for dotbots-0.7.0.tar.gz
Algorithm Hash digest
SHA256 bb64cfeec057fa07e68ee1a0de7d178eb56a9698080a11a1c71fd7b0b64a902a
MD5 8caf8a6f2f712380a3be8b14fc5041b7
BLAKE2b-256 883062f1fa785b9594459c236bd2f429b853b4e256fe771d91d03db7434a314b

See more details on using hashes here.

File details

Details for the file dotbots-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: dotbots-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for dotbots-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd9f0d2a2c32bf1570a764f4fb0507fbdb3cf7a1111fd795e451ac34a785632b
MD5 b7d92870dd46d8f89b21485f5e433f87
BLAKE2b-256 64635069968ac4fa4f49628fa3d90168578c7c44896d17b236dc8c03cf4e17ed

See more details on using hashes here.

Supported by

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