and changed “0.1f, 10.0f” to “0.1f, 0.5f”: R_OBS[3] = sq(constrain_float(frontend->_gpsHorizPosNoise, 0.1f, 10.0f)) + sq(posErr);
Decreasing it further makes the copter fly worse.
The goal is to have this drone fly autonomously and Marvelmind has an accuracy of ±2cm. So, something in the firmware is causing the drone to oscillate way too much.
Thanks! I am happy to answer any more questions you might have.
One of the issues is the marvelmind FW. It does not provide the RAW distances to the beacons so that we can feed them in our EKF. So until marvelmind fixes this (they know the problem) we can not do anything about it. And please change the title of your post to “Copter indoor Marvelmind accuracy”
Once they fix it, ping me and I will update the Marvelmind device driver.
No, it is not possible via marvelmind FW configuration. It is possible via new marvelmind FW. Their FW is closed source, so the only thing to do is ask them to implement it. We already did it once. Would be nice if you also do it.
The ardupilot driver code is available in:
ardupilot\libraries\AP_Beacon\
I see. I just made a post about this on their forums.
But I still have one question. So Marvelmind is supposed to be used as a GPS and that’s is why it is connected into the GPS port on the Pixhawk.
If you are pointing me to the AP_Beacon code that means that marvelmind should be used as a beacon and not as a gps?
I have seen some other people trying to use as a beacon and not having anything on the GPS connected, but that does not make much sense to me.
If you are flying indoors you do not have a GPS connected, hence the GPS serial port is free, hence we connect marvelmind there.
Is that clear ?
Yes, if we use it as a becon feeding data into our EKF we will probably get better than 2cm accuracy.
If we use it as a NMEA GPS (Marvelmind supports this already) then it only has +/- 22cm accuracy. and their NED -> lat,lon coordinate transformation is buggy, so it will probably will be a lot worse than 22cm. The higher latitude values you have the higher the error.
Hello. I posted about this on the Marvelmind forums and the post is still pending for approval.
One last question I have. You mention that the NMEA protocol provides around ±22cm of accuracy, but they advertise ±2cm and also when I look at the Marvelmind dashboard seems to be very accurate. So, is it correct to assume that the beacons tracking is pretty good, but when this information is converted to lat/lon it gets bugged?
Thanks again! Will update as soon as they provide an answer!