It appears that this was a common problem in the past. I have read all the threads I could find related to this issue but I found no solution. If anyone could post a link to a solution I’d be eternally grateful. I spent many days trying to make my PX4Flow sensor work but with no luck.
I have Pixhawk Mini FC with AC 3.6.11 firmware (I’ll update to newer version but only if absolutely necessary) and the PX4Flow v1.3 sensor with built-in sonar range finder. I’d like to be able to use the built-in range finder but this is not a must. If need be I’ll use a lidar.
At this stage I am focused on the flow sensor.
I loaded the recommended px4flow-klt-06Dec2014.px4 firmware into the PX4Flow. The sensor connects to an I2C splitter board (with 4-wires) which connects to GPS&I2C port in the FC. It is not connected to the sonar, though there are 2 extra 6-pin receptacles on the Flow sensor board. I assume the rangefinder shares connection with the flow sensor.
After powering up from a battery I get “Bad OptFlow Health” message.
Opt_m_x, opt_m_y, and opt_qua stay at 0.
I eventually soldered +5V and common ground to the I2C splitter from an UBEC, as it was suggested by several people. This made no difference, same error message.
However, when I power the flow sensor from USB port and then boot up the FC, the opt_m_x, opt_m_y, and opt_qua show some values but these values do not change when I move the drone (I think they should). Obviously I cannot use USB port when flying.
I have FLOW_ENABLE = 1
and changed AHRS_EKF_TYPE = 3 as some people suggested, but EKF 2 did not work either.
My board orientation is AHRS_ORIENTATION = 17 (+45 deg yaw, +90 deg roll) while the flow sensor is at default orientation and set to: FLOW_ORIENT_YAW = 0
I don’t quite understand the below parameters but I think they are correct:
FLOW_ADDR = 0 (tried from 0 to 7)
RNGFND_PIN = -1 (tried all of them with no luck and went back to -1)
I’ll be happy to provide more information if anyone has questions.
Really appreciate your help.