Skip to main content

Raspberry Pi Installation

A Raspberry Pi makes a good home for an unattended robot: it draws a few watts, sits on your own network, and costs less than a month of cloud compute.

info

The Pi build is ARM64 on Debian 13.3. Use the 64-bit Raspberry Pi OS — the 32-bit image will not install this package.

What you need

  • A Raspberry Pi running 64-bit Raspberry Pi OS (Debian 13.3)
  • A Pi 4 or newer is advisable. Browser automation in particular wants the memory.

Check you are on the 64-bit OS:

dpkg --print-architecture # should print: arm64

If that prints armhf, you are on the 32-bit image and need to reflash.

Install

  1. Download the Raspberry Pi build from robomotion.io/downloads — the ARM64 package, not the AMD64 one.

  2. Install it:

    sudo dpkg -i ~/Downloads/robomotion_26.8.2_arm64.deb
    sudo apt-get install -f -y

    Adjust the version to match the file you downloaded. As on any Debian system, dpkg does not resolve dependencies itself — apt-get install -f pulls in the ones it reports.

  3. Confirm it is there:

    robomotion-deskbot --version

Connect it

Two ways, and on a Pi the second is usually what you want.

With a desktop session — if your Pi boots to the desktop, launch Robomotion from the applications menu and follow Connect Robot.

Headless — the common case. Connect over SSH with a robot token, keeping the token out of the process list:

export ROBOMOTION_WORKSPACE=acme.robomotion.io
export ROBOMOTION_ROBOT_ID=<robot-id>
export ROBOMOTION_ROBOT_TOKEN=<robot-token>

robomotion-deskbot connect --no-attach --log-level info

To keep it running across reboots, use the systemd unit in Linux VPS — the same unit works here.

Two things specific to the Pi

Browser automation needs a display. Headless browser work, API calls, file and database operations need none. Anything headed — a visible browser, or GUI automation — needs an X11, Wayland, VNC or Xvfb session. On a headless Pi that means installing Xvfb; see the display section of Linux VPS.

Watch the SD card. Flows that write files, and verbose logging, will wear a card out faster than you expect. Point --logdir at external storage for anything long-running, and prefer an SSD over a card if the Pi is doing real work.

Good fits for a Pi robot

  • Scheduled API and database work — no display needed, negligible power draw
  • Monitoring: SSL certificate checks, endpoint health, disk space
  • Anything that must run on your own network, reaching something that is not exposed publicly
  • Queue consumers, picking work off a queue as it arrives

Less good: heavy browser scraping, and anything image- or OCR-based. Those want more CPU and memory than a Pi has.

Next