We don’t have Ardupilot installed on the Navio2, only ROS with the mavros package. It is used to get the data stream from the IMU.
I saw in the documentation that there is an option to do a compass calibration from the Ardupilot. Is that the only way to calibrate the compass? If so, I will have to install an Ardupilot.
When the boat performs 360-degree rotation, the heading readings don’t show 360-degree turn. The range of values is roughly between 69-129 degrees. For example, heading output is ~95 degrees while the real value is 260 degrees. Another example, heading shows 69 degrees for real value of ~6 degrees.
Step by step actions:
3.1. connect the batteries, which supplies power to all systems onboard and power them all up.
3.2. there are 2 Raspberry Pi’s on the ASV. one of them is RPi 3 dedicated only for the Navio2,
and the other is RPi 4 for our ROS work environment and backseat driver.
So the second stage would be to start the mavros node on its RPi3. (using the ROS MASTER
on the other RPi4).
3.3. launch the ASV launch file of RPi4.
3.4 On the operator side, launch the operator launch file.
The heading value is calculated from the yaw value that comes out from the Navio2
magnetometer/compass. The two outputs of the yaw and the heading correspond to each other
(each one in its own convention) , so there is no mistake in calculations. Plus we have been
using the same code with other IMUs for the past couple of years with no issues.
I don’t have one available at the moment , I am working on making one ( a rough scheme) for you.
5.1 ASV computer that came with the company for low lever control ( e.g. motor controller)
5.2 Power distribution system
5.3. Axis camera
5.4 Velodyne Lidar VLP16.
5.5 2 Raspberry Pi’s
5.6 Navio2 IMU
5.7 GPS system (that can be unplugged when working indoors).
5.8 WiFi communication
Hope this help in the meantime, while working on the connection scheme for you. Let me know if you need anything else.
Also, please let me know if I have to have Ardupilot installed and if that is the only way to calibrate the compass?