3drobotics/solodevguide

VISION_POSITION_ESTIMATE

Closed this issue · 12 comments

Does the Solo support the VISION_POSITION_ESTIMATE message? See: https://pixhawk.ethz.ch/mavlink/#VISION_POSITION_ESTIMATE and http://dev.px4.io/external-position.html

I'm thinking (hoping?) that it does, since the Solo uses PX4 firmware?

Thanks!

Solo uses ArduPilot, not PX4.

Huh, I obviously still have a lot to learn.

  1. The question still remains, does the Solo implement the VISION_POSITION_ESTIMATE message?
  2. Follow on question - from what I've seen Solo uses PX4 and ArduPilot? eg https://github.com/3drobotics/PX4Firmware-solo
  1. No, ArduPilot doesn't support that message.
  2. I understand that it is difficult to understand, it's all the same name. There are the PX4 stack and the ArduPilot stack. In the top of the stack we have the autopilot and they are different. In the bottom we have the operating system, NuttX, and they use the same.
  1. Ok thanks.
  2. Sorry your explanation isn't clear to me. When building the firmware for the solo I see that PX4 firmware is needed, and ArduPilot is needed. This seems to conflict with your statement that Solo does not use PX4.

eg

      /home/rmackay9/GitHub/solo-ardupilot/
      /home/rmackay9/GitHub/solo-PX4Firmware/
      /home/rmackay9/GitHub/PX4Nuttx/

You are caring too much about the name. Let me try to make an analogy: both PX4 and ArduPilot are apps running on Windows. The thing is PX4 is hosted in the same repository as Windows - and that repository is called PX4Firmware.
ArduPilot is in a different repository, but it wants to use Windows so it has to link to the PX4Firmware repository.

Does that make sense?

Thats not really helping. Can you just refer to real things?

  1. I see that Solo uses Ardupilot: solo-ardupilot
  2. I see that Solo uses Nuttx (the OS that runs on Pixhawk?): PX4Nuttx

What then is solo-PX4Firmware used for?

PX4Firmware is in the middle of ArduPilot and NuttX. It contains drivers for IMUs, for example.

Thanks, thats clear. So it sounds like the name PX4 refers to both the low level firmware needed by ArduPilot, AND, it refers to an autopilot that is a substitute for ArduPilot.

Is that correct?

Yes!

And I think they changed the "Flight Core" to PX4 Pro now? But they still have their "Flight Core" inside the "Firmware" repository, which makes it confusing for people.