Unable to run motion eye on Raspberry Pi zero2w #2672

Open
opened 2026-02-28 01:17:15 -05:00 by deekerman · 4 comments
Owner

Originally created by @YashRajeev on GitHub (Jan 11, 2026).

Hello
I am using Raspberry Pi zero 2w. I am using a Camera 3 NOIR. Despite using multiple builds from 0.43 to 0.50, running motioneyeos or on raspberrypiOS I am unable to get it to detect the video source.
Could you please help?
Thanks

Originally created by @YashRajeev on GitHub (Jan 11, 2026). Hello I am using Raspberry Pi zero 2w. I am using a Camera 3 NOIR. Despite using multiple builds from 0.43 to 0.50, running motioneyeos or on raspberrypiOS I am unable to get it to detect the video source. Could you please help? Thanks
Author
Owner

@Marijn0 commented on GitHub (Jan 11, 2026):

Have you followed these installation instructions?
https://github.com/motioneye-project/motioneye#installation

If you are using Bullseye or Bookworm (I have not tried this on Trixie yet), you can try running motionEye with libcamerify:

sudo apt install -y libcamera-v4l2 libcamera-tools
sudo sed -i 's|/usr/local/bin/meyectl|/usr/bin/libcamerify /usr/local/bin/meyectl|' /etc/systemd/system/motioneye.service
sudo systemctl daemon-reload
sudo systemctl restart motioneye

If this works, the camera should appear as one of the devices under Local V4L2 Camera.

If you are using an Arducam camera, you may need to follow their setup instructions first:
https://docs.arducam.com/Raspberry-Pi-Camera/Native-camera/Quick-Start-Guide/

In any case, make sure your camera is available by running:

rpicam-hello --list-cameras

Note that the Raspberry Pi Camera Module 3 does not work with motionEyeOS,
and only works with motionEye when using libcamerify.

@Marijn0 commented on GitHub (Jan 11, 2026): Have you followed these installation instructions? https://github.com/motioneye-project/motioneye#installation If you are using Bullseye or Bookworm (I have not tried this on Trixie yet), you can try running motionEye with libcamerify: ``` sudo apt install -y libcamera-v4l2 libcamera-tools sudo sed -i 's|/usr/local/bin/meyectl|/usr/bin/libcamerify /usr/local/bin/meyectl|' /etc/systemd/system/motioneye.service sudo systemctl daemon-reload sudo systemctl restart motioneye ``` If this works, the camera should appear as one of the devices under `Local V4L2 Camera`. If you are using an Arducam camera, you may need to follow their setup instructions first: https://docs.arducam.com/Raspberry-Pi-Camera/Native-camera/Quick-Start-Guide/ In any case, make sure your camera is available by running: ``` rpicam-hello --list-cameras ``` Note that the Raspberry Pi Camera Module 3 does not work with motionEye<ins>OS</ins>, and only works with motionEye when using libcamerify.
Author
Owner

@frepkovsky commented on GitHub (Jan 16, 2026):

Hello,

This is not issue with Motioneye or Motion but is issue with libcamera. Bug was introduced into the v4l2 proxy code in version 0.6 that is used on raspberry pi os Trixie - see this.

You can verify if you face this bug by running command below - if you get the same error at the end:

$ sudo libcamerify motion -nm
...
motion: ../include/libcamera/controls.h:190: T libcamera::ControlValue::get() const [with T = long int; typename std::enable_if<((! libcamera::details::is_span<U>::value) && (! std::is_same<std::basic_string_view<char>, typename std::remove_cv< <template-parameter-1-1> >::type>::value)), std::nullptr_t>::type <anonymous> = nullptr]: Assertion `!isArray_' failed.
Aborted
@frepkovsky commented on GitHub (Jan 16, 2026): Hello, This is not issue with Motioneye or Motion but is issue with libcamera. Bug was introduced into the v4l2 proxy code in version 0.6 that is used on raspberry pi os Trixie - see [this](https://github.com/raspberrypi/libcamera/issues/321). You can verify if you face this bug by running command below - if you get the same error at the end: ``` $ sudo libcamerify motion -nm ... motion: ../include/libcamera/controls.h:190: T libcamera::ControlValue::get() const [with T = long int; typename std::enable_if<((! libcamera::details::is_span<U>::value) && (! std::is_same<std::basic_string_view<char>, typename std::remove_cv< <template-parameter-1-1> >::type>::value)), std::nullptr_t>::type <anonymous> = nullptr]: Assertion `!isArray_' failed. Aborted ```
Author
Owner

@frepkovsky commented on GitHub (Feb 7, 2026):

FYI, updated packages where the issue is fixed are already available in rpi repo

for upgrade to libcamera0.7:

sudo apt update
sudo apt upgrade
sudo apt install libcamera0.7

If you have motioneye already installed (for installation on Trixie, the same is needed as on Bookworm - see this) , you need to use libcamerify to detect camera properly in motioneye:

sudo apt -y install libcamera-v4l2 libcamera-tools
sudo sed -i 's/\/usr\/local\/bin\/meyectl/\/usr\/bin\/libcamerify \/usr\/local\/bin\/meyectl/' /etc/systemd/system/motioneye.service
sudo systemctl daemon-reload
sudo systemctl restart motioneye.service
@frepkovsky commented on GitHub (Feb 7, 2026): FYI, updated packages where the issue is fixed are already available in [rpi repo](https://archive.raspberrypi.com/debian/pool/main/libc/libcamera/) for upgrade to libcamera0.7: ``` sudo apt update sudo apt upgrade sudo apt install libcamera0.7 ``` If you have motioneye already installed (for installation on Trixie, the same is needed as on Bookworm - see [this](https://github.com/motioneye-project/motioneye/issues/2812#issuecomment-2506840345)) , you need to use libcamerify to detect camera properly in motioneye: ``` sudo apt -y install libcamera-v4l2 libcamera-tools sudo sed -i 's/\/usr\/local\/bin\/meyectl/\/usr\/bin\/libcamerify \/usr\/local\/bin\/meyectl/' /etc/systemd/system/motioneye.service sudo systemctl daemon-reload sudo systemctl restart motioneye.service ```
Author
Owner

@MichaIng commented on GitHub (Feb 7, 2026):

Explicitly installing libcamera0.7 is not needed. It is pulled in by the other packages. If libcamera-v4l2 and libcamera-tools are installed already, the apt upgrade will imply libcamera0.7, else the libcamera-v4l2 and libcamera-tools installs will imply it.

This may become relevant once libcamera0.8 gets released and pushed to the repo, so it is assured package upgrade always pull latest libcamera without requiring confirmation to remove the old one.

@MichaIng commented on GitHub (Feb 7, 2026): Explicitly installing `libcamera0.7` is not needed. It is pulled in by the other packages. If `libcamera-v4l2` and `libcamera-tools` are installed already, the `apt upgrade` will imply `libcamera0.7`, else the `libcamera-v4l2` and `libcamera-tools` installs will imply it. This may become relevant once `libcamera0.8` gets released and pushed to the repo, so it is assured package upgrade always pull latest libcamera without requiring confirmation to remove the old one.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/motioneye#2672
No description provided.