Hello, I want to use the teraranger one with navio2. But when I connect it with Pi or Navio2, rasapberry Pi can detect its default address 0x30. But the reading is wrong. The system I used is https://community.emlid.com/t/beta-v4-image-with-ros-and-wi-fi-broadcast-support-for-navio-boards/4888?u=staroselskiy.
However, when I use the original operating system"NOOBS", with the same raspberry Pi, same connection, same code, only different SD card, I can get the correct reading.
Does anyone know why is that?
First of all, you should abandon the beta and switch over to the stable.
Could you please specify what do you mean by stating that reading is wrong?
I’d also like to see the output of
emlidtool once you download the latest stable. Thanks.
The reason I use beta is that I also want to use ROS at the same time.
For the wrong reading, all I get is 0xFFFFFF. Usually for this sensor, the first two bytes are for distance and the third is for checksum. I use wiringPi library and modify the library to make it read 3 bytes with one reading.
I will let you know the/ output of emlidtool once I get back to the lab tomorrow. But currently for my project, it is OK without ROS. But I hope you can develop the stable ROS system.
The newest stable supports ROS. It’s very much like Beta but more stable (pun intended)
Okay, that is strange. I guess you might change
dtparam=i2c1_baudrate=1000000 to 100000 (100Khz. Mind the zeroes!) and see if the issue persists. There’s a pretty good chance that Teraranger doesn’t support I2C Fast-mode plus (1MHz).
You are right that the default I2C of Pi is too high for teraranger one. The maximum speed for teraranger one is 400K.