Marvelmind protocol still supported?

I am trying to use the Marvelmind ultrasonic system for indoor navigation and I am currently facing some issues.

There seem to be three ways to connect ArduPilot with the MM hedgehog:

  1. NMEA protocol
  2. ublox protocol
  3. Marvelmind protocol

Please correct me if I’m wrong, but the first two seem to emulate a conventional GPS signal and pass it on to the FC, while the other one is more general and is processed in AP.

Now I managed to get the NMEA protocol running simply by hooking the MM hedgehog up and setting GPS_TYPE = 5 (NMEA). I put my GPS coordinates into MM Dashboard → Mode/Geofencing. I am getting a GPS 3D_FIX sometimes but not sufficiently often. Also there seems to be a lot of delay between the movement of the drone and the registered movement shown in MP. The delay is also way bigger than the one in the MM Dashboard.
Is there a way to make this NMEA signal more robust?

I could get any signal out of MM when changing GPS_TYPE = 2 (ublox) and changing to ublox in MM, respectively. When contacting the support, they immediately respond that the are only testing PX4 and not AP, and not much more. Has anyone here achieved a ublox signal with MM?

Finally the Marvelmind protocol which is also in the wiki Marvelmind for Non-GPS navigation — Copter documentation . I followed the instruction but couldn’t get it to work either. I saw some forum posts from 2018 but not a whole lot after that. Is this depricated?

I would appreciate any and all help I can get to have MM running the indoor GPS for AP.

Kind regards,
Felix

Marvelmind should use marvelmind protocol.
It was working when we wrote it back in 2017. but it was never precise nor reliable.

We have not used it since then

Do you remember on what version of AP it was working back then? I would then try to work with the old firmware to see if it’s just my mistake or if it really is not supported anymore.

The problem is not the AP firmware, the problem is the marvelmind side.

1 Like

Do you know what has changed on the output of the MM system since back then and why it is no longer compatible?
And can you maybe briefly explain why the NMEA protocol is also working so poorly, although the tracking seems to be fine in the MM dashboard.

On our test NMEA never delivered accurate results in any of our multiple tests, so we decided not to use it.

We asked MM to gives us raw distance data so that we could feed that directly into our EKF and get very accurate noise filtering, and improve precision. They refused to do it for a year or so, because they had other priorities.
But they eventually did it. But they did not help us incorporate it in AP. And we gave up on it because It just had too many issues.

If you work on it, make sure to get MM involved. They should help out. After all you will be increasing their sales.

I had a couple of short conversations with MM and as soon as I mentioned AP they almost immediately responded that they are testing PX4 but not AP so they can’t give me information about compatibility with AP.
I have zero experience with PX4, but I always assumed that these systems are quiet similar.
Is this not the case? Do you have any experience with PX4 and do the developers in general have contact to PX4 devs?

No, they are different.
We have contact to each other. And voth FW use MAVLink

Hello,

If you experience any issues, you can always write to us via info@marvelmind.com. We have so much information that it is nearly impossible not to do basic tracking for drones:

BR,
Maxim

@Davide_Lentini I will not invest more time on this, I did not get any support from Marvelmind, and have no intention to work on this without any help from the company that is going to profit from my free work.

Hi !
I am a MarvelMind customer and an ArduPilot enthusiast.
I purchased from them , the basic set with 4 SuperBeacons and a Mini-Rx , which I immediately placed on my drone along with an external microphone and deflector.
The placement of the beacons was very easy and in less than a week , I was able to get a very good localization , with an error of about 10-15 cm .Here is also the example of another customer :

I have yet to delve into many parts , but wanting to understand the integration of MarvelMind in ArduPilot, I happened under this thread and in particular under your post regarding the raw messages of the distance data, it is obviously a more complex topic , but it interests me a lot and I believe all other ArduPilot/MarvelMind customers.

I have received excellent support from MarvelMind , they respond to my emails even several times a day , and most importantly their documentation is open and very extensive , for example the topic of raw data I believe is contained in this extensive pdf file :

2.1.4/2.1.4.1
However, there has probably never been an opportunity by the ardupilot team to delve into this topic , to feed the raw distance data to ArduPilot’s EKF.

I repeat , they were very kind and helpful with me , it would be great if the ardupilot developers could work together with them to make the best use of their technology.

Thanks!

Hello,

since I was stuck integrating the Marvelmind system on my Ardupilot copter and I had the recources, I decided to give PixHawk + PX4 a try and was able to integrate MM successfully. Please note that I used the uBlox protocol wich has to be purchased extra from Marvelmind.

I wanted to share my setup in case anybody has the same issues:

The system consists of 6 stationary beacons + 2 mobile beacons mounted on the copter with 25 cm distance. 4 of the stationary beacons are mounted on the ceiling and form a horizontal submap for XY tracking. Two of those four are reused to build a vertical submap together with 2 additional stationary beacons that are placed on the floor. This submap is only for Z tracking. The entire covered room is about LxWxH 5x4x2.5 m^3.

I have used PX4 v1.14.3 and MM v7.910. I connected only one of the two hedgehogs (mobile beacons) to the PixHawk 6C GPS1 port. The wiring is essentially like connecting a GPS + Compass module (except the 5V power is omitted, I left out the safety switch).
image-2024-7-22_17-35-58
Resource of this image: https://marvelmind.com/pics/marvelmind_px4_integration.pdf
Part of the configuration that is described in this PDF is deprecated. I set the compass inconsitency check as well as EKF2_HGT_MODE: GPS as described in the file.

In the MM dashboard I have set the two mobile beacons to pairing mode. For the one hedge that I connected to the FC, Interfaces → Streaming output was turned to USB+UART. Please note that I used the uBlox protocol that I had to purchase extra for each of the two mobile beacons.


These settings were confirmed correct by the MM support, who I accounted for the troubleshooting.
Furthermore, I have also included my home coordinates in the modem’s tab under Geofencing.

With this configuration the hedgehog was emulating a GPS + Compass module and PX4 was able to use it for navigation. The stats were showing fixed 10 satelites and the signal was stable enough to keep the quad in a position hold mode within one meter horizontally. Vertically the stability was even better (other sensors, baro etc). Further tests will be carried out in the future once my testing environment is large enough to fly indoor missions.

Afterwards, I wanted to test the MM integration on ArduPilot again. On my other copter with a Matek H743 I freshly installed AP v4.5.4 but was not able to establish a GPS position although connected essentially in the same way and the MM system being configured as confirmed working with the PX4.

Now my questions:

Since the MM mobile beacon is sending out a ublox signal, the PX4 was never aware that it is recieving a signal from a “fake” GPS.
Why is the AP not accepting the ublox signal from MM?
Is Arducopter postprocessing the GPS + Compass signal in a more complex way than PX4 and the MM cannot deliver sufficiently good data to surpass this process or is there another issue?
Was this just my mistake? Did anyone else manage to get AP working with a emulated ublox signal?
Did anyone manage to get a indoor position from MM on Ardupilot in another way?

BR, Felix

hello @FLCNSW !

So did you make the MM works? If that so, how is the performance?

Thanks!

hello @amilcarlucas !

You know something different to MM to flight indoor with a flight plan for example?

thanks!

Hi @alberto.munizaga ,

as mentioned in my last post, I managed to have MM work with PX4 but not with ArduPilot. I haven’t recieved any new suggestions so far, thus I haven’t started any new attempts with MM + AP neither.

I am still working on improving the overall performance of the system. I have very bad z-accuracy varying up to 50m (!) and also xy-movement within 1 m^2. I am not ready to fly indoor missions yet, also due to the limited space. Once I have made a significant improvement I will update you again, probably on the PX4 forum.

1 Like