So, the interesting part of this is that I had everything working before the updates and now they just failed. I’ve looked through the code and the only difference I can find is that the “device controls” for my libcamera no longer populate. This causes the ERROR: of starting the camera-streamer service.
I have a raspberry pi 4b set up with the 64-bit bookworm. I’ll try to attach the codes. Does anyone have an idea why this error is occurring, or what I can do to solve it?
This is when the code worked:
[02/08/25 02:35:09] crowsnest: crowsnest - A webcam Service for multiple Cams and Stream Services.
[02/08/25 02:35:10] crowsnest: Version: v4.1.10-1-gdd390b6
[02/08/25 02:35:10] crowsnest: Prepare Startup ...
[02/08/25 02:35:10] crowsnest: INFO: Host information:
[02/08/25 02:35:10] crowsnest: Host Info: Distribution: Debian GNU/Linux 12 (bookworm)
[02/08/25 02:35:10] crowsnest: Host Info: Kernel: Linux 6.6.51+rpt-rpi-v8 aarch64
[02/08/25 02:35:10] crowsnest: Host Info: Model: Raspberry Pi 4 Model B Rev 1.5
[02/08/25 02:35:10] crowsnest: Host Info: Available CPU Cores: 4
[02/08/25 02:35:10] crowsnest: Host Info: Available Memory: 3882984 kB
[02/08/25 02:35:10] crowsnest: Host Info: Diskspace (avail. / total): 47G / 59G
[02/08/25 02:35:10] crowsnest: INFO: Checking Dependencies
[02/08/25 02:35:10] crowsnest: Dependency: 'crudini' found in /usr/bin/crudini.
[02/08/25 02:35:10] crowsnest: Dependency: 'find' found in /usr/bin/find.
[02/08/25 02:35:10] crowsnest: Dependency: 'xargs' found in /usr/bin/xargs.
[02/08/25 02:35:10] crowsnest: Dependency: 'ustreamer' found in bin/ustreamer/src/ustreamer.bin.
[02/08/25 02:35:10] crowsnest: Dependency: 'camera-streamer' found in bin/camera-streamer/camera-streamer.
[02/08/25 02:35:11] crowsnest: Version Control: ustreamer is up to date. (v6.10)
[02/08/25 02:35:13] crowsnest: Version Control: camera-streamer is up to date. ((e50a855))
[02/08/25 02:35:13] crowsnest: INFO: Print Configfile: '/home/Klaus/printer_data/config/crowsnest.conf'
[02/08/25 02:35:13] crowsnest: [crowsnest]
[02/08/25 02:35:13] crowsnest: log_path: /home/Klaus/printer_data/logs/crowsnest.log
[02/08/25 02:35:13] crowsnest: log_level: verbose
[02/08/25 02:35:13] crowsnest: delete_log: false
[02/08/25 02:35:13] crowsnest: no_proxy: false
[02/08/25 02:35:13] crowsnest:
[02/08/25 02:35:13] crowsnest: [cam 1]
[02/08/25 02:35:13] crowsnest: mode: camera-streamer
[02/08/25 02:35:13] crowsnest:
[02/08/25 02:35:13] crowsnest: enable_rtsp: true
[02/08/25 02:35:13] crowsnest: rtsp_port: 8554
[02/08/25 02:35:13] crowsnest: port: 8080
[02/08/25 02:35:13] crowsnest: device: /base/soc/i2c0mux/i2c@1/ov5647@36
[02/08/25 02:35:13] crowsnest: resolution: 2592x1944
[02/08/25 02:35:13] crowsnest: max_fps: 15
[02/08/25 02:35:13] crowsnest: INFO: Detect available Devices
[02/08/25 02:35:13] crowsnest: INFO: Found 1 total available Device(s)
[02/08/25 02:35:13] crowsnest: Detected 'libcamera' device -> /base/soc/i2c0mux/i2c@1/ov5647@36
[02/08/25 02:35:13] crowsnest: 'libcamera' device(s) resolution(s) :
[02/08/25 02:35:13] crowsnest: 0 : ov5647 [2592x1944 10-bit GBRG] (/base/soc/i2c0mux/i2c@1/ov5647@36)
[02/08/25 02:35:13] crowsnest: Colorspace: 'SGBRG10_CSI2P' : 640x480 [58.92 fps - (16, 0)/2560x1920 crop]
[02/08/25 02:35:13] crowsnest: 1296x972 [43.25 fps - (0, 0)/2592x1944 crop]
[02/08/25 02:35:13] crowsnest: 1920x1080 [30.62 fps - (348, 434)/1928x1080 crop]
[02/08/25 02:35:13] crowsnest: 2592x1944 [15.63 fps - (0, 0)/2592x1944 crop]
[02/08/25 02:35:13] crowsnest:
[02/08/25 02:35:13] crowsnest: 'libcamera' device controls :
[02/08/25 02:35:13] crowsnest: Sharpness (Float): min=0.000000 max=16.000000
[02/08/25 02:35:13] crowsnest: AeExposureMode (Integer32): min=0 max=3
[02/08/25 02:35:13] crowsnest: 0: Normal
[02/08/25 02:35:13] crowsnest: 1: Short
[02/08/25 02:35:13] crowsnest: 2: Long
[02/08/25 02:35:13] crowsnest: 3: Custom
[02/08/25 02:35:13] crowsnest: Brightness (Float): min=-1.000000 max=1.000000
[02/08/25 02:35:13] crowsnest: FrameDurationLimits (Integer64): min=32660 max=3286461
[02/08/25 02:35:13] crowsnest: NoiseReductionMode (Integer32): min=0 max=4
[02/08/25 02:35:13] crowsnest: 0: Off
[02/08/25 02:35:13] crowsnest: 1: Fast
[02/08/25 02:35:13] crowsnest: 2: HighQuality
[02/08/25 02:35:13] crowsnest: 3: Minimal
[02/08/25 02:35:13] crowsnest: 4: ZSL
[02/08/25 02:35:13] crowsnest: StatsOutputEnable (00004e21, Bool): min=false max=true
[02/08/25 02:35:13] crowsnest: Saturation (Float): min=0.000000 max=32.000000
[02/08/25 02:35:13] crowsnest: AeConstraintMode (Integer32): min=0 max=3
[02/08/25 02:35:13] crowsnest: 0: Normal
[02/08/25 02:35:13] crowsnest: 1: Highlight
[02/08/25 02:35:13] crowsnest: 2: Shadows
[02/08/25 02:35:13] crowsnest: 3: Custom
[02/08/25 02:35:13] crowsnest: AwbEnable (Bool): min=false max=true
[02/08/25 02:35:13] crowsnest: ColourGains (Float): min=0.000000 max=32.000000
[02/08/25 02:35:13] crowsnest: HdrMode (Integer32): min=0 max=4
[02/08/25 02:35:13] crowsnest: 0
[02/08/25 02:35:13] crowsnest: 1
[02/08/25 02:35:13] crowsnest: 2
[02/08/25 02:35:13] crowsnest: 3
[02/08/25 02:35:13] crowsnest: 4
[02/08/25 02:35:13] crowsnest: AeMeteringMode (Integer32): min=0 max=3
[02/08/25 02:35:13] crowsnest: 0: CentreWeighted
[02/08/25 02:35:13] crowsnest: 1: Spot
[02/08/25 02:35:13] crowsnest: 2: Matrix
[02/08/25 02:35:13] crowsnest: 3: Custom
[02/08/25 02:35:13] crowsnest: Contrast (Float): min=0.000000 max=32.000000
[02/08/25 02:35:13] crowsnest: AwbMode (Integer32): min=0 max=7
[02/08/25 02:35:13] crowsnest: 0: Auto
[02/08/25 02:35:13] crowsnest: 1: Incandescent
[02/08/25 02:35:13] crowsnest: 2: Tungsten
[02/08/25 02:35:13] crowsnest: 3: Fluorescent
[02/08/25 02:35:13] crowsnest: 4: Indoor
[02/08/25 02:35:13] crowsnest: 5: Daylight
[02/08/25 02:35:13] crowsnest: 6: Cloudy
[02/08/25 02:35:13] crowsnest: 7: Custom
[02/08/25 02:35:13] crowsnest: ExposureValue (Float): min=-8.000000 max=8.000000
[02/08/25 02:35:13] crowsnest: CnnEnableInputTensor (00004e27, Bool): min=false max=true
[02/08/25 02:35:13] crowsnest: AnalogueGain (Float): min=1.000000 max=63.937500
[02/08/25 02:35:13] crowsnest: AeFlickerPeriod (Integer32): min=100 max=1000000
[02/08/25 02:35:13] crowsnest: AeEnable (Bool): min=false max=true
[02/08/25 02:35:13] crowsnest: AeFlickerMode (Integer32): min=0 max=1
[02/08/25 02:35:13] crowsnest: ExposureTime (Integer32): min=118 max=3286047
[02/08/25 02:35:14] crowsnest:
[02/08/25 02:35:14] crowsnest: Try to start configured Cams / Services...
[02/08/25 02:35:15] crowsnest: INFO: Configuration of Section [cam 1] looks good. Continue ...
[02/08/25 02:35:16] crowsnest: Starting camera-streamer with Device /base/soc/i2c0mux/i2c@1/ov5647@36 ...
[02/08/25 02:35:17] crowsnest: ... Done!
and this is when the code did not work.
[02/09/25 19:00:52] crowsnest: crowsnest - A webcam Service for multiple Cams and Stream Services.
[02/09/25 19:00:52] crowsnest: Version: v4.1.10-1-gdd390b6
[02/09/25 19:00:52] crowsnest: Prepare Startup ...
[02/09/25 19:00:52] crowsnest: INFO: Host information:
[02/09/25 19:00:52] crowsnest: Host Info: Distribution: Debian GNU/Linux 12 (bookworm)
[02/09/25 19:00:52] crowsnest: Host Info: Kernel: Linux 6.6.74+rpt-rpi-v8 aarch64
[02/09/25 19:00:52] crowsnest: Host Info: Model: Raspberry Pi 4 Model B Rev 1.5
[02/09/25 19:00:52] crowsnest: Host Info: Available CPU Cores: 4
[02/09/25 19:00:52] crowsnest: Host Info: Available Memory: 3882912 kB
[02/09/25 19:00:52] crowsnest: Host Info: Diskspace (avail. / total): 47G / 59G
[02/09/25 19:00:52] crowsnest: INFO: Checking Dependencies
[02/09/25 19:00:53] crowsnest: Dependency: 'crudini' found in /usr/bin/crudini.
[02/09/25 19:00:53] crowsnest: Dependency: 'find' found in /usr/bin/find.
[02/09/25 19:00:53] crowsnest: Dependency: 'xargs' found in /usr/bin/xargs.
[02/09/25 19:00:53] crowsnest: Dependency: 'ustreamer' found in bin/ustreamer/src/ustreamer.bin.
[02/09/25 19:00:53] crowsnest: Dependency: 'camera-streamer' found in bin/camera-streamer/camera-streamer.
[02/09/25 19:00:53] crowsnest: Version Control: ustreamer is up to date. (v6.10)
[02/09/25 19:00:54] crowsnest: Version Control: camera-streamer new version available: (e50a855) ().
[02/09/25 19:00:54] crowsnest: INFO: Print Configfile: '/home/Klaus/printer_data/config/crowsnest.conf'
[02/09/25 19:00:54] crowsnest: [crowsnest]
[02/09/25 19:00:54] crowsnest: log_path: /home/Klaus/printer_data/logs/crowsnest.log
[02/09/25 19:00:54] crowsnest: log_level: verbose
[02/09/25 19:00:54] crowsnest: delete_log: false
[02/09/25 19:00:54] crowsnest: no_proxy: false
[02/09/25 19:00:54] crowsnest:
[02/09/25 19:00:54] crowsnest: [cam 1]
[02/09/25 19:00:54] crowsnest: mode: camera-streamer
[02/09/25 19:00:54] crowsnest:
[02/09/25 19:00:54] crowsnest: enable_rtsp: true
[02/09/25 19:00:54] crowsnest: rtsp_port: 8554
[02/09/25 19:00:54] crowsnest: port: 8080
[02/09/25 19:00:54] crowsnest: device: /base/soc/i2c0mux/i2c@1/ov5647@36
[02/09/25 19:00:54] crowsnest: resolution: 2592x1944
[02/09/25 19:00:54] crowsnest: max_fps: 15
[02/09/25 19:00:54] crowsnest: INFO: Detect available Devices
[02/09/25 19:00:55] crowsnest: INFO: Found 1 total available Device(s)
[02/09/25 19:00:55] crowsnest: Detected 'libcamera' device -> /base/soc/i2c0mux/i2c@1/ov5647@36
[02/09/25 19:00:55] crowsnest: 'libcamera' device(s) resolution(s) :
[02/09/25 19:00:55] crowsnest: 0 : ov5647 [2592x1944 10-bit GBRG] (/base/soc/i2c0mux/i2c@1/ov5647@36)
[02/09/25 19:00:55] crowsnest: Colorspace: 'SGBRG10_CSI2P' : 640x480 [58.92 fps - (16, 0)/2560x1920 crop]
[02/09/25 19:00:55] crowsnest: 1296x972 [46.34 fps - (0, 0)/2592x1944 crop]
[02/09/25 19:00:55] crowsnest: 1920x1080 [32.81 fps - (348, 434)/1928x1080 crop]
[02/09/25 19:00:55] crowsnest: 2592x1944 [15.63 fps - (0, 0)/2592x1944 crop]
[02/09/25 19:00:55] crowsnest:
[02/09/25 19:00:55] crowsnest: 'libcamera' device controls :
[02/09/25 19:00:55] crowsnest:
[02/09/25 19:00:55] crowsnest: Try to start configured Cams / Services...
[02/09/25 19:00:56] crowsnest: INFO: Configuration of Section [cam 1] looks good. Continue ...
[02/09/25 19:00:58] crowsnest: Starting camera-streamer with Device /base/soc/i2c0mux/i2c@1/ov5647@36 ...
[02/09/25 19:00:58] crowsnest: ERROR: Start of camera-streamer [cam 1] failed!
Also for reference, this is my crowsnest config
#### crowsnest.conf
#### This is a typical default config.
#### Also used as default in mainsail / MainsailOS
#### See:
#### https://github.com/mainsail-crew/crowsnest/blob/master/README.md
#### for details to configure to your needs.
#####################################################################
#### #####
#### Information about ports and according URL's #####
#### #####
#####################################################################
#### #####
#### Port 8080 equals /webcam/?action=[stream/snapshot] #####
#### Port 8081 equals /webcam2/?action=[stream/snapshot] #####
#### Port 8082 equals /webcam3/?action=[stream/snapshot] #####
#### Port 8083 equals /webcam4/?action=[stream/snapshot] #####
#### #####
#### Note: These ports are default for most Mainsail #####
#### installations. To use any other port would involve #####
#### changing the proxy configuration or using directly #####
#### http://<ip>:<port>/?action=[stream/snapshot] #####
#### #####
#####################################################################
#### RTSP Stream URL: ( if enabled and supported ) #####
#### rtsp://<ip>:<rtsp_port>/stream.h264 #####
#####################################################################
[crowsnest]
log_path: /home/Klaus/printer_data/logs/crowsnest.log
log_level: verbose # Valid Options are quiet/verbose/debug
delete_log: false # Deletes log on every restart, if set to true
no_proxy: false
[cam 1]
mode: camera-streamer # ustreamer - Provides mjpg and snapshots. (All devices)
# camera-streamer - Provides webrtc, mjpg and snapshots. (rpi + Raspi OS based only)
enable_rtsp: true # If camera-streamer is used, this enables also usage of an rtsp server
rtsp_port: 8554 # Set different ports for each device!
port: 8080 # HTTP/MJPG Stream/Snapshot Port
device: /base/soc/i2c0mux/i2c@1/ov5647@36 # See Log for available ...
resolution: 2592x1944 # widthxheight format
max_fps: 15 # If Hardware Supports this it will be forced, otherwise ignored/coerced.
#custom_flags: # You can run the Stream Services with custom flags.
#v4l2ctl: # Add v4l2-ctl parameters to setup your camera, see Log what your cam is capable of.
And the camera settings in fluidd that allowed it to work on initial configuration.
Please let me know if there is any more information I can provide. And again, I have noticed the libcamera device controls are now missing when it fails to stream. That’s the only lead I have, and I don’t know how to fix it short of a full system reinstallation.
Thanks!