I noticed my program seems to hang on reading the temperature sensor. I tried manually: /sys/class/i2c-dev/i2c-1/device/1-0060/iio:device0$ cat in_temp_raw And the result is cat: in_temp_raw: Connection timed out My conclusion is that the brick is bricked.... edit: If I disconnect the brick the directory iio:device0 is not present.
How about seeing if the device is visible when connected should return a device at 0x60. Code: i2cdetect 1 I think the following will only work if the dtb file was changed, you can query the sensor directly (may need to replace 'c' with 'b') eg: Code: i2cget -y 1 0x60 0x0C c It should return 0xC4.
Result of scan, sees brick: Code: 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- Result of get: sudo i2cget -y 1 0x60 0x0C c Error: Could not set address to 0x60: Device or resource busy
Well the brick seems to be active because it returned a valid address, the i2cget error is because the kernel is already using the device. So to some extent its working. Unfortunately without making a change to dts file you can't test if the sensor can be queried.
To test with i2cget you would need to comment out the followings lines in imx6sx-udoo-neo.dtsi and rebuild the dts file. I'm guess this out of your comfort zone. Code: barometer: mpl3115@60 { // Brick Barometer Sensor compatible = "fsl,mpl3115"; reg = <0x60>; };
Hi Maurice, if you believe your Brick is bricked, please contact our customer care and explain your problem. We'll take care of you. If you want to make a quick check, you can disable I2C from device tree editor and test a basic sketch for that barometer.