There doesn’t seem to be much information about connecting a distance sensor to a gopigo2 via the i2c.
Can someone tell me the easiest way to do this? I did run an i2cdetect -y 1 and it appears on 0x29. But what is the easiest way to read data from the sensor using Python? Is there a version a easygopigo3 somewhere for the gopigo2?
The distance sensor is indeed supported on the GoPiGo2. You have two choices:
- There’s easygopigo (although it’s not as well documented as easygopigo3, it does exist)
Easygopigo and easygopigo3 offer similar APIs with a couple of differences. Mostly they are the same.
import easygopigo as easy
gpg = easy.EasyGoPiGo()
distance_sensor = easy.DistanceSensor(port="I2C",gpg=gpg)
- You can use the distance sensor code itself and use a lower level library with more functionality. https://github.com/DexterInd/DI_Sensors/blob/master/Python/di_sensors/distance_sensor.py
In either case you need to install the DI_Sensor library first. This is done for you if you have Raspbian for Robots and do a DI Software Update
Thanks for the information - very useful. I’ll do some more investigation and let you know if I have more questions. Thanks again.
Be aware that the init_“sensor” methods have not been ported to easygopigo.
If you look at ReadTheDocs you will not be able to just copy/paste the code. You will need to instantiate the distanceSensor class directly.
I need more explanation to how to use the distance sensor please.
I have been trying for two days and i just keep getting errors. Even when I try to run one of the examples in the DI_sensor directory, I get an error.
IOError: [Errno} Input/Output error
I suppose that’s the same question as in this topic, so we’ll continue the discussion over there.