i have tried the steps from your knowledge base found here:
I have the ‘Apalis iMX8’ and the ‘Alvium 1500 Series Camera’ connected to the Ixora Carrier Board v1.1B.
I browsed to the target ‘/dev’ directory and found video0, video1, video12, video13 and video8. In the Using the example from the knowledge base mentioned above, I changed the ‘dlr-gstreamer/inference.py’ file to ‘video0’ and ‘video1’. I was able to succesfully build in HOST and push to repository; and pull in TARGET. However, i am getting nothing from my screen (see attached image). I have used several HDMI monitors already with the same empty result (see attached image)
I’ve also done the ‘docker run …’, ‘docker pull …’, ‘docker run …’ sequence mentioned in the knowledge base example without any errors from TARGET but I get empty output on my HDMI display as shown in the image above.
First of all just some clarifying questions.
First of all what release of Torizon are you using? You can get this with
cat /etc/issue on the device.
Also did you verify/validate that this camera works with Torizon, prior to trying this example? It may be a camera support issue, it depends.
Finally can you get the logs from the running container. Just need to run
docker logs <CONTAINER ID>. Perhaps the logs will shed light on exactly what’s happening.
Thank you for the response. Here are my answers to your questions.
Torizon version = 4.0. Yes, I did follow the 4.0 Tab in the knowledge base.
I was hoping that the example from the knowledge base is one way to verify/validate the camera as it seems basic. Is there anything in the Kernel logs (dmesg) that will verify connection of camera?
From the example in section ‘Running project’, I started the container with Weston:
docker run -e ACCEPT_FSL_EULA=1 -d --rm --name=weston --net=host --cap-add CAP_SYS_TTY_CONFIG -v /dev:/dev -v /tmp:/tmp -v /run/udev/:/run/udev/ --device-cgroup-rule=‘c 4:* rmw’ --device-cgroup-rule=‘c 13:* rmw’ --device-cgroup-rule=‘c 199:* rmw’ --device-cgroup-rule=‘c 226:* rmw’ torizon/arm64v8-debian-weston-vivante --developer weston-launch --tty=/dev/tty7 --user=torizon
Then pulled the application from the dockerhub to my target,
docker pull milo1116/dlr-example
Then ran the container based image.
docker run -e ACCEPT_FSL_EULA=1 --rm -d --name=dlr-example -v /dev/galcore:/dev/galcore -v /run/udev/:/run/udev/ -v /sys:/sys -v /dev:/dev -v /tmp:/tmp --network host milo1116/dlr-example
Then I typed in ‘docker logs dlr-example’ and it says ‘no such container: dlr-example’.
Please try with
docker logs milo1116/dlr-example
Hi @andrecurvello.tx :
It still doesn’t recognize per your suggestion. Please see attached.
It also shows a blank screen on my HDMI monitor.
docker logs command you actually want to use the ID of the container. The ID is usually printed after a docker run command or you can get the container ID of a container by using
docker ps -a
So the command should actually be
docker logs <CONTAINER ID>. Please try this and return the results to us so we can see what is going in with the container.
Attached is a text file of the ‘docker logs’ output. Let me know how to proceed as I am still getting a blank screen as shown in the previous screenshots.
Also, could this be happening because the Alvium camera is not supported? I reviewed your other knowledgebase which states that the Alvium camera is not supported: Apalis iMX8 Embedded Vision Kit with Allied Vision and Alvium 1500 C -500 - Allied Vision - Toradex Developer.
Please advise.link text
Thank you @jeremias.tx :
Is it also true that the Omnivision is not supported? See link: CSI Camera Module 5MP OV5640 - Main Features, Datasheets & Design Guides
The reason I am asking is that i’m looking for a CSI-2 interface for camera. Since I know that the Alvium and Omnivision (pending your confirmation) is not supported, do you have any other CSI-2 cameras would you like to recommend that would work with Torizon?
The OV5640 should be supported on the i.MX8 out of the box, last time I checked. However as that product page says this camera is end of life from us so it may be hard to get a hold of one now a days.
Do you have any other requirements with the camera? Or is CSI-2 interface the only one? If you could provide a little more details I can see what our partners have that either work out of of the box or require small changes/integration.
Ok. I plugged in an OV5640 into the system and I got error message (see attached).
Based on this knowledgebase CSI Camera Module 5MP OV5640 (Linux). Do I need a specific Apalis iMX8 version? I looked on the sticker on my Apalis iMX8 and it shows that I have v1.0B. Otherwise, what does that error message mean? Do I need some kind of converter IC (see CSI Camera Module 5MP OV5640 (Linux)) to make it work?
I am trying to get the CSI-2 to work successfully, if I can find a good reason why it cannot then I will seriously consider going with USB.
Actually what’s more important is the version of the OV5640 camera module itself. V1.1B of the camera has a hardware change that required a non-compatible software change in the kernel. Meaning our newer software probably only supports the more recent 1.1B OV5640.
Actually for the i.MX8 I believe it only ever supported the newer 1.1B and not the older 1.1A camera.
Also on another note for future continued mipi-csi support I’d recommend our partners e-con Systems: e-con Systems Inc.
They’re camera solutions have been proven to work on our hardware and software. Also I’ve been told they’re fairly responsive to questions.
Ok. I just looked and the OV5640 is indeed v1.1A which explains the problem.
Ok, thanks alot @jeremias.tx for your useful feedbacks.
I will go ahead and review the e-con Systems cameras.
Since the main issue here seems to have been hardware incompatibility I’ll go ahead and close out this post. But if you run into further issues related to this feel free to comment again, otherwise create another post with future questions/issues.
Ah I apologize I should’ve paid more attention to the camera model at the start.
But yes you are correct that this specific camera is not supported out of the box with our software. The reason being that typically Allied Vision supplied cameras require additional drivers/software. These drivers are only provided by Allied Vision out of kernel tree as far as I know.
So in short what would need to be done is that you’d need to obtain the driver source code then recompile it against the correct Torizon kernel that you plan to use. At least this is what you’d generally need to do
I can’t really say much else than I’d suggest contacting Allied Vision themselves for their driver. They might also have further comments on this.