Calibration of compass and actuator. Set up of Interfaces
Introduction
This chapter explains how to calibrate your tiller pilot IMU and linear actuator.
These activities shall be performed through Bluetooth and Serial I/F and before installing Autopilot to the boat,
Connect Autopilot to different systems
Connect Autopilot to Laptop/PC via serial terminal. Check PC/ Laptop Support Tools for help.
Connect Autopilot to Fenix App via Bluetooth
Connect Autopilot to a 12V source (battery or alternative) for linear actuator calibration
Compass calibration
Fenix autopilot is compatible with Sparkfun IMU ICM20948: This IMU has the best performance among all. For calibration, Fenix_ICM_20948_Cal (Python application running on Windows/ Linux) is required.
Calibration of Sparkfun IMU ICM20948
All the steps are performed on Fenix_ICM_20948_Cal.py application running and connected via Serial port (USB) to Fenix autopilot version ICM_20948 (Sparkfun).
Connect Autopilot version ICM_20948 (Sparkfun)
Press "Scan Serial Ports" to search for a COM port where Fenix is connected. Press "Connect".
"Press receive raw data from sensors". For each sensor a different procedure shall be followed to collect raw data. Raw data will be stored in files automatically.
G - Gyroscope: Keep sensor steady and accumulate some data (10 points should be enough). Close the graphics window.
A - Accelerometer: Turn sensor to different positions, keeping each steady for a few seconds. All moves shall be smooth to avoid drifting values. About 300 points should be enough.Close the graphics window.
M - Magnetometer: Turn sensor 360º to point at the different cardinal points. About 300 points should be enough. Close the graphics window.
Press "Calculate offsets". One graphics window per sensor will be opened with the raw data stored in the files. Close each window to generate the required offsets. A NMEA sentence per sensor will be stored in new files.
Press "Send offsets to autopilot". 3 NMEA sentences (1 per sensor) will be sent to Fenix autopilot.
Press "Save offsets sent to autopilot". Offsets will be permanently stored into Fenix autopilot.
Calibration of Linear Actuator
From Virtuino App, enter Linear actuator screen and press Start Calibration.

Press "Right Arrow" button extend linear actuator up to the extension of the linear actuator which makes rudder angle to 35 degrees (35 degrees to turn starboard).
Press "Left Arrow" button to retract linear actuator up to the retraction of the linear actuator which makes rudder angle to -35 degrees (35 degrees to turn portboard).
Press "Save" button to save linear actuator offsets
Exit calibration screen pressing "Tick" button.
Configuration of OpenPlotter
Configuration of Pypilot (Optional to use as external IMU)
Pypilot installed and calibrated
Select Only compass
Select Tab connections and create connection to Signal K as proposed.
Open Signal K server
Select Plugin Config
Enable plugin "Convert Signal K to NMEA0183". Enabled: YES
Configuration of a new Serial I/F to Fenix Autopilot
Connect Fenix autopilot to an USB port
Open Serial application
Serial Devices: /dev/ttyOP_fenix
data:NMEA0183
Apply Remember device
In the Connections tab, 2 serial connection are displayed, First from Device Fenix Autopilot and second from OpenCPN:
Device /dev/ ttyACM0 alias /dev/: ttyOP_fenix data:NMEA0183
Device /dev/ ttyACM0 alias /dev/: data:NMEA0183 Connection: OpenCPN bauds 960
Configuration of OpenCPN within Openplotter
Set up additional data connections:
Signal K (set up by default)
Priority: 4
Serial I/O Protocol:
NMEA 0183
port: /dev/ttyACM0
4800 baud
Priority: 7
Select "Exit as autopilot or NMEA repeater"
Talker ID: EC
APB precision: x.xx.
Input filter: Accept only sentences: APHDM, APRSA, IIVWR, GP
Output filter: Transmit sentences: IIHDM, ECAPB, IIVWR
Network I/O Protocol: TCP (Optional, to use Pypilot as external IMU).
Address: localhost
port: 10110
Select Exit as autopilot or NMEA repeater.
Talker ID: EC
APB precision: x.xx.
Input filter: HDM, VWR
Output filter: Transmit sentences: IIHDM, IIVWR
Last updated
Was this helpful?