Files
apress/deploy/uno-q/skills/vision/SKILL.md
T
Omar SobhandClaude Opus 4.8 62c435c648 feat(uno-q): bundle the granular skill set alongside arduino-uno-q on every node
Vendors the fork's 11 granular UNO Q skills (bridge, flashing, led-matrix,
uno-q-hardware, sketch-patterns, modulino, linux-led, audio, vision, wireless,
arduino-app-lab) next to the comprehensive arduino-uno-q skill, and installs the
whole set into every agent's workspace on each board.

Why both: the comprehensive skill is the rich cloud reference (read_skill →
references); the granular skills are keyword-triggered and match the fork's eager
skill-inliner rules, so the on-board Qwen auto-inlines them (no read_skill
round-trip). flashing + led-matrix carry the exact uno_q_flash + frame-API /
ArduinoGraphics-not-installed detail that makes flashing reliable.

- push-skill.sh generalized: a single skill dir (has SKILL.md) OR a parent dir
  installs every skill under it; provision-fleet now ships all of skills/.
- Verified on board 65301572: cloud/Sonnet-5 lists all 12 skills.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-07-16 09:32:11 -07:00

1.2 KiB

name, description
name description
vision Camera and computer vision on the Arduino Uno Q — MIPI-CSI-2 camera via V4L2/GStreamer and OpenCV on the Linux side. Load this for capturing images/frames, camera pipelines, or running vision on the board.

Vision on the Uno Q (Linux side)

The camera (MIPI-CSI-2) is a Linux/MPU device exposed via V4L2 (/dev/video0). Capture and processing run on the MPU, not the MCU.

Capture a frame

Use the camera tool — it runs a single-frame GStreamer pipeline and writes a JPEG (args: device, width, height, output under /tmp, /var/tmp, or $HOME).

Equivalent pipeline it runs:

gst-launch-1.0 v4l2src device=/dev/video0 num-buffers=1 \
  ! video/x-raw,width=1280,height=720 ! videoconvert ! jpegenc \
  ! filesink location=/tmp/frame.jpg

Processing (Python, MPU)

import cv2
img = cv2.imread("/tmp/frame.jpg")
# detect / annotate / stream ...

The Adreno 702 GPU provides hardware H.264/H.265/VP9 encode/decode for streaming.

Pitfalls

  • The camera is not accessible from a sketch — it's a Linux device. Drive vision from Python (MPU); use Bridge if a sketch needs the result.
  • output for camera must be an absolute path under /tmp, /var/tmp, or $HOME.