Arducam 64mp with fluidd or mainsail help

  1. Where did you get the camera module(s)?Arducam

  2. Model number of the product(s)?Arducam 64 hawkeye

  3. What hardware/platform were you working on? pi4

  4. Instructions you have followed. (link/manual/etc.)

  5. Problems you were having? Cannot view video feed in fluid or mainsail

I cannot get the cam to show up in mainsail or fluid

When I try to test the cam I get

libcamera-still -t 5000 -o test.jpg -n
[9:45:13.819333166] [20313]  INFO Camera camera_manager.cpp:293 libcamera v0.0.0+3572-e13ccdd5
[9:45:13.825542839] [20315]  WARN CameraSensorProperties camera_sensor_properties.cpp:163 No static properties available for 'arducam_64mp'
[9:45:13.825594764] [20315]  WARN CameraSensorProperties camera_sensor_properties.cpp:165 Please consider updating the camera sensor properties database
[9:45:13.825929148] [20315] ERROR CameraSensor camera_sensor.cpp:591 'arducam_64mp 10-001a': Camera sensor does not support test pattern modes.
[9:45:13.847017723] [20315]  WARN RPI raspberrypi.cpp:1263 Mismatch between Unicam and CamHelper for embedded data usage!
[9:45:13.847705343] [20315] ERROR DelayedControls delayed_controls.cpp:87 Delay request for control id 0x009a090a but control is not exposed by device /dev/v4l-subdev0
[9:45:13.847898581] [20315]  INFO RPI raspberrypi.cpp:1386 Registered camera /base/soc/i2c0mux/[email protected]/[email protected] to Unicam device /dev/media3 and ISP device /dev/media2
[9:45:13.848592923] [20313]  INFO Camera camera.cpp:1029 configuring streams: (0) 4624x3472-YUV420
[9:45:13.848729921] [20315] ERROR V4L2 v4l2_videodevice.cpp:1211 /dev/video0[14:cap]: Unable to request 0 buffers: Device or resource busy
[9:45:13.849231544] [20315] ERROR V4L2 v4l2_videodevice.cpp:1017 /dev/video0[14:cap]: Unable to set format: Device or resource busy
[9:45:13.849767814] [20315] ERROR V4L2 v4l2_videodevice.cpp:1211 /dev/video0[14:cap]: Unable to request 0 buffers: Device or resource busy
[9:45:13.850223511] [20315] ERROR V4L2 v4l2_videodevice.cpp:1211 /dev/video0[14:cap]: Unable to request 0 buffers: Device or resource busy
ERROR: *** failed to configure streams ***

The process that using it I believe is the mjpg stream which I hope is from fluidd using the cam and I’m just not configuring the webcam.txt file correctly.

pi          2855  0.0  0.0 536552  2000 ?        Sl   05:44   0:00 ./mjpg_streamer -o -w ./www-mjpgstreamer  -i -r 1920x1080 -f 30 -d /dev/video0
pi          3496  0.0  0.0   5912   628 pts/2    S+   05:51   0:00 grep --color=auto 2855

hi, @702enigma

Since mjpg_streamer is running, it occupies the /dev/video0 node.

So your libcamera-still command fails.

From Mainsail they said this which now means I have a useless camera. Well for me anyways. Dont plan on using it for monitoring 3d prints.

Kwadfan. Good morning, after a bit of research it turns out, that these camera falls into the same categorie as the 16MP with autofocus. They use a proprietary Kernel Module. Therefor bad news. Our camera solutions will and do only provide solutions for non-proprietary Hardware or Hardware that is already part of raspberry pi os(v1/v2/hq cam modules). Also, wether crowsnest nor mjpeg-streamer using parts of raspberrys libcamera stack that is only available on bullseye images. These cameras use a proprietary video codec from bayer that has to be converted into mjpg, this creates such a big overhead that I decided not to support it with the upcomming releases of crowsnest/mainsailOS.

From technical prospectiv, more MP isnt a good deal if your network devices arent capable to deliver that huge frames. A [email protected] stream could easily outperform your wifi connection. Those types of cams havent a benefit to watch a printer in my opinion.

We made libcamera plugin for mjpg-streamer. You can try to use it.

The link below has an introduction to this plugin, but it’s a demo for use on an OctoPrint system.

Alot of people are getting away from Octoprint. Mainsail and Fluidd work much better and the speeds I am printing at don’t let me use it as its lags behind the Gcode. This will not work in our use case as explained by the mainsail engineer.