Arducam Streaming, for Octo and Obico

Apologies for the long post, this is my last attempt before I give up.

Camera model
Arducam B0390 (Sony IMX219)

What is the problem?
Stream not working, need a walkthrough of what to change in configurations for the new sensor types. I

What did you already try to solve it?
tried to configure current stable release of octo. tried to flash test release with new camera configurations provided by a helpful member on reddit. That release was downloaded here:

I also tried to follow Arducam's walkthrough on their website, which is extremely vague and assumes a lot about the end user (me) and my capabilities (minimal).

Logs (/var/log/webcamd.log, syslog, dmesg, ... no logs, no support)
I don't really know what a log is. Part of the issue here is my capability/understanding seems to be under what is expected with help documentation.

Additional information about your setup (OctoPrint version, OctoPi version, ...)
Octoprint version 1.8.7. Running a Raspberry pi 3B+. I do all flashing and writing on a MacBook.

I have done a ton of googling for this issue, and posted on reddit. a kind redditor suggested I post here to get more support, and this is my attempt. I feel uneducated in terms of certain aspects of setting this up, and get lost very easy when I'm trying to follow other troubleshooting posts and technical guides. Jargon throws me off, so if possible, please explain things in layman's terms. I understand if this isn't worth the time to help me.

I'm frustrated because I've set up another Rpi 3B+ with Octo, using an Rpi cam (I think v2.1?). It works great. I also set it up before the Rpi imager software was available, so I'm not entirely useless. The only thing that's changed is the camera, which I understand has new sensors, and this is what has lost me. I don't really understand what drivers or overlays are. I can make assumptions, but my lack of knowledge, or even how to operate and test my Rpi are getting in the way. to access the configuration files, I physically remove the SD card from my Rpi, plug it in my computer, and edit the files from there. I see recommendations of "running sudo..." and "checking video device" and I don't even know where they're expecting me to go to test these things. I don't understand how to connect to my Rpi without just pulling and reading the SD card.

I downloaded this image that's currently in testing:

As far as I understand, this image is being developed to address the issues that new camera sensors have created. I've read libcam and something to do with mjpeg, but don't quite understand what's new, or why it's an issue.

I copied that image to my SD card. Octoprint works as intended, but the camera stream is not working.

To further complicate things, my end goal is to use Obico for print monitoring. It connects to the device and octoprint works on Obico as well, except for the web stream.

I already ran troubleshooting with Obico, and disabled to plugin to make sure it wasn't interfering with the stream. It was not; the stream still did not work.

I followed the documents on the test release page linked on the GitHub page, here: Camera-streamer configuration on OctoPi 1.0.0

I opened the config file to make sure things were set, and defaults were there. I didn't mess with OPTIONS, but I did change the resolution to lower numbers, just to see if it was something that simple. It didn't seem to change anything.

One more thing. When I edit the .txt or .config file on the /boot image, my mac alerts me something about not saving variations; it seems to save the changes I make in the configurations, but copies the old settings into a new .txt file with a unique name. I simply delete the old .txt file so that there's no conflict... but no sure if that's the right course of action.

Any help would be greatly appreciated. I understand if it's not worth the time to troubleshoot this with me, It can be difficult or not worth the time to walk a layman through these things. But if you think there's a simple resolution or troubleshoot, I'd greatly appreciate your time. Thanks in advance.

PS my searches in the community forum seem to be older, last year or prior. So if this becomes successful, I hope it's a helpful resource for others in the future that is more current.

Are you able to get SSH access to your Pi?

If yes, then you can try and get a lot more information about why it might not be working.

The first thing to try is running libcamera-hello --list-cameras, and see what it says. Hopefully not 'No cameras available'.

Secondly, you can run journalctl -u camera-streamer\* | pb, to grab the log file from the camera-streamer - this command uploads the log to paste.octoprint.org, which allows you to then share the URL to view the logs. (in future this will be included as part of the systeminfo bundle I believe, but until then it's like this).

1 Like

This is a major hold up for me, I don't know how to get SSH access. Honestly, I don't even really know what that means. I googled it and read this All3DP article, but I'm getting stuck right at the beginning; I don't have a mouse, keyboard, or display hooked up to my Rpi. I might be able to come up with these items, but I know I don't have a keyboard with a cord lying around. I might have a mouse... and will a TV work as a display with the HDMI port? or can I connect the Rpi to my laptop somehow? This first step is a big place that I'm getting held up and is keeping me from following a lot of guides I find here and elsewhere on the web.

You don't need a keyboard, mouse, or monitor.

Using the system you originally used to flash the microSD card, insert the microSD card again, and you will create the file named ssh in the /boot folder as described in this article. Since you are using a Mac, perhaps this link will be more useful. Skip the part where they explain how to flash the card.

To answer your other questions... Yes, a TV with an HDMI port will work as a monitor.
You can purchase a keyboard and mouse on Amazon for less than $15, Wired or Wireless. If you don't want to use a TV as a monitor, something like this is what I use.

SSH should be enabled on OctoPi by default, so you shouldn't need to enable it but just running ssh <username>@<ipaddress> on your Mac should be enough to get SSH connected to access the Pi. If you customised the system username/password when you flashed the image in the RPi imager, use those credentials, otherwise the default is pi with password raspberry.

Raspberry Pi Documentation - Remote access

I'm assuming I can't do this while a print is running, so a couple questions while I wait for it to finish.

1.) Don't laugh...; in the terminal do I use the "<>" when typing "@", or are those symbols just to indicate the example text?

2.) I know I changed the username, so if it's a successful connection when trying to attempt, will it prompt me for the password once I hit enter? I have a few post it notes with different usernames... If I can't get it to connect I might just flash a new image and start fresh, so I know everything is "reset" and there's not some hidden configuration I screwed up at some point. Thanks, I'll report back in a few hours once this print has finished

These are exactly the sort of "walkthrough" resources I'm looking for, I just don't know where to look. It's hard when you don't even know what search terms to use, so I appreciate it. I have a several hour-long print running right now, I'll report back when I'm able to access the Rpi again. Thank you!

They are just to indicate the example text - for example, to connect to my Pi I type ssh charlie@192.168.1.155

It will prompt you for a password regardless of whether the username is correct, but obviously unless you get both right you will be denied access.

One other point to mention is that when the password prompt shows up you will not see anything as you type - you have to just type it and press enter without seeing it.

If SSH is already enabled, then you can (attempt to) connect while your print is running. If you have to remove the microSD card to create the ssh file, then of course, you'll need to wait until the print is done.

I believe that you'll get a different error message if the ssh server isn't enabled than you will if it doesn't like the username and password you give it. Since I don't have a Mac, I can't tell you exactly what error you will get.

OK, I did it! I had to leave for a week for work, so apologies for the late reply. This is the message I got when I used your command:

"@elvisprusley:~ $ libcamera-hello --list-cameras

ERROR: the system appears to be configured for the legacy camera stack"

This seems to be a rather definitive answer, which I think is a good thing, But I'm not quite sure how to modify to apply the correct overlay.