ArduCAM / RPI-Pico-Cam

126 stars 43 forks source link

PICO Arducam Examples

Table of contents

Getting started

See Getting Started with the Raspberry Pi Pico and the README in the pico-sdk for information on getting up and running.

Quick Pico Setup

If you are developing for Raspberry Pi Pico on the Raspberry Pi 4B, or the Raspberry Pi 400, most of the installation steps in this Getting Started guide can be skipped by running the setup script. You can get this script by doing the following:

git clone https://github.com/raspberrypi/pico-setup.git

Then run:

 pico-setup/pico_setup.sh

The script will:

Once it has run, you will need to reboot your Raspberry Pi,

sudo reboot

Get Arducam

IMAGE ALT TEXT

Test Arducam demo

App Description
arducam_demo This is a video streaming demo.

IMAGE ALT TEXT

If you are logged in via ssh for example, you may have to mount the mass storage device manually:

$ dmesg | tail
[ 371.973555] sd 0:0:0:0: [sda] Attached SCSI removable disk
$ sudo mkdir -p /mnt/pico
$ sudo mount /dev/sda1 /mnt/pico

If you can see files in /mnt/pico then the USB Mass Storage Device has been mounted correctly:

$ ls /mnt/pico/
INDEX.HTM INFO_UF2.TXT
Copy your arducam_demo.uf2 onto RP2040:
sudo cp arducam_demo.uf2 /mnt/pico
sudo sync

Person Detection

IMAGE ALT TEXT

Test Person Detection

App Description
person_detection_int8 This is a person detection demo.

IMAGE ALT TEXT

If you are logged in via ssh for example, you may have to mount the mass storage device manually:

$ dmesg | tail
[ 371.973555] sd 0:0:0:0: [sda] Attached SCSI removable disk
$ sudo mkdir -p /mnt/pico
$ sudo mount /dev/sda1 /mnt/pico

If you can see files in /mnt/pico then the USB Mass Storage Device has been mounted correctly:

$ ls /mnt/pico/
INDEX.HTM INFO_UF2.TXT

Copy your person_detection_int8.uf2 onto RP2040:

sudo cp examples/person_detection/person_detection_int8.uf2 /mnt/pico
sudo sync

View output

The person detection example outputs some information through usb, you can use minicom to view:

minicom -b 115200 -o -D /dev/ttyACM0

minicom_output

The person detection example also outputs the image data and person detection results to the UART, and we provide a processing program to display them:

no-person person

Tips: You can download the Processing here or Processing for Pi.

Person Detection Diagram

Person Detection Diagram

Person Detection Screen

Bin Description
person_detection_screen_int8.uf2 This is the main program of person_detection_screen, which can be dragged onto the RP2040 USB Mass Storage Device.

Tips: If you don't want to compile, you can use the above pre-built uf2 file, you only need to wire the hardware and download uf2 to the device.

IMAGE ALT TEXT

Test Person Detection Screen

App Description
person_detection_screen_int8 This is a person detection screen demo.

IMAGE ALT TEXT

Learn more here: pico4ml-an-rp2040-based-platform-for-tiny-machine-learning

If you are logged in via ssh for example, you may have to mount the mass storage device manually:

$ dmesg | tail
[ 371.973555] sd 0:0:0:0: [sda] Attached SCSI removable disk
$ sudo mkdir -p /mnt/pico
$ sudo mount /dev/sda1 /mnt/pico

If you can see files in /mnt/pico then the USB Mass Storage Device has been mounted correctly:

$ ls /mnt/pico/
INDEX.HTM INFO_UF2.TXT

Copy your person_detection_screen_int8.uf2 onto RP2040:

sudo cp examples/person_detection_screen/person_detection_screen_int8.uf2 /mnt/pico
sudo sync

View output

The person detection screen example outputs some information through usb, you can use minicom to view:

minicom -b 115200 -o -D /dev/ttyACM0

minicom_output

The person detection screen example also outputs the image data and person detection screen results to the UART, and you can see them directly on the screen. no-person{} person