Update (21/11/2024): We have plenty of stock of all our products, find us also in and    Shop now

How to set up the simpleRTK3B Compass with the Unicore UM982 in ArduPilot for high-precision GNSS heading

How-to-connect-simpleRTK3B-compass-to-Ardupilot-cover
How-to-connect-simpleRTK3B-compass-to-Ardupilot-cover

In this tutorial we will guide you through setting up the simpleRTK3B Compass (powered by the Unicore UM982 RTK module) to provide high-precision GNSS-based heading in your ArduPilot project.

Required hardware:

Required software:

Important things before start:

  • This tutorial is based on the simpleRTK3B Compass powered by Unicore UM980. If you have a different hardware you may need to apply some changes in this tutorial.
    We have prepared other tutorials for the simpleRTK2B Heading kit (u-blox) and simpleRTK3B Heading kit (Septentrio).
  • We have validated the tutorial with Holybro Pixhawk4
  • We have validated the tutorial with these firmware versions:
    • ArduRover 4.5.2
    • ArduCopter 4.5.2
    • ArduPlane 4.5.2

How to setup and connect the UM982 RTK Receiver with ArduPilot?

Firstly, configure simpleRTK3B Compass (UM982) receiver.

  1. Connect both GNSS antennas to your receiver. Make sure the antennas have a good view of the sky for testing functionality. Or you won’t be able to see satellites view and signal.
  2. Connect the simpleRTK3B Compass to your PC via the USB port labeled with POWER+GPS using USB-C cable.
  1. Open Uprecise. Select the COM port (If you don’t know which COM port check the device manager of your PC). At baud rate choose 115200. Press Connect.
  1. Use the following commands to transmit NMEA messages to COM1 for debugging and send NMEA messages to Pixhawk via COM3 at 1HZ.
    If a higher frequency is needed, adjust the commands (e.g., set GNGGA COM1 0.1 for a 10 Hz frequency).
    GNGGA COM1 1
    GNCSV COM1 1
    GNCSA COM1 1
    UNIHEADINGA COM1 1
    GNGGA COM3 1
    GNRMC COM3 1
    GPHDT COM3 1
    SAVECONFIG
  1. At menu bar go to Attitude, you will see heading value shown as Azimuth.

Secondly, configure the ArduPilot.

  1. Connect your Pixhawk to your computer using a USB to micro-USB cable.
  2. Open Mission Planner and connect your Pixhawk to it with COM port with baud rate 115200.
  1. Go to CONFIG–>Full Parameter List. Since the firmware versions may be different to yours, here is a list of all the parameters modified with respect to the default configuration:
  2. COMPASS_ENABLE,0
    COMPASS_USE,0
    COMPASS_USE2,0
    COMPASS_USE3,0
    EK3_MAG_CAL,5
    EK3_SRC1_YAW,2
    GPS_AUTO_CONFIG,0
    GPS_AUTO_SWITCH,0
    GPS_RATE_MS, 100
    GPS_TYPE,5
    SERIAL1_BAUD,115
    SERIAL1_PROTOCOL,5

    Press Write Params to save your settings
  1. After saving all the parameters make sure you remove the power from your autopilot by disconnecting USB cable to reset your autopilot.

Thirdly, connect the RTK UM982 heading board to your autopilot.

  1. Use the JST connector on the simpleRTK3B Compass and connect it to the TELEM1 port.
  1. Unicore heading result is the angle from True North to the Baseline of the master antenna (labelled as GPS1 on board) to the slave antenna (labeled as GPS2) in a clockwise direction. Pitch angle refers to the angle of the car or drone relative to the horizontal plane.
    Ensure that both antennas are positioned in a completely open area with a clear view of the sky, free from any windows or buildings that might obstruct its line of sight.
    Heading accuracy can be improved by increasing the baseline length (distance between the 2 antennas). In general minimum 1 meter distance (baseline length) is required to achieve satisfactory sub-degree precision under non-ideal condition.
    In practical, this is not possible for many vehicles or drones. With a good installation with 0.5 meters, you can get decent results. With 0.3 meters it’s possible to get heading, but it’s output sometimes will be a bit noisy. But it might be good enough for some applications.
  1. Power the autopilot. Open mission planner. Press CTRL+F. Go to MAVlink inspector–>GPS_RAW_INT–>yaw. The value should match the Azimuth value in UPrecise.
  1. The Yaw value of the AHRS in Mission Planner will slowly synchronize with the GPS_RAW_INT Yaw and Azimuth values in UPrecise. This process may take a few minutes.
  1. Note that the EKF takes into account the gyroscope readings, so if you rotate the autopilot without turning the entire vehicle frame (where the antennas are mounted), the heading may temporarily change. However, after a few seconds, it will correct itself and align with the GNSS-calculated heading.
    For the best results during dynamic testing, ensure that both the Pixhawk and the GNSS antennas are mounted on the same device or surface.
  1. To achieve centimeter-level precision in positioning, correction data must be transmitted to the rover. There are two main methods for delivering this correction data:
    • Using online correction service (NTRIP): In this method, the rover receives real-time corrections through the NTRIP (Networked Transport of RTCM via Internet Protocol) protocol. This method is convenient for areas with reliable internet access and eliminates the need for setting up a physical base station.
      For guidance on integrating NTRIP corrections with ArduPilot, you can follow ArduSimple’s tutorial on sending NTRIP corrections to ArduPilot.
    • Setting up a Base Station: This method is useful in areas where there is no internet access or NTRIP network available, but it requires extra equipment and setup. You can refer to ArduSimple’s tutorial on sending RTK base station corrections to ArduPilot for detailed instructions

If you want to follow this tutorial, we have all the products in stock and ready to be shipped:

If you liked this content, you can follow us on Twitter, YouTube, Facebook or LinkedIn to stay updated of content like this.

Got any questions or requests?
Contact us! We'll answer <24 hours!

Icon
Contact ArduSimple
Close

Want to learn more about GPS/RTK?

1. Our engineering team will contact you to solve any questions
2. We will keep you updated about promotions and new product releases
3.You will only hear from us when we have important news, we won’t spam your email