Skip to main content

the_rover

THE rover. Allows controlling Raspberry Pi "rovers" remotely and interactively from any OS's command line.

Installation

There are five methods:

  • Clone the repository and manually install requirements.

  • Clone the repository and run pip(3) install -r requirements.txt to install the requirements to the active Python installation.

  • Clone the repository and run pip(3) install . in the directory you cloned it into to do the same thing and allow running with (python(3) -m )the_rover in your terminal.

  • Don't clone the repository. Just download the .whl file in the latest release and pip install it.

  • Don't clone the repository. Just pip install the_rover to install from PyPi.

Setup

System running the code

  • This code can be run from any OS, but must connect to a (or multiple) Raspberry Pi "rover(s)".

  • The system running the code must have gpiozero, pigpio, keyboard, and fabric installed (Automatically installed using the last four commands for installation).

Raspberry Pi "Rover"

  • The code expects pins 19 and 26 to control your front left motor, 16 and 20 your front right, 27 and 22 your back left, and 23 and 24 you back right (BCM numbering). The pins to which these numbers correspond to on your Pi can be found by running the pinout command in Bash or at pinout.xyz.

  • The code makes use of Remote GPIO to control the rover Pi, so it must have the "Remote GPIO" interface enabled in sudo raspi-config/Raspberry Pi Configuration/config.txt, have the pigpio Python module installed (pip3 install pigpio), and must systemctl enable pigpiod or alternatively use cron (sudo crontab -e) to run pigpiod at startup (@reboot) (Doesn't requires enabling Remote GPIO. Useful for allowing only specific IPs/hostnames using the -n flag. See the Remote GPIO documentation for more details.)

  • The code uses raspistill, so the "Camera" interface must be enabled in sudo raspi-config/Raspberry Pi Configuration/config.txt, and a PiCamera must be connected (Instructions here).

Usage

Running

Once in the directory you cloned the repository to, you can run the code by either using python(3) the_rover/(__main__.py) unless you used the last two methods of installation.

Or, if you installed it using any of the last three installation commands, (python(3) -m )the_rover from anywhere.

Note: Due to its dependency on the keyboard module, the code must be run with sudo on most Linux systems.

Once running

  • Press n to switch to next rover (wraps around).
  • Press p to switch to previous rover (wraps around).
  • Press c to capture a picture with the picamera (and download it to the current working directory).
  • WASD for controlling rover. (Only one control at a time.)
Note: All parenthesized parts of commands are optional/only needed in specific scenarios

Metadata

Release files for the-rover 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for the-rover 1.0.2
File Size Uploaded
the_rover-1.0.2.tar.gz 16.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for the-rover 1.0.2
File Interpreter ABI Platform
the_rover-1.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 34.6 kB

Release files / the_rover-1.0.2.tar.gz

Download URL the_rover-1.0.2.tar.gz
Size 16.2 kB
Tags Source
SHA-256 checksum
How to use checksums
9c807aafd1b31e1eb8bbcf39598f6e95495ef1c10adf34e21826b563b47364e9
BLAKE2b-256 checksum
How to use checksums
e4e97a89368238dfa0672a838b1778b5d367473998c3ccffeddfa6078b9707f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.5

Release files / the_rover-1.0.2-py3-none-any.whl

Download URL the_rover-1.0.2-py3-none-any.whl
Size 18.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8379192c6a668d2cc6f3bd31c485f7d42d0b871af3e93992f236dfc167434736
BLAKE2b-256 checksum
How to use checksums
872ab2eac723166fa32904ea4f7b3514534382be829f4040b1a859473322973a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.5

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page