Примітка: камера наразі підтверджено працює з Raspberry Pi 5, Raspberry Pi Zero 2 W та Orange Pi 5.
Загальна схема підключення

- Припаяйте USB-кабель до комплектного проводу камери за схемою:
Камера USB Сигнал Червоний Червоний Power Positive Чорний Чорний Power Negative Зелений Зелений USB_2.0_DP Білий Білий USB_2.0_DM - Вставте кабель у конектор USB на платі
- Перевірте камеру в консолі
- Встановіть інструменти для перевірки камери
sudo apt update && sudo apt install -y v4l-utils ffmpeg - Переконатись, що камера визначилась. Введіть команду і у виводі знайдіть блок, у назві якого в дужках є префікс usb-… — це ваша підключена USB-камера, а перший рядок під ним (зазвичай /dev/video0) указує на відеопотік, який слід використовувати; якщо такого блоку немає, система не розпізнала камеру й потрібно перевірити кабель, живлення або спробувати перепід’єднання
v4l2-ctl --list-device
- Перевірте зображення камери
ffplay -f v4l2 -video_size 640x512 -i /dev/video0
Сетап через Python + OpenCV
- Встановіть інструменти для перевірки камери
sudo apt updatesudo apt install -y python3-opencv python3-numpy v4l-utils - Переконатись, що камера визначилась. Введіть команду і у виводі знайдіть блок, у назві якого в дужках є префікс usb-… — це ваша підключена USB-камера, а перший рядок під ним (зазвичай /dev/video0) указує на відеопотік, який слід використовувати; якщо такого блоку немає, система не розпізнала камеру й потрібно перевірити кабель, живлення або спробувати перепід’єднання
v4l2-ctl --list-devices
- Перейдіть у домашню папку
cd ~
- Створіть файл
nano test.py
- Скопіюйте й вставте код:
import cv2import timeDEVICE = "/dev/video0" # замініть, якщо іншій нодWIDTH, HEIGHT = 640, 512cap = cv2.VideoCapture(DEVICE, cv2.CAP_V4L2)cap.set(cv2.CAP_PROP_FRAME_WIDTH, WIDTH)cap.set(cv2.CAP_PROP_FRAME_HEIGHT, HEIGHT)if not cap.isOpened():raise IOError(f"Не вдалося відкрити {DEVICE}")print("Натисніть 'q' для виходу")t0, frames = time.time(), 0while True:ret, frame = cap.read()if not ret:print("Кадр не зчитано"); breakcv2.imshow("UVC 640×512", frame)frames += 1if cv2.waitKey(1) & 0xFF == ord('q'):breakprint(f"Середній FPS: {frames / (time.time() - t0):.1f}")cap.release()cv2.destroyAllWindows()
- Збережіть код → Ctrl + O, Enter, вийдіть → Ctrl + X.

- Запустіть файл
python3 test.py
