FluxGrip: Integration with ArduPilot

21 July, 2026
Discuss on Zubax Forum >
maksim.drachov
Regular

FluxGrip with standard ArduPilot

This post shows how to use FluxGrip with standard ArduCopter firmware and ArduPilot’s DroneCAN virtual-relay support. No custom firmware or Lua script is required.

Tested with Holybro Pixhawk 6X Pro and FluxGrip running 502e1f5 version of the firmware.

1. Setup

  1. Install Mission Planner.
  2. Connect the flight controller to the Windows PC over USB.
  3. Open Setup → Install Firmware
  4. Install the current stable ArduCopter firmware for your flight controller. At the time of writing this is v4.7.0, we’ll be using the quadcopter version.
  5. Reconnect the flight controller after flashing (reboot).

2. Connect FluxGrip

Connect FluxGrip to CAN1 on the flight controller. It is best to provide a separate power supply to FluxGrip to speed up switching and reduce load on the flight controller’s power rail — FluxGrip can briefly consume large current during switching (details in the docs).

3. Configure ArduPilot

In Mission Planner, open Config → Full Parameter List, connect and then press Reset to Default:

Reboot and set the following values:

CAN_P1_DRIVER   1 # Press Write Params and Refresh, the next 2 won't appear otherwise
CAN_P1_BITRATE  1000000
CAN_D1_PROTOCOL 1

This creates the following mapping:

Physical CAN1 → virtual CAN driver D1 → DroneCAN

Click Write Params, disconnect flight controller, and reconnect.

After rebooting, refresh the complete parameter list (Refresh Params). The CAN_D1_UC_ parameters should now appear. Set:

CAN_D1_UC_NODE   10
CAN_D1_UC_RLY_RT 10

CAN_D1_UC_NODE is the flight controller’s DroneCAN node ID.

Write the parameters and reboot again.

4. Verify FluxGrip communication

Once connected CAN LED on FluxGrip should blink as follows:

  • 1 solid on the left (connection is up)
  • 1 blinking (connection is active)

Go to
Open Setup → Optional Hardware → DroneCAN/UAVCAN page, select MAVLinkCAN1 and Connect.

NOTE

If FluxGrip doesn’t show up on DroneCAN/UAVCAN page, please make sure that you’ve set the parameters correctly.

If you’re using Pixhawk 6X Pro: If Missionlanner’s Data → Messages reports “Config error: Failed to update IO firmware”, ArduPilot may have stopped before initializing CAN. To bypass this issue you can set BRD_IO_ENABLE=2, but an unresolved IO-MCU problem should be accepted for flight.

5. Configure FluxGrip as a DroneCAN relay

By default, FluxGrip is configured with a hardpoint ID of zero, set:

RELAY1_FUNCTION 1 # Press Write Params and Refresh, the next 3 won't appear otherwise
RELAY1_PIN      1000 # Select Hardpoint ID 0
RELAY1_DEFAULT  2 # NoChange
RELAY1_INVERTED 0
GRIP_ENABLE     0

Click Write Params and reboot.

Note

FluxGrip does not currently allow to configure its DroneCAN hardpoint ID, if you need this functionality please reach out to maksim.drachov@zubax.com

6. Control the magnet from Mission Planner

The vehicle can remain disarmed.

  1. Connect (top-right)
  2. Open Data → Servo/Relay.
  3. Select relay number 0.
  4. Use the relay controls:
    Relay 0 High/On → grip/hold
    Relay 0 Low/Off → release

Mission planner calls the first ArduPilot relay “relay 0”, even though its parameters are named RELAY1_.

Magnet LED patterns

  • Magnet is in Detect state (Unknown): the default state upon turning on

  • Magnet is ON

  • Magnet is OFF

  • Magnet is “Turning On”

  • Magnet is “Turning Off”

If the Magnet LED is blinking rapidly, the magnet has failed to magnetize, reach out to Zubax.

Discuss on Zubax Forum >