Releases: LORD-MicroStrain/MSCL
v58.0.7
Noteworthy changes since last release (v57.2.2):
Inertial
- Added new Sample Rate type (decimation) to support inertial data sets with an unknown base rate (SampleRate::Decimation(), RateType::rateType_decimation)
- Added Bitfield class to handle reading and writing masked values within a bitfield
- Added support for reading and writing signed int8 to ByteStream, DataPoint, and Value classes
- Added reporting for DeviceStatusData::asMap() of
- gnss1PpsPulseInfo_LastTimeinMS
- gnss1PpsPulseInfo_Count
v57.2.2
Noteworthy changes since last release (v55.0.1):
Inertial
-
RENAMED InertialNode::get/setSensorToVehicleTransformation() to get/setSensorToVehicleRotation_eulerAngles() for accuracy
-
RENAMED MipTypes::Command::CMD_EF_SENS_VEHIC_FRAME_TRANS to CMD_EF_SENS_VEHIC_FRAME_ROTATION_EULER
-
CHANGED constructor MipNodeInfo(MipDeviceInfo, vector, mscl::SampleRates, mscl::SampleRates, mscl::SampleRates) to MipNodeInfo(MipDeviceInfo, vector, map<mscl::MipTypes::DataClass, mscl::SampleRates>) to better support more possible supported data classes
-
Added InertialNode::saveSettingsAsStartup() to save only specified settings to startup
-
Added basic support for 3DMGQ7-GNSS/INS and 3DMRTK (unreleased)
-
Added data set descriptors for MIP data sets GNSS 1-5 (0x91-95) to MipTypes::DataClass and DescriptorSet
-
Added class Quaternion (extends Matrix)
-
Added support for commands:
- Sensor to Vehicle Frame Rotation DCM (0x0D,0x4E)
- Sensor to Vehicle Frame Rotation Quaternion (0x0D,0x4F)
- Commanded Zero-Velocity Update (0x0D, 0x22)
- Commanded Zero-Angular Rate Update (0x0D, 0x23)
-
Fixed data response parsing for commands:
- Accel Bias (0x0C,0x37)
- Gyro Bias (0x0C,0x38)
- Capture Gyro Bias (0x0C,0x39)
- Magnetometer Hard Iron Offset (0x0C,0x3A)
v55.0.1
Noteworthy changes since last release (v52.2.1):
Wireless
- added WirelessNode poll function for supported products
- added support for G-Link-200-R and PT-Link-200
- added support for get factory calibration values for supported products (PT-Link-200)
Inertial
- added reference frame property to GeometricVector (ECEF, NED) and Position (ECEF, LLH) classes, made values private with get/set functions
- added option to get map of all present values in DeviceStatusData objects to improve usability (different values returned from Device Status command between models)
v52.2.1
v51.0.1
Noteworthy changes since last release (v48.3.5):
- RENAMED MipDataPacket::utcTimestamp() to MipDataPacket::deviceTimestamp()
- RENAMED MipDataPacket::utcTimeValid() to MipDataPacket::deviceTimeValid()
- RENAMED MipDataPacket::utcTimeFlags() to MipDataPacket::deviceTimeFlags()
- when device timestamp fields are present, MSCL now uses this information to better set the MipDataPacket::collectedTimestamp()
which helps prevent bunching up of points. - added support for inertial command Get/Set Gravity Noise Minimum (0x0D, 0x2A)
- add support for Magnetometer Capture Auto Calibration command (0x0D, 0x27)
- add support for Tare Orientation command (0x0D, 0x21)
- set timeout for Capture Gyro Bias command based on specified sampling time to allow for full 30s range
- add support for MIP Device Status command (0x0C, 0x64) for additional model numbers (previously supported only GX5-45)
- adding Timestamp::getLeapSeconds() and Timestamp::setLeapSeconds() functions for retrieving and adjusting
the number of leap seconds between GPS and UTC time used by MSCLs conversion - added a hasValidFlag() function to the MipDataPoint class for checking if the point was received with a valid flag
- fix for corrupted mip packet causing a crash when parsing fields
- fix reply byte for Magnetometer Capture Auto Calibration command (0x0D, 0x27)
- fix for Sync Sampling network logic divide by 0.0 when no channels are active
v48.3.5
Noteworthy changes since last release (v48.2.3):
- added support for Inertial Enable/Disable Measurements command (0x0D, 0x41)
- added support for Inertial Signal Conditioning Settings command (0x0C, 0x35)
- added support for Inertial Device Power States command (0x0C, 0x61)
- added support for Inertial Device Data Stream Format command (0x0C, 0x60)
- added support for Inertial GPS Dynamics Mode command (0x0C, 0x34)
- updated available transmit powers for devices
- fix for incorrect input ranges for G-Link-200-OEM 40G nodes
- fix for bug in parsing GNSS Constellation Settings response
v48.2.3
Noteworthy changes since last release (v48.0.0):
- support for fw 12.42801 on SG-Link-200 and SG-Link-200-OEM only allowing 1 low pass filter config
- added SyncNetworkInfo::startedSampling() for checking if a Node has successfully started sync sampling (response heard)
- added WirelessNode::resendStartSyncSampling, an advanced command to resend just the Start Sync Sampling command to a pre-configured Node
- fix for not parsing LDC (Non-Sync) start command correctly
- fix for raw debug data parser reporting duplicating data if not parsed by a device's data/command parser
- fix for reading the excitation voltage from eeprom in WirelessNodeConfig::apply when not necessary
- fix for accel channels available for the SHM-Link-210
v48.0.0
Noteworthy changes since last release (v44.0.2):
- added WirelessNode, InertialNode, and DisplacementNode lastDeviceState() functions to get the last known state that MSCL believes the device to be in, tracked by processing data and performing commands.
- added low battery threshold configuration for supported models/firmware
- support for TC-Link-200
- support for RTD-Link-200
- support for SHM-Link-210
- support for % memory full diagnostic packet field
- added support for more Inertial config commands:
- Magnetometer Noise Standard Deviation (0x0D, 0x42)
- Gravity Noise Standard Deviation (0x0D, 0x28)
- Accelerometer Noise Standard Deviation (0x0D, 0x1A)
- Gyroscope Noise Standard Deviation (0x0D, 0x1B)
- Hard Iron Offset Process Noise (0x0D, 0x2B)
- Soft Iron Matrix Process Noise (0x0D, 0x2C)
- Pressure Altitude Noise Standard Deviation (0x0D, 0x29)
- Accelerometer Bias Model Parameters (0x0D, 0x1C)
- Gyroscope Bias Model Parameters (0x0D, 0x1D)
- Set Reference Position (0x0D, 0x26)
see CHANGELOG.txt
in the source for a complete list of changes.
v44.0.2
Noteworthy changes since last release (v41.0.8):
- updated list of Input Ranges available for the SG-Link-200-OEM
- support for symbolic links to be used for Serial Connection Constructor (linux)
- support for Tilt sensor output mode for the G-Link-200 (for supported firmware)
- support for configuration of the derived velocity channel unit (for supported Nodes/firmware)
- support for parsing of mm/s derived data packets
- support for more Inertial commands
- poll data commands
- Altitude aiding and Pitch/Roll aiding
- Inertial Velocity and Angular Rate Zero Update commands
- Inertial Gravity Magnitude, Magnetometer Magnitude, and Magnetometer Dip Angle Error Adapative Measurement
- Declination Source, Inclination Source, and Magnetic Field Magnitude Source
- fix for some WebSocket BaseStation connections timing out too quickly
- fix for UpnpService/WsdaFinder crashing on exit in some scenarios
- fix for Sync Sampling formula to fix an issue where a Node configured to sample only derived data and at 1Hz sample rate, would get behind in sending data packets
see CHANGELOG.txt
in the source for a complete list of changes.
v41.0.8
Noteworthy changes since last release (v35.1.2):
- added support for the SG-Link-200-OEM wireless Nodes
- added support for the TC-Link-200-OEM wireless Nodes
- added support for more G-Link-200-OEM model numbers
- added the ability to get the gain value associated with a
WirelessTypes::InputRange
- added mscl.h which includes all the headers for the public interface (can be utilized in C++ instead of including individual headers)
- changed mscl::LibVersion to mscl::MSCL_VERSION to prevent a conflict on Linux builds
- fix for
DatalogDownloader
not finding the end of data when a Node was 100% full - fix for a crash when downloading logged data from a Node that only has derived data on it
- fix for uninitialized MipDataPacket variables
- fix for missing
#include <functional> in Utils.h
causing an error on some builds
see CHANGELOG.txt
in the source for a complete list of changes.