Community
cancel
Showing results for 
Search instead for 
Did you mean: 
DDavi52
New Contributor I
1,086 Views

Adafruit VL53L0X TOF Sensor

Jump to solution

Hi:

I am attempting to connect the Adafruit vl53l0x sensor to an Intel Edison Arduino development board with no success. The steps I've taken are:

1. Connect the v53l0x sensor to the a Arduino Uno board, download library and confirmed the sensor operates correctly. This performed correctly.

2. Connect the v53l0x sensor to the Intel Edison board. The sensor is the only connected device. The sensor is connected to the +5V from the development board. This is the same connection as on the Arduino Uno board.

3. Reboot the Intel Edison board - simply to be certain that the unit is clean.

4. Perform a "i2cdetect -y -r 6" to confirm the sensor is visible to the Edison board. The sensor is not reported.

Any suggestions would be appreciated.

Thanks

Tags (1)
0 Kudos
1 Solution
idata
Community Manager
97 Views

Hello David.H,

 

 

Thanks for reaching out!

 

 

What is happening is that the sensor is not detected because the I2C bus has not been set up yet. When using the I2C bus manually on Linux, you also have to manually set it up, you can do so with the following script:

 

 

# !/bin/sh

 

echo 28 > /sys/class/gpio/export

 

echo 27 > /sys/class/gpio/export

 

echo 204 > /sys/class/gpio/export

 

echo 205 > /sys/class/gpio/export

 

echo 236 > /sys/class/gpio/export

 

echo 237 > /sys/class/gpio/export

 

echo 14 > /sys/class/gpio/export

 

echo 165 > /sys/class/gpio/export

 

echo 212 > /sys/class/gpio/export

 

echo 213 > /sys/class/gpio/export

 

echo 214 > /sys/class/gpio/export

 

echo low > /sys/class/gpio/gpio214/direction

 

echo high > /sys/class/gpio/gpio204/direction

 

echo high > /sys/class/gpio/gpio205/direction

 

echo in > /sys/class/gpio/gpio14/direction

 

echo in > /sys/class/gpio/gpio165/direction

 

echo low > /sys/class/gpio/gpio236/direction

 

echo low > /sys/class/gpio/gpio237/direction

 

echo in > /sys/class/gpio/gpio212/direction

 

echo in > /sys/class/gpio/gpio213/direction

 

echo mode1 > /sys/kernel/debug/gpio_debug/gpio28/current_pinmux

 

echo mode1 > /sys/kernel/debug/gpio_debug/gpio27/current_pinmux

 

echo high > /sys/class/gpio/gpio214/direction

 

 

After running this script, try the i2cdetect command again and let us know how it goes.

 

 

I hope this information helps you,

 

Pedro M.

View solution in original post

1 Reply
idata
Community Manager
98 Views

Hello David.H,

 

 

Thanks for reaching out!

 

 

What is happening is that the sensor is not detected because the I2C bus has not been set up yet. When using the I2C bus manually on Linux, you also have to manually set it up, you can do so with the following script:

 

 

# !/bin/sh

 

echo 28 > /sys/class/gpio/export

 

echo 27 > /sys/class/gpio/export

 

echo 204 > /sys/class/gpio/export

 

echo 205 > /sys/class/gpio/export

 

echo 236 > /sys/class/gpio/export

 

echo 237 > /sys/class/gpio/export

 

echo 14 > /sys/class/gpio/export

 

echo 165 > /sys/class/gpio/export

 

echo 212 > /sys/class/gpio/export

 

echo 213 > /sys/class/gpio/export

 

echo 214 > /sys/class/gpio/export

 

echo low > /sys/class/gpio/gpio214/direction

 

echo high > /sys/class/gpio/gpio204/direction

 

echo high > /sys/class/gpio/gpio205/direction

 

echo in > /sys/class/gpio/gpio14/direction

 

echo in > /sys/class/gpio/gpio165/direction

 

echo low > /sys/class/gpio/gpio236/direction

 

echo low > /sys/class/gpio/gpio237/direction

 

echo in > /sys/class/gpio/gpio212/direction

 

echo in > /sys/class/gpio/gpio213/direction

 

echo mode1 > /sys/kernel/debug/gpio_debug/gpio28/current_pinmux

 

echo mode1 > /sys/kernel/debug/gpio_debug/gpio27/current_pinmux

 

echo high > /sys/class/gpio/gpio214/direction

 

 

After running this script, try the i2cdetect command again and let us know how it goes.

 

 

I hope this information helps you,

 

Pedro M.

View solution in original post

Reply