Glossary¶
A reference for terminal commands, Linux concepts, and OWL-specific terms. If you’re new to the command line or Raspberry Pi, start here.
Terminal Basics¶
The terminal (also called the command line) is a text-based interface for controlling your Raspberry Pi. Instead of clicking icons, you type commands and press Enter.
Opening a terminal:
If you have a screen and keyboard connected, press
CTRL + ALT + Tor click the>_icon in the taskbar.If connecting remotely, use SSH from another computer.
What the prompt looks like:
owl@raspberrypi:~ $
This tells you:
owl— your usernameraspberrypi— the hostname of the Pi~— your current directory (home folder)$— ready for a command
When you see (owl) at the start:
(owl) owl@raspberrypi:~ $
The (owl) prefix means the OWL virtual environment is active. Many installation commands require this — if it’s missing, run workon owl to activate it.
Essential Commands¶
cat¶Display file contents. Prints the entire contents of a file to the terminal.
cat config.ini
cd¶Change directory. Moves you into a different folder.
cd ~/owl # go to the owl folder cd .. # go up one level cd ~ # go to your home folder
chmod¶Change file permissions. Controls who can read, write, or execute a file.
chmod a+x owl.py # make owl.py executable by everyone
ls¶List files. Shows the files and folders in your current directory.
ls # list contents ls -la # show hidden files and details
nano¶Text editor. A simple terminal-based editor for modifying files. Save with
Ctrl + X, thenY, thenEnter.nano config.ini sudo nano /etc/hosts
pip/pip3¶Python package installer. Installs Python libraries. Inside a virtual environment,
pipandpip3are interchangeable.pip install opencv-contrib-python pip install -r requirements.txt
pwd¶Print working directory. Shows the full path of where you are right now.
reboot¶Restart the Raspberry Pi. Usually run with
sudo.sudo reboot
source¶Reload shell configuration. Re-reads a configuration file (like
.bashrc) without restarting the terminal.source ~/.bashrc
sudo¶Superuser do. Runs a command with administrator privileges. Required for system-level changes like installing software or managing services.
sudo apt update sudo systemctl restart owl.service
Git Commands¶
Git is a version control system. For the OWL, you mainly use it to download and update the software.
Linux & Raspberry Pi Concepts¶
.bashrc¶Shell configuration file. A script that runs every time you open a terminal. Used to set up environment variables and the virtual environment.
- crontab¶
Scheduled tasks. A legacy system for running commands on events like startup. (OWL now uses systemd services for automatic startup — see the install guide.)
sudo crontab -e # edit the root cron schedule
- File paths¶
Locations on disk are written as paths separated by
/:~/owl/— the OWL folder in your home directory/etc/— system configuration files/home/owl/— your full home directory path
- Home directory¶
Your personal folder, represented by
~. For theowluser, this is/home/owl/. When you open a terminal, you start here.- journalctl¶
View service logs. Shows output and error messages from systemd services.
journalctl -u owl.service -f # follow OWL logs in real time
- Permissions¶
Linux controls who can read, write, or run files. Use
sudoto run commands as administrator, andchmodto change file permissions.- systemd¶
The service manager on modern Linux. It handles starting, stopping, and monitoring background programs (called services).
sudo systemctl start owl.service # start the OWL sudo systemctl stop owl.service # stop the OWL sudo systemctl status owl.service # check if it's running sudo systemctl enable owl.service # start automatically on boot
- Virtual environment¶
An isolated copy of Python packages, separate from the system Python. Prevents conflicts between different projects. The OWL uses a virtual environment called
owl.Activate:
workon owlDeactivate:
deactivateWhen active, you see
(owl)at the start of the prompt.
Networking Concepts¶
- Firewall¶
Software that controls which network connections are allowed. The OWL uses UFW (Uncomplicated Firewall) to open only the ports it needs.
- Gateway¶
The device (usually a router) that connects your local network to the internet or other networks.
- IP address¶
A number that identifies a device on a network (e.g.
192.168.4.1). Each device on the same network has a unique IP address.- mDNS¶
Multicast DNS. Lets you use friendly names like
owl.localinstead of IP addresses. Powered by the Avahi service on the Pi.- Ports¶
Numbered channels for network traffic. Key ports used by the OWL:
1883 — MQTT messaging
443 — HTTPS (dashboard)
80 — HTTP (redirects to HTTPS)
- SSH¶
Secure Shell. A way to control your Raspberry Pi remotely from another computer’s terminal. Requires the Pi’s IP address and your password.
ssh owl@192.168.4.1 ssh owl@owl.local
- SSID¶
The name of a WiFi network. The OWL’s default hotspot name is
OWL.- SSL certificate¶
A security certificate that encrypts web traffic (HTTPS). The OWL dashboard uses a self-signed certificate, so your browser may show a warning — this is normal and safe to proceed through.
- Static IP¶
An IP address that doesn’t change. The OWL sets a static IP so you can always find it at the same address.
- Subnet¶
A range of IP addresses that form a local network. Devices on the same subnet can talk to each other directly.
- WiFi hotspot¶
A wireless access point created by the OWL itself. In Standalone mode, the OWL broadcasts its own WiFi network you can connect to from a phone or laptop.
OWL-Specific Terms¶
- Avahi¶
A service that provides mDNS, allowing you to reach the OWL at
owl.localinstead of an IP address.- ByteTrack¶
A multi-object tracking algorithm that assigns persistent IDs to detected weeds across video frames. Used in Green-on-Green mode for class smoothing and crop mask stabilisation.
CONTROLLER.ini¶Infrastructure configuration for MQTT, network mode, GPS, and web dashboard. Created by the setup script. Located at
~/owl/config/CONTROLLER.ini.- Dashboard¶
The web-based control panel for monitoring and adjusting your OWL. Access it from a browser on your phone, tablet, or computer.
- ExG¶
Excess Green Index. A vegetation detection algorithm that emphasises green pixels. The default detection method for the OWL.
- ExHSV¶
Excess Green minus Excess Red, in HSV colour space. An alternative detection algorithm.
GENERAL_CONFIG.ini¶The main OWL configuration file. Contains detection parameters, camera settings, sensitivity presets, tracking, and GPIO relay mappings. Located at
~/owl/config/GENERAL_CONFIG.ini.- GPIO¶
General Purpose Input/Output. Physical pins on the Raspberry Pi used to control external hardware like relays and solenoids.
- Gunicorn¶
Green Unicorn. A Python web server that runs the Flask dashboard application behind Nginx.
- HSV¶
Hue, Saturation, Value. A colour model used by some detection algorithms. Allows filtering by colour ranges rather than simple green intensity.
- Mosquitto¶
The MQTT broker software installed on the OWL. Handles message routing between OWL units and the dashboard.
- MQTT¶
Message Queuing Telemetry Transport. A lightweight messaging protocol used for communication between OWL units and the dashboard. Messages are published to topics and received by subscribers.
- MQTT broker¶
The central message server. In Standalone mode, the broker runs on the OWL itself (Mosquitto). In Networked mode, it runs on a central controller.
- MQTT topics¶
Named channels for messages. For example, the OWL publishes detection data to specific topics that the dashboard subscribes to.
- NCNN¶
A neural network inference framework optimised for ARM CPUs. The recommended model format for running YOLO on Raspberry Pi. Models consist of a
.paramand.binfile pair.- Nginx¶
A web server used as a reverse proxy for the OWL dashboard. Handles HTTPS encryption and forwards requests to Gunicorn.
- NumPy¶
A Python library for numerical computing. Used by OpenCV for image processing. Must be version-aligned between the system and virtual environment.
- OpenCV¶
Open Computer Vision. The image processing library that powers weed detection. Installed in the OWL virtual environment.
owl-dash.service¶The systemd service that runs the web dashboard (Gunicorn + Flask). Only present after Standalone or Networked setup.
owl.service¶The systemd service that runs the main OWL detection program. Starts automatically on boot.
- Relay¶
An electrically operated switch. The OWL activates relays via GPIO pins to trigger solenoid valves for spot spraying.
- Solenoid¶
An electrically activated valve that controls liquid flow. Connected to the OWL via relays and GPIO pins.
- YOLO¶
You Only Look Once. An object detection model architecture used for Green-on-Green weed detection. Trained with the Ultralytics framework and exported to NCNN format for deployment on Raspberry Pi.
See also
Two-Step Install — Automated OWL setup
Detailed Install — Step-by-step manual setup
Standalone Setup — WiFi hotspot configuration
Networked Setup — Multi-OWL network configuration
Troubleshooting — Common issues and solutions