CAN_IMU rev.C is compatible with the SimpleBGC 32-bit Extended, Pro and CAN_MCU controllers. This is improved version of CAN_IMU (product page) and can be used as a direct replacement.


  • CAN bus* provides more reliable and error free connection compared to the I2C, not limited in length. CAN bus is supported by the "extended" family of SBGC32 controller.
  • I2C port compatible with the regular SBGC32 IMU cable and all SBGC32 controllers.
  • EEPROM to store calibration data.
  • Nex-gen  6-axis sensor ICM-42688-P from InveSense has better performance compared to the previous generations.
  • Additional I2C, SPI and UART interfaces for the external device connectivity (see the list of supported devices below).
  • PWM output for controlling an external thermal stabilization device
  • Compact size. Mounting holes are compatible with the I2C IMU and prev. version of the CAN_IMU. Optional box.
  • Factory-calibrated (accelerometer offset and scale, gyroscope offset)**

* For proper functionality of CAN IMU, you need the firmware version 2.61b2 or above.
** Factory calibrations should be transferred to the main controller using "Calibration helper" tool in the GUI


Size of the board 25×25 mm
Distance between the mounting holes 14.2 mm
Diameter of the mounting holes 3 mm


2.0" header connector pins description with alternative functions

  • PWM - PWM waveform output for termostabilisation, for future use
  • SCK, MISO, MOSI - external sensor connected by SPI
  • CS_X, CS_Y, CS_Z - "device select" pins for SPI connection. CS_X for 3-axis devices, other for connecting 1-axis gysroscopes individually.
  • RX, TX - external sensor connected by UART
  • SDA, SCL - external optional magnetometer connected by I2C
  • RST - connected to NRST pin of the external sensor (required for some models)

List of the supported external sensors

CAN_IMU supports a high-grade external sensor. It may be a high-quality gyroscope - in this case external gyroscope replaces the internal one. If device has 3-axis accelerometer, it replaces the internal accelerometer. For a complete AHRS devices, the provided attitude and heading information is used instead of the attitude/heading estimated by our internal algorithms.

  • Vectornav VN100, VN200 - AHRS + GNSS (VN200 only). Connected by UART or SPI
  • KVH 1725, 1750, 1775 - 3-axis fyber optic gysroscope + 3-axis accelerometer. Connected by UART
  • KVH 1760 - 3-axis fyber optic gysroscope. Connected by UART
  • ADXRS453 -1-axis gysroscope, connected by SPI
  • ADIS16460 - 3-axis gysroscope + 3-axis accelerometer, connected by SPI
  • STIM210 - 3-axis gysroscope, connected by UART
  • STIM300 - 3-axis gysroscope + 3-axis accelerometer, connected by UART
It's important to align external sensor's axes with the CAN_IMU axes. There is only one position allowed for each device. The reference documentation describing connection and aligning of the external sensors can be found in the "Downloads" section.


CAN IMU Rev.C CAD drawings (1Mb 16.06.2021) ADIS16460 connection (206Kb 20.07.2021) Vectornav VN100/VN200 connection (278Kb 20.07.2021) ADXRS453 connection (501Kb 20.07.2021) KVH17xx series connection (318Kb 6.02.2020) STIM210 (STIM300) connection (497Kb 14.09.2021)


CAN IMU Firmware v.1.32 (38Kb 20.07.2021)

  • Support external sensors ADIS16460, Vectornav VN100, VN200 (UART)*, STIM210 (UART), STIM300 (not tested)
  • Bugfix: was not working as 2nd frame IMU

* Vectornav ext. sensor support is implemented starting from 2.71b0 main firmware

How to upgrade firmware

To upgrade a firmware in the CAN module, connect module by CAN interface to the board, connect the board to a PC and run SimpleBGC32 GUI. It's better to not connect a battery.

  1. Go to "Upgrade" tab, open "Connected modules" tab. Press the "Refresh" button to load information about modules.
  2. Select a required module from the list. GUI will show current hardware, firmware and bootloader versions for each module (excepting GUI prior to 2.62: it shows hardware and bootloader version only).
  3. Browse for the file containing new firmware. Be careful, flashing improper file will make the device "bricked" and it will be hard to make it alive.
  4. Press "Flash" button to write firmware.
  5. Reconnect USB to restart gimbal controller and let him see changes.
  6. Connect GUI and repeat steps 2, 3 to check that new firmware is working and whole system operates normally.

Information regarding upgrading firmware over I2C interface will be available later.

1 If sensor is connected by the I2C interface, for 100% compatibility it is required to upgrade firmware in the main controller to version 2.61b9 and above.


Type your question or comment below. Answer will be sent at your e-mail within 24 hours on workdays.

Security code
Please enter the symbols from the image to the "Code" field above.

This site uses cookies. By continuing to browse the site, you are agreeing to use of our Privacy Policy.