I have had this problem for some time now. Basically, I have a Lidar Lite V3 communicating through I2C protocol via the I2C port on the Pixhawk 2.1. The wiring description I am about to describe has worked on 20+ builds, but then again hasn’t worked on about 30 builds.
I start by setting the following parameters:
SENSE_EN_LL40S — I2C
EKF2_RNG_AID — enable
I have the Lidar Powered by a SEPARATE BEC (the ones that come with Pixhawk). I have a 670uF Cap between the + and - leads. This powers the lidar.
I take a jumper from the the negative side of the cap to the negative on the I2C port. I connect the SCL and SDA to the I2C port accordingly (yes I have tested that this is connected correctly).
I have tested the wiring via arduino and get sound data, but when I plug the data cable into the FC, I normally go to the Analyze page and type in DISTANCE, where the parameter DISTANCE_SENSOR_CURRENT normally shows if all is good, but It will not show on the
I guess my question is, if it works on arduino, shouldn’t it work on the Pixhawk?
I have tried connecting a ground to one of the servo rails on the PX2.1 but no luck either.
I think it could be a grounding issue but Ive tried all I can think of. Is this a common problem for the PX2.1 or is there some kind of phenomenon I am not accounting for? Thanks in advance.