Skip to content

Raspberry Pi board model is stale across docs: raw JSON tabs, screenshot, and which rpi* model to recommend #5175

Description

@btshrewsbury-viam

Split out of #5168, which modernized the Config Builder tab of nine tutorials to the Blocks search flow. Three problems were found that #5168 deliberately left alone because they are wider than that PR and are blocked on one question.

1. Which Raspberry Pi board model should the docs recommend? (blocks the rest)

The Configuration Blocks dialog in app.viam.com currently offers all of these from the viam:raspberry-pi module:

Block Description shown in app Usages
raspberry-pi/rpi "A board component for the Raspberry Pi GPIO pins." 221
raspberry-pi/rpi4 "A board component for the Raspberry Pi 4 GPIO pins." 24,487
raspberry-pi/rpi5 "A board component for the Raspberry Pi 5 GPIO pins." 308
raspberry-pi/rpi3, rpi2, rpi0_2 per-model 21 / 1 / 4

Several tutorials say to use the generic rpi for "a Raspberry Pi 4, Raspberry Pi 3 or Raspberry Pi Zero 2 W", but rpi4, rpi3, and rpi0_2 all exist and rpi4 is used ~100x more than rpi. Is the generic rpi still the recommendation, or should the docs point at the version-specific model?

Related: raspberry-pi/rpi-servo's own description reads "A servo to run a servo on the Raspberry Pi Zero to 4. On 5 use servo model gpio." No tutorial mentions that a Pi 5 needs servo/gpio rather than rpi-servo.

Pages asserting the generic-rpi-covers-Pi-4/3/Zero-2-W claim:

  • docs/tutorials/get-started/blink-an-led.md:140
  • docs/tutorials/get-started/servo-mousemover.md:175
  • docs/tutorials/control/control-motor.md:104
  • docs/tutorials/projects/claw-game.md:171
  • docs/reference/components/servo/gpio.md:18

2. Raw JSON tabs still use the removed builtin pi board model

11 files show "model": "pi" with "api": "rdk:component:board". That is the old in-viam-server board model; the Pi board is now a registry module, and the canonical form (per docs/hardware/machine-configuration.md:45) is a triplet such as "viam:raspberry-pi:rpi5".

In blink-an-led.md this now visibly contradicts the page's own Config Builder tab, which #5168 updated to raspberry-pi/rpi.

docs/reference/components/motor/micro-rdk/gpio.md:70
docs/tutorials/get-started/blink-an-led.md:160
docs/tutorials/projects/make-a-plant-watering-robot.md:242
docs/tutorials/projects/claw-game.md:192
docs/reference/components/motor/gpiostepper.md:68
docs/reference/components/encoder/incremental.md:49
docs/reference/components/motor/gpio.md:78
docs/reference/components/motor/encoded-motor.md:84
docs/reference/components/gantry/multi-axis.md:55
docs/reference/components/base/wheeled.md:65
docs/data/trigger-on-data.md:102

Each needs the triplet chosen in (1). (micro-rdk/gpio.md should be checked separately — micro-RDK may not use this model at all.)

3. Stale screenshot and alt text

docs/tutorials/configure/configure-rover.md:62 embeds /components/board/pi-ui-config.png, whose alt text reads "The name (local), type (board) and model (pi) are shown." The screenshot shows the old pi model and the pre-Blocks type dropdown. Fixing the alt text alone would make it misdescribe the image, so this needs pi-ui-config.png re-shot against the current UI, then the alt text rewritten to match.

4. Drive-by

docs/tutorials/services/constrain-motion.md:163 — "Enter the name table for your movement sensor". It is a generic component (generic/fake), as the line directly above says.


Suggested order: answer (1), then fix (2) in one sweep, (3) with a fresh screenshot, and (4) alongside either.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions