Marvelmind for Non-GPS navigation¶
image courtesy of marvelmind.com
Ensure the Marvelmind is firmware version 5.77 (or higher) and enable the ‘Raw Distances Data’ in the Dashboard
Set the stationary beacon with the lowest address as the origin in your dashboard.
The height of every stationary beacon, from the ground, must be set on the dashboard.
The hedge should be set to output Marvelmind Protocol at baud rate of 115200.
Connecting to an autopilot¶
Set EK3_SRC1_POSXY to 4 (Beacon)
Set EK3_SRC1_VELXY to 0 (None)
Set EK3_SRC1_POSZ to 4 (Beacon)
Set EK3_SRC1_VELZ to 0 (None)
Set EK3_SRC1_YAW to 1 (Compass)
Set BCN_TYPE to 2 (means using Marvelmind system)
Set BCN_LATITUDE, BCN_LONGITUDE and BCN_ALT to match your actual location. Getting these values exactly correct is not particularly important although getting it close is required in order for the compass’s declination to be correctly looked up from the small database held within ArduPilot.
Set BCN_ORIENT_YAW to the heading from the origin beacon to the 2nd beacon. One way to capture this value is to stand at the origin holding the vehicle so that it’s nose points towards the second beacon. Read the vehicle’s heading from the HUD and enter this value into BCN_ORIENT_YAW
Set GPS_TYPE to 0 to disable the GPS
Set ARMING_CHECK to -9 to disable the GPS arming check
Connect the Autopilot to a ground station
Click on ‘freeze map’ on the dashboard
After about 1 minute the vehicle’s position should jump to the latitude, longitude you input during the configuration step (above)
Check that the vehicle’s position is relatively stable (i.e. moving around less than one meter)
Walk the vehicle around between the beacons and ensure that its position on the map updates correctly
The distance to the beacons can be found in the dataflash log’s BCN message’s D0, D1, D2, D3 fields.