Skip to content

Releases: inertialsense/inertial-sense-sdk

Release 1.9.0.c

28 Jan 15:23
Compare
Choose a tag to compare
  • IMX-5 firmware v1.9.0 b1119_2022-12-16_153412
  • uINS-3 firmware v1.9.0 b2117_2022-12-16_153420
  • EVB-2 firmware v1.9.0 b60_2022-12-16_153442
  • EvalTool v1.9.0 b1491_2022-12-16_153503

BREAKING CHANGES:

  • (SDK) The following GPS status values defined in enum eGpsStatus were renamed to clarify GPS1 or GPS2 association.
GPS_STATUS_FLAGS_RTK_POSITION_ENABLED >>> GPS_STATUS_FLAGS_GPS1_RTK_POSITION_ENABLED
GPS_STATUS_FLAGS_RTK_COMPASS_ENABLED >>> GPS_STATUS_FLAGS_GPS2_RTK_COMPASS_ENABLED
GPS_STATUS_FLAGS_RTK_RAW_GPS_DATA_ERROR >>> GPS_STATUS_FLAGS_GPS1_RTK_RAW_GPS_DATA_ERROR
GPS_STATUS_FLAGS_RTK_BASE_DATA_MISSING >>> GPS_STATUS_FLAGS_GPS1_RTK_BASE_DATA_MISSING
GPS_STATUS_FLAGS_RTK_BASE_POSITION_MOVING >>> GPS_STATUS_FLAGS_GPS1_RTK_BASE_POSITION_MOVING
GPS_STATUS_FLAGS_RTK_BASE_POSITION_INVALID >>> GPS_STATUS_FLAGS_GPS1_RTK_BASE_POSITION_INVALID
GPS_STATUS_FLAGS_RTK_BASE_POSITION_MASK >>> GPS_STATUS_FLAGS_GPS1_RTK_BASE_POSITION_MASK
GPS_STATUS_FLAGS_RTK_POSITION_VALID >>> GPS_STATUS_FLAGS_GPS1_RTK_POSITION_VALID
GPS_STATUS_FLAGS_RTK_COMPASS_VALID >>> GPS_STATUS_FLAGS_GPS2_RTK_COMPASS_VALID
GPS_STATUS_FLAGS_RTK_COMPASS_BASELINE_BAD >>> GPS_STATUS_FLAGS_GPS2_RTK_COMPASS_BASELINE_BAD
GPS_STATUS_FLAGS_RTK_COMPASS_BASELINE_UNSET >>> GPS_STATUS_FLAGS_GPS2_RTK_COMPASS_BASELINE_UNSET
GPS_STATUS_FLAGS_RTK_COMPASS_MASK >>> GPS_STATUS_FLAGS_GPS2_RTK_COMPASS_MASK

BUG FIXES:

  • (IMX) Disable GPS serial port during GPS init preventing data corrupt and GPS receiver deconfiguration.
  • (SDK) Fixed bootloader and firmware update support over UART (i.e. through EVB-2).
  • (EVB2) Fixed issue that prevents flash write following bootup and evb flash config set to factory defaults.

Release 1.9.0.b

28 Jan 15:23
Compare
Choose a tag to compare
  • IMX-5 firmware v1.9.0 b914_2022-10-31_223856
  • uINS-3 firmware v1.9.0 b1995_2022-10-31_223859
  • EVB-2 firmware v1.9.0 b58_2022-10-31_223917
  • EvalTool v1.9.0 b1346_2022-10-31_223936

BUG FIXES:

  • (IMX) Fixed IMX-5 USB driver issue where data transmission gets blocked if the Tx buffer is full.

KNOWN ISSUES:

  • (SDK) IMX-5 bootloader update over DFU in Linux is currently not supported.

Release 1.9.0

28 Jan 15:22
Compare
Choose a tag to compare
  • IMX-5 firmware v1.9.0 b837_2022-10-09_215804
  • uINS-3 firmware v1.9.0 b1966_2022-10-09_215813
  • EVB-2 firmware v1.9.0 b57_2022-10-09_215833
  • EvalTool v1.9.0 b1297_2022-10-09_215857

NEW FEATURES:

  • (IMX) Software support for the IMX-5 w/ tactical grade IMU.
  • (IMX) Added GPS PPS timesync indicator flags to the hdwStatus and gps_pos_t.status fields to help users identify proper configuration and function.
  • (IMX) New attitude alignment algorithm that aligns faster and detects misalignment more reliably.

Breaking Changes:

  • (SDK DID) Several data sets defined in data_sets.h have modified to support triple IMU.
  • (IMX, SDK) Dual IMU messages (DID_DUAL_IMU, DID_PREINTEGRATED_IMU) have been consolidated into single IMU messages (DID_IMU, DID_PREINTEGRATED_IMU), utilizing onboard sensor fusion and fault detection to consolidate multiple messages.
  • (IMX, SDK) DID_DUAL_IMU_RAW renamed DID_IMU3_RAW and third raw IMU added.
  • (IMX, SDK) DID_MAGNETOMETER_1 and DID_MAGNETOMETER_2 consolidated into single output DID_MAGNETOMETER.
  • (IMX, SDK) DID_DUAL_IMU_MAG renamed DID_IMU_MAG.
  • (SDK) DID_PREINTEGRATED_IMU and preintegrated_imu_t renamed DID_PIMU and pimu_t.
  • (bootloader) The bootloader v6 must be used to upload release 1.9.0 uINS-3 and IMX-5 firmware. Systems running bootloader v5 must be updated before 1.9.0 firmware can be uploaded.

Changes:

  • (IMX, SDK) Added DID_IMU3_RAW and DID_IMU_RAW calibrated IMU output messages.

Known Issues:

  • (IMX) CAN bus is not yet supported. This will be available in a future release.
  • (IMX) Strobe input is not yet supported. This will be available in a future release.
  • (IMX) INS max output data rate is 62.5Hz (16ms period). This will be improved in a future release.
  • (IMX) RTOS task period warning may appear during operation. This is ok and will not impact performance or accuracy of the solution.
  • (EVB) Updating uINS or IMX firmware through the EVB-2 processor is temporarily not supported. This will be fixed in a future release.
  • (IMX) GPS PPS input time synchronization when using ASCII NMEA protocol is currently not supported. This will be available in a future release.
  • (IMX) EKF dynamic heading accuracy for GPS compassing may be closer to 0.4 degrees when it should be 0.1 degrees. This will be fixed in a future release.

Release 1.8.7

21 Jul 23:23
Compare
Choose a tag to compare
  • uINS-3 firmware v1.8.7 b1428_2022-07-14_233811
  • EVB-2 firmware v1.8.7 b46_2022-07-14_233837
  • EvalTool v1.8.7 b526_2022-07-14_233904

Breaking Changes:

  • (SDK) Removed namespace declartion using namespace std from header files. This may require users to add using namespace std to project files to address compiler errors.
  • (SDK) DID_MAG_CAL mag_cal_t.recalCmd renamed mag_cal_t.state. eMagRecalMode renamed eMagCalState.
  • (SDK) DID_ROS_COVARIANCE_POSE_TWIST data set created to support native ROS odometry messages.

Changes:

  • (uINS) Improved initial EKF roll and pitch estimates during transition from AHRS to NAV mode with no motion.
  • (uINS) Improved heading hold in stationary conditions when magnetometer is uncalibrated.
  • (uINS) Improved how weak GPS input is handled.
  • (uINS) Clarify magnetometer recalibration completion by adding mag_cal_t.status and eHdwStatusFlags::HDW_STATUS_MAG_RECAL_COMPLETE.

BUG FIXES:

  • (uINS) Resolved issue where mag recalibration is not automatically saved to flash.
  • (uINS) Addressed issue where mag recalibration progress indicator would not reach 100% when complete.

Release 1.8.6.d

14 Mar 17:47
89cfe8d
Compare
Choose a tag to compare
  • uINS-3 firmware v1.8.6 b1126_2022-05-13_101913
  • EVB-2 firmware v1.8.6 b46_2022-05-13_101929
  • EvalTool v1.8.6 b229_2022-05-13_101952

NEW FEATURES:

  • (uINS) Dead reckoning support for ground vehicles. Use of vehicle kinematic constraints allows for position and velocity estimation for extended periods of GNSS outage. This does not use a wheel sensor.
  • (uINS) Increased serial port 0 and 2 maximum baudrate to 9.375 Mbps and serial port 1 to 18.75 Mbps. Use RS485 for high speed serial over cables.
  • (uINS) In-field IMU calibration feature used to zero IMU biases and level INS frame with vehicle frame or mounting points.

Breaking Changes:

  • (SDK) Consolidated dual magnetometer outputs. Renamed DID_MAGNETOMETER_1 to DID_MAGNETOMETER and removed DID_MAGNETOMETER_2.
  • (SDK) Firmware update function bootloadFileEx() and four associated functions in inertialSenseBootLoader.h now returns 0 on success and -1 on failure.
  • (SDK) HDW_STATUS_BIT_FAULT in eHdwStatusFlags moved and expanded to include HDW_STATUS_BIT_RUNNING and HDW_STATUS_BIT_PASSED. These are used in hdwStatus in ins_1_t, ins_2_t, ins_3_t, ins_4_t (DID_INS_1, DID_INS_2, DID_INS_3, DID_INS_4), and sys_params_t (DID_SYS_PARAMS).

Changes:

  • (uINS) Built-In Test (BIT) improved to detect and report IMU calibration bias offset.
  • (uINS) System command added to message DID_SYS_CMD to enable zeroing of IMU calibration bias offset for gyros and/or accelerometer vertical axis.
  • (bootloader & SDK) New uINS and EVB bootloader (v5b) that adds support to uINS ser2 and makes bootloading more robust for Rugged-2. See bootloader release notes for details.
  • (CLTool) Display support for write / send only DIDs when using the -edit option.
  • (Manufacturing) Revised IMU calibration process to remove minor errors introduced by gravitational effects.
  • (uINS) Relaxed attitude unlignment detection slightly to improve tolernace.
  • (EvalTool) Added hot key "ctrl + z" to send Zero Motion command to notify EKF system is motionless.
  • (uINS) Expanded Infield Calibration vertical alignment requirements for accelerometer calibration from +-6 degrees to +-10 degrees.
  • (uINS) Infield Calibration option INFIELD_CAL_STATE_CMD_INIT_OPTION_DISABLE_REQUIRE_VERTIAL (0x00020000) created to disable vertical alignment requirement.

BUG FIXES:

  • (CLTool) Fixed TCP server send issue in Linux used for RTK base corrections.
  • (uINS) Fixed GPS velocity bug where ublox receiver incorrectly reports invalid velocity when no GPS signal is present. The bug can result in the INS fusing invalid GPS velocity.
  • (uINS) Fixed issue were factor reset command (SYS_CMD_MANF_FACTORY_RESET) would also clear sensor calibration.
  • (uINS) Fixed DID_RMC interface, allowing single field configuration to enable data streaming. Prevent RMC data on external GPS ports.
  • (uINS) Fixed SPI support on the uINS-3.2.
  • (uINS) Fixed barometer and magnetometer sensor saturation indicators and disabled EKF fusion on saturation.
  • (uINS) Fixed Infield Calibration INS rotation issue when IMU rotation (specified in DID_FLASH_CONFIG.sensorConfig, SENSOR_CFG_SENSOR_ROTATION_...) is non-zero.

Release 1.8.5

15 Jun 21:39
68893b0
Compare
Choose a tag to compare
  • uINS-3 firmware v1.8.5 b1464_2021-06-17_131222
  • EVB-2 firmware v1.8.5 b33_2021-06-17_131249
  • EvalTool v1.8.5 b136_2021-06-17_131310

NEW FEATURES:

  • (CLTool) Option "-edit [DID#]" allows editing of any DID on the uINS or EVB.
  • (CLTool) Added NTRIP support.
  • (SDK) New ISNtripRoverExample project demonstrates how to use the Inertial Sense SDK to connect to an NTRIP base station and provide RTK corrections.
  • (uINS) Improved accuracy of attitude and position tracking in the EKF when using with an external RTK-GPS w/ NMEA protocol.

Breaking Changes:

  • (CLTool) Option "-did [DID# DID#]" allows user to specify a list of DID numbers or names to be streamed. This option replaces the -msg... options (i.e. -msgINS1, -msgINS2, -msgGPS, etc.).
  • (cltool) Changed directory name to all lowercase.
  • (cltool) Changed RTK correction options -svr= to -rover= and -host= to -base=.
  • (cltool) Changed -flashConfig option to -flashCfg.
  • (SDK) OpenServerConnection() renamed to OpenConnectionToServer() and connectionString changed to new format (e.g. -rover=TCP:RTCM3:192.168.1.100:7777:mountpoint:username:password).
  • (SDK) Configuration bits in DID_FLASH_CONFIG.ioConfig and eIoConfig were remapped to remove ambiguity. This moved the GPS I/O configuration bits and added disable option for communications port ser2.
  • (SDK) Incremented protocol version second digit to reflect remapping of DID_FLASH_CONFIG.ioConfig.

CHANGES:

  • (uINS) Use high precision position (<1cm resolution) for ublox F9P receivers.
  • (uINS) Error checking added to DID_FLASH_CONFIG.ioConfig and gps settings.
  • (EvalTool) Prevent using of incorrect EvalTool w/ uINS firmware. On protocol mismatch show warning dialog and disable settings dialogs.

BUG FIXES:

  • (EvalTool) Improved how RTK base connection status is displayed in the status bar to indicate when connection is lost.
  • (SDK) Fixed issue preventing bootloader from updating firmware for baudrates other than 921600, 230400, 115200, and 2000000.
  • (uINS) Fixed BIT failure caused by CAN transceiver local echo on serial port 2.

Release 1.8.4.b

02 Apr 15:31
Compare
Choose a tag to compare
  • uINS-3 firmware v1.8.4 b1194_2021-03-30_172439
  • EVB-2 firmware v1.8.4 b30_2021-03-30_172506
  • EvalTool v1.8.4 b101_2021-03-30_172532

NEW FEATURES:

  • (uINS) Added third external serial port (serial 2) to support general communications and external GNSS receivers. This expands the number of serial ports to support two external ZED-F9P receivers and general communications w/ RTK base corrections.
  • (uINS) Added sensor frame rotation allowing users to rotate the calibrated IMU and magnetometer output in multiples of 90 degrees. See DID_FLASH_CONFIG.sensorConfig.

Breaking Changes:

  • (uINS) Enable CAN bus by setting bit IO_CONFIG_CAN_BUS_ENABLE of g_nvmFlashCfg->ioConfig. CAN bus is only avaiable on uINS-3.2 hardware and later.

CHANGES:

  • (uINS) Use high precision position (<1cm resolution) for ublox F9P receivers.
  • (EvalTool) Display EVB-2 radio PID and NID in hexadecimal rather than decimal.
  • (uINS) Adjusted manufacturing calibration check thresholds for the uINS-3.2.
  • (uINS & EvalTool) Prevent simultaneous base survey and correction output. You can only do one at a time.
  • (EVB-2) Fixed issue where stop all communications command was interfering with uINS persistent messages not changing data stream on log button press.
  • (uINS & EvalTool) Added I/O configurability including CAN, Ser2, and strobe.
  • (SDK) Added "ix" prefix to common variable type names to prevent conflicts when the inertial-sense-sdk is used.
  • (uINS CAN) Added baudrate validation and default value of 100 kbps.

BUG FIXES:

  • (uINS) Fixed issue where accelerometer sampled at 500Hz and provided redundant samples at 1KHz.
  • (uINS) Fixed I/O issue for input strobe support on uINS-3.2.
  • (SDK) Fixed csv logging of DID_GPS1_RTK_POS_REL and DID_GPS2_RTK_CMP_REL messages.
  • (SDK) Fixed ASCII NMEA message broadcast.
  • (uINS CAN) Fixed CAN config initial values loaded from flash (persistent feature).
  • (uINS) Fixed uncalibrated magnetometer heading hold feature.
  • (SDK) Fixed csv log issue when logging or copying data from more than one device.
  • (uINS, ASCII, SDK) Fixed enable streaming of PIMU and PPIMU ascii messages when using ASCB.

Release 1.8.3

19 Dec 02:47
d032ce7
Compare
Choose a tag to compare
  • uINS-3 firmware v1.8.3 b57_2020-12-15_134003
  • EVB-2 firmware v1.8.3 b13_2020-12-15_134029
  • EvalTool v1.8.3 b25_2020-12-15_134051

NEW FEATURES:

  • (EVB) Added ability to CLTool to read and write flash config parameters (EVB-2 DID_EVB_FLASH_CFG).
  • (EVB) Change IP address interface from hex to four uint8 digits.

CHANGES:

  • (EvalTool) Fixed incorrect label for DID_FLASH_CONFIG.startupNavDtMs, which now supports up to 1KHz EKF output.
  • (uINS) Adjusted EKF trust factor of RTK compassing heading based on AR ratio to improve heading tracking during weaker RTK fix.
  • (EVB-2) Added push button debouncing to prevent improper mode jumping.
  • (SDK) Changes to isolate internal autonomous Luna development from publicly released SDK.
  • (uINS) Added magnetometer bias_cal to DID_INL2_MAG_OBS_INFO so users can apply calibration externally to the uINS.
  • (docs) User manual updates.
  • (EvalTool) Changed UI layout for port and RTK configuration in GPS settings.

BUG FIXES:

  • (SDK) Fixed the LogInspector python plotting tool.
  • (SDK) Fixed Linux support for SDK firmware update in EvalTool and SDK.
  • (SDK) Fixed CLTool firmware update support.
  • (uINS) Resolved GPS driver communication support for uINS-3.2 hardware version.
  • (uINS) Fixed magnetometer recalibration issue that uses uninitialized value.

Release 1.8.2.b

02 Aug 04:03
Compare
Choose a tag to compare
  • uINS-3 firmware v1.8.2 b39_2020-11-06_112617
  • EVB-2 firmware v1.8.2 b10_2020-11-06_112646
  • EvalTool v1.8.2 b20_2020-11-06_112710

NEW FEATURES:

  • (uINS) Dual u-blox ZED-F9P support for simultaneous RTK positioning and compassing operation.
  • (uINS) General support for uINS-3.2 hardware.

CHANGES:

  • (RTK) Improved consistency of RTK fix.
  • (RTK) Disable GLONASS in RTK when RTK rover and base are identical option is set (RTKCfgBits & RTK_CFG_BITS_RTK_BASE_IS_IDENTICAL_TO_ROVER). Renamed EvalTool RTK-GPS option "Base is uINS" to "Base Identical". This feature can improve fix time if the GNSS receiver types of the base and rover are the same (e.g. both are uINS / ublox M8 receivers).
  • (uINS) Added IS communication support to ports configured for external GNSS so that system can be recovered via that same port, eliminating the need to switch to an alternate port to reconfigure the uINS.
  • (uINS) Ability to swap onboard GPS1 and GPS2.
  • (RTK) Consolidated GPS_STATUS_FIX_RTK_FIX and GPS_STATUS_FIX_RTK_FIX_AND_HOLD to only GPS_STATUS_FIX_RTK_FIX to simplify reporting of RTK fix status.
  • (uINS) Restored access to second magnetometer by renaming DID_MAGNETOMETER to DID_MAGNETOMETER_1 and restored DID_MAGNETOMETER_2.
  • (uINS) Hotfix: Reverted unnecessary poor GPS signal check that was introduced in r1.8.0.

BUG FIXES:

  • (EVB-2) Addressed packet collision issue that occurs in data routing when data from multiple ports is forwarded to single port (e.g. using RTK radio corrections and host USB with uINS ser0).
  • (EVB-2) Fixed data drop when logging to onboard SD memory card.
  • (SDK) Fixed Arduino communications example project.
  • (SDK) Restored legacy baudrate to ensure firmware update ability for older bootloaders.
  • (EKF) Fixed issue where GPS updates were incorrectly invalidated and not fused into the EKF and the EKF runs at a slower update rate. Consequentially the EKF will remain in AHRS mode. This was caused by a 32 bit single floating point precision rounding error of an IMU timestamp. This can only occur after 14 hours of runtime and depends on timing of GPS updates. This issue was introduced in release 1.8.1.

Release 1.8.1

11 May 14:28
Compare
Choose a tag to compare
  • uINS-3 firmware v1.8.1 b414_2020-05-08_132324
  • EVB-2 firmware v1.8.1 b12_2020-05-12_162601
  • EvalTool v1.8.1 b462_2020-05-12_172805

NEW FEATURES:

  • (uINS) General support for uINS-3.2 hardware.
  • (uINS) CAN interface support on the uINS-3.2 hardware.
  • (uINS) External GPS receiver support, including u-blox ZED-F9P and any GNSS that outputs standard NMEA 3 messages.
  • (uINS) ZED-F9P support.
  • (EVB-2) Ability to configure EVB-2 external serial port baud rates.
  • (LogInspector) Data plotting tool for analyzing InertialSense binary PPD files.
  • (EvalTool) Linux deb installer now available.
  • (Dual GNSS) Stationary mode added which improves heading accuracy for non-moving applications.
  • (Dual GNSS) RTK heading accuracy figure added to DID_GPS1_RTK_CMP_REL message.
  • (uINS) Max INS output data rate increased from 500Hz to 1KHz.

CHANGES:

  • (EvalTool) Auto find and open devices on startup is moved to setting.json and disabled by default. This is to prevent EvalTool hang under certain circumstances.
  • (EVB-2) Watchdog timer added to ensure continuous operation.

Breaking Changes:

  • (SDK) is_comm_parse() in ISComm.c return type is now protocol_type_t and the InertialSense binary data ID (DID) is available in the comm instance dataHdr. For example usage, see comManagerStepRxInstance() in com_manager.c.

BUG FIXES:

  • (uINS) Fix for EKF numerical stability for partial bias updates caused by non-positive definite square-root factorization. This can occur with low signal strength GPS and weak signal conditions. This issue was introduced in software release 1.7.6.
  • (RTK, Dual GNSS) Fix for INS status indicator INS_STATUS_RTK_RAW_GPS_DATA_ERROR (RTK[RAW] in EvalTool) false triggers after 7 days of operation.