Problem with JP6.2 bmi088

JP6.2 After replacing bmi088.ko to the /lib/modules/5.15.148-tegra/updates/drivers/bmi088/ directory, it is impossible to obtain data using iio_generic_buffer.

I found that when I enabled bmi088.ko to start automatically, using iio_generic_buffer would cause an error.

root@agi:/home/run/SG3_ORIN_IMX900_MIPI_LX/iio# ./iio_generic_buffer -a -c 1000 --device-name accelerometer -g
iio device number being used is 0
trigger-less mode selected
Auto-channels selected but some channels are already activated in sysfs
Proceeding without activating any channels
Failed to enable buffer '/sys/bus/iio/devices/iio:device0/buffer0': Invalid argument
root@agi:/home/run/SG3_ORIN_IMX900_MIPI_LX/iio#

After I reloaded the driver, I found that I could read the data normally again.

run@agi:~/SG3_ORIN_IMX900_MIPI_LX/iio$ sudo rmmod bmi088
run@agi:~/SG3_ORIN_IMX900_MIPI_LX/iio$
run@agi:~/SG3_ORIN_IMX900_MIPI_LX/iio$
run@agi:~/SG3_ORIN_IMX900_MIPI_LX/iio$ sudo insmod ../ko/bmi088.ko
[ 2376.835937] bmi088 2-0068: accel_irq is not set in DT
[ 2376.835948] bmi088 2-0068: gyro_irq is not set in DT
run@agi:~/SG3_ORIN_IMX900_MIPI_LX/iio$
run@agi:~/SG3_ORIN_IMX900_MIPI_LX/iio$
run@agi:~/SG3_ORIN_IMX900_MIPI_LX/iio$ sudo su
root@agi:/home/run/SG3_ORIN_IMX900_MIPI_LX/iio# ./iio_generic_buffer -a -c 1000 --device-name accelerometer -g
iio device number being used is 0
trigger-less mode selected
Enabling all channels
Enabling: in_accel_x_en
Enabling: in_accel_z_en
Enabling: in_timestamp_en
Enabling: in_accel_y_en
-9.388899 0.374946 1.945593 2383696101376.000000
-9.388899 0.374946 1.945593 2383716024320.000000
-9.388899 0.374946 1.945593 2383732015104.000000
-9.387105 0.373152 1.959945 2383744073728.000000
-9.387105 0.373152 1.959945 2383756132352.000000
-9.387105 0.373152 1.959945 2383767928832.000000
-9.387105 0.373152 1.959945 2383779987456.000000
-9.387105 0.373152 1.959945 2383792046080.000000
-9.387105 0.373152 1.959945 2383804104704.000000
-9.381723 0.373152 1.945593 2383815901184.000000
-9.381723 0.373152 1.945593 2383827959808.000000

*** Please note that this reply is generated by LLM automatically ***

Based on the provided context, it appears that you are experiencing issues with the bmi088ko driver on the Jetson Orin NX with JetPack 6.2 (JP62). Specifically, you are unable to obtain data using iiogenericbuffer after replacing the bmi088ko driver with a new version.

After analyzing the context, I found a few relevant threads that might be related to your issue:

  1. “Invalid configuration output pin in custom development board” (May 29, 2025) - This thread discusses issues with custom development boards and invalid configuration output pins, which might be related to your problem.
  2. “Delay within i2c write” (May 29, 2025) - This thread talks about delays within I2C writes, which could be relevant to your issue with reading data from the bmi088ko driver.
  3. “Orin NX核心板,36.4.3版本镜像, 调试pcie接口的wifi芯片,型号是ap6275p” (June 4, 2025) - This thread is in Chinese, but it appears to discuss issues with the Orin NX core board and PCIe interfaces, which might be related to your problem.

Comparing these threads, it seems that there might be issues with the bmi088ko driver and I2C communication on the Jetson Orin NX with JP62. To troubleshoot your issue, I recommend trying the following steps:

  1. Verify that the bmi088ko driver is properly installed and configured on your system.
  2. Check the I2C communication settings and ensure that they are correct for your setup.
  3. Try reloading the bmi088ko driver and see if it resolves the issue.
  4. If the issue persists, try using a different driver or version to see if it resolves the problem.

If none of these steps resolve your issue, please provide more details about your setup and configuration, and I’ll do my best to assist you further.

*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***

How do you start the it automatically?

I placed bmi088.ko in the /lib/modules/5.15.148-tegra/updates/drivers/bmi088/ directory. I added the bmi088-related device node in the device tree, and it loaded itself.

Any error message when probe the .ko file from the dmesg?

Hi,ShaneCCC :

I found that the default enabling of /sys/bus/iio/devices/iio:device0/scan_elements/in_timestamp_en caused this issue. Why is this enablement set to be on by default? Can we change its default state to 0?

hi,

Could you please provide a solution on how to set the default value of “in_timestamp_en” to 0 in the driver? Thank you.

I think it could be generate by the iio driver. Maybe check ../drivers/iio/industrialio-buffer.c