Imx219 JNX30 device tree setup

I’m trying to interface a JNX30-LC carrier board from Auvidea with an imx219 Pi camera V2.1. The Auvidea website indicates this is possible. However I have had a number of issues getting this to work. the device tree files provided on their website reference an I2C device which as far as I can tell doesn’t exist. This is substantiated in this forum post.

Using a scope I have identified which I2C device actually corresponds to which connector on the carrier board. However I am unable to get the camera power pins to do anything. My current thinking is that I have made a mistake, or the pins are different on this carrier board. The probe function enters, and I can see output in dmesg, but it results in error -121 which is no I2C ack. This makes sense as the enable pin never comes up. we have tried using the standard pins PP,04 and PP,05 respectively, as is the standard configuration. I have tested the IMX219 with other jetsons in stock carriers, and seen success.

As it stands I don’t know which GPIO are actually attached to these cameras connectors, or if there is a mistake in my device tree configuration. I have queried Auvidea regarding this issue.

If anyone has had experience getting a pi camera interfaced with a jetson NX through this JNX30-LC board, and could assist, that would be appreciated.

hello benm12y6,

the quickest ways is consult with the vendor to confirm the verified L4T release version and also all the correspond binaries to enable the camera module.
BTW, if the board schematic differs from that for Jetson Xavier NX Developer Kit board, there must be pinmux configuration applied by the software, you should also check with the vendor for the finalize board configuration file for flashing the Xavier NX.

Thanks for getting back to me so quickly! I have followed all the vendor instructions for setting up L4T on the Jetson in a way that is supposed to work with their board. I have downloaded their binaries and flashed them to the Jetson. I have tried this on both a developer kit module, and a production modules. I have also compared their source to the stock jetpack 4.4 sources and only a few files are different, in the device tree. These files specifically reference the cameras setup with one exception.
These files are changed:

  • sources/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-p3509-0000-a00.dtsi
    To reference the below files.
  • sources/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-camera-jakku-rbpcv2-imx219.dtsi
    removes the i2c mux.
  • sources/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-camera-rbpcv2-imx219.dtsi
    Change the i2c which the camera is referenced to.

Another file is changed, but I believe that just adds features for an additional peripheral on the carrier.

As far as I am aware the provided device tree changes are incorrect, in that they reference a non-existent I2C device. when I correct them to include the correct i2c device, (based on scoping the SDA and SCL lines while running
i2cdetect -y -r X where x is each of the i2c devices) I can see the probe function entering and activity on the bus. However the pins associated with the reset line for the camera never come up. The camera driver parse_dt() function prints what the pin is. I have changed this to several possible values, and can see this information is propagated to the camera driver in dmesg. But the pin never moves. My current explanation is that the camera connectors are not connected to PP.04 or PP.05 and there is no schematic I can find which will confirm this for me. I’m hoping someone in the community has worked with this board before, and might be able to explain to me where my mistake is.

hello benm12y6,

I’ve never worked with JNX30-LC carrier board.
however, this looks like an issue of device tree. please contact with vendor for the fixes or schematic to review the settings.

For anyone who may want to look later. I believe the pin was pin number 424, PR.00. The following modification to the device tree worked for me:

In the file: sources/hardware/nvidia/platform/t19x/jakku/kernel-dts/common/tegra194-camera-jakku-rbpcv2-imx219.dtsi

  • #define CAM0_PWDN TEGRA194_MAIN_GPIO(R, 0)

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.