THE rover. Allows controlling Raspberry Pi "rovers" remotely and interactively from any OS's command line.
Project description
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.txtto 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_roverin your terminal. -
Don't clone the repository. Just download the .whl file in the latest release and
pip installit. -
Don't clone the repository. Just
pip install the_roverto 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, andfabricinstalled (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
pinoutcommand 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 thepigpioPython module installed (pip3 install pigpio), and mustsystemctl enable pigpiodor alternatively use cron (sudo crontab -e) to runpigpiodat startup (@reboot) (Doesn't requires enabling Remote GPIO. Useful for allowing only specific IPs/hostnames using the-nflag. See the Remote GPIO documentation for more details.) -
The code uses
raspistill, so the "Camera" interface must be enabled insudo 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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file the_rover-1.0.2.tar.gz.
File metadata
- Download URL: the_rover-1.0.2.tar.gz
- Upload date:
- Size: 16.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c807aafd1b31e1eb8bbcf39598f6e95495ef1c10adf34e21826b563b47364e9
|
|
| MD5 |
14c799d7d6e08d79bd2057da620d4bbd
|
|
| BLAKE2b-256 |
e4e97a89368238dfa0672a838b1778b5d367473998c3ccffeddfa6078b9707f8
|
File details
Details for the file the_rover-1.0.2-py3-none-any.whl.
File metadata
- Download URL: the_rover-1.0.2-py3-none-any.whl
- Upload date:
- Size: 18.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8379192c6a668d2cc6f3bd31c485f7d42d0b871af3e93992f236dfc167434736
|
|
| MD5 |
95d2b4d7028bf2f4a8280fa6f2eeaf70
|
|
| BLAKE2b-256 |
872ab2eac723166fa32904ea4f7b3514534382be829f4040b1a859473322973a
|