I couldn't get the script from p123ad to work on my Pi Zero W 2 with Camera Module 3 (all kinds of ffmpeg errors). There are several built-in tools for working with the camera now, so I tried to figure out if I could use one of those instead.
Behold this version, which uses the built-in libcamera-still
tool to actually interact with the camera and save a JPEG. That image is then uploaded to Prusa Connect, same as the original script.
- Go to the Cameras section at https://connect.prusa3d.com
- Add a new camera by clicking "Add new other camera"
- Copy the generated Token
- Set up your Pi Zero W 2 with Raspian OS Lite (32-bit) (this may work with other combinations of Pi and OS but I haven't tested)
- Log into your Pi and create a shell script with
sudo nano /usr/local/bin/prusaconnect_upload_cam.sh
and swap outconnect-token-here
in the script example with the Token you copied in step 3 - Change ownership of the script to the user you log into your pi with, for example if your user is
pi
then run:sudo chown pi:pi /usr/local/bin/prusaconnect_upload_cam.sh
- Make the script executable:
chmod +x /usr/local/bin/prusaconnect_upload_cam.sh
- Start the script with
/usr/local/bin/prusaconnect_upload_cam.sh
If it works you should see no error messages, and a new image appearing in Prusa Connect every 10 seconds.
To run the script in the background and have it start automatically when your Pi starts:
- Create the service file with
sudo nano /etc/systemd/system/prusaconnect_upload_cam.service
, paste the content from below and save. - Start the service:
sudo systemctl start prusaconnect_upload_cam.service
. - Check if the service is running with
sudo systemctl status prusaconnect_upload_cam.service
. - Enable the service to run at startup:
sudo systemctl enable prusaconnect_upload_cam.service
.
@ToastCinnamon I haven't had any of those issues, sorry! It could be a Camera 2 vs Camera 3 issue?
Are you able to do a fresh install of Raspian? I would try that and make sure that
libcamera-still
itself is installed and works before trying to get the script to work. For example, if you log in and run this:And then you have
output.jpg
in the same directory, you should be good to go. Try with the--rotate
flag as well, if you need that.