Precision Landing Distance - Companion Computer + Mavlink + rangefinder

Hello,

I’m running Ardupilot 4.5.1. I have a raspberry pi (zero 2w) mounted to my quadcopter, and a camera connected to the pi, acting as the image processor + companion for my FC. I am attempting precision landing based on landing messages sent over a serial connection. I can see my messages hitting the FC via Mission Planner’s MAVLink Inspector. My message looks like this:

Screenshot 2024-05-02 at 2.46.11 PM

I can see angle_x/y being updated in MAVLink Inspector, but I send a value of 0 for the distance argument. I have a rangefinder (TF-Luna Lidar) connected directly to the FC, and can see the sonarrange MP stat is updated as one would expect.

My question is: does the precision landing procedure fallback/default to the rangefinder connected directly to the FC? Or do I need to solder the rangfinder my rpi, and fetch the latest value every time the rpi sends a landing message (include rangefinder distance value in the landing message screenshotted above)?

Precision landing is not working for me currently, I’m still sifting through other prospective issues (e.g. 1. what FOV calculation should be after dropping resolution for performance reasons, and 2. I think I need to update PLND_YAW_ALIGN, as my camera is at 90/180 degree angle under the drone).