Skip to content
This repository has been archived by the owner on Jan 4, 2021. It is now read-only.

Releases: mbientlab/MetaWear-SDK-CSharp

Calibration and Data Fusion Support

27 Dec 08:50
Compare
Choose a tag to compare

v1.2.0 adds features to streamline the sensor fusion calibration and support for data fusion.

Changes

  • Simplified the sensor fusion calibration process with Calibrate method
    • Task only completes when IMUs are high accuracy
  • Added support to write calibration data to the sensor fusion algorithm
  • Added support for data fusion
  • Fixed bug where accounter in count mode would attempt to compute data timestamps

Calibration State Support

16 Sep 19:44
Compare
Choose a tag to compare

v1.1.0 adds support for reading the sensor fusion calibration state.

Changes

  • Added ReadCalibrationStateAsync to the ISensorFusionBosch interface
    • Only supported on boards running firmware v1.4.1 and newer

Bug Fixes and Code Reorg

14 May 08:29
Compare
Choose a tag to compare

v1.0.15 fixes null pointer and serialization issues, and reorganizes the solution such that only code relevant to the API is in this repository.

Changes

  • Fixed serialization issues (see GH-2)
  • Fixed null pointer exception that can occur when clearing log entries
  • Converted MetaWear.Test project to .NET Core library
  • Moved Win10 code to the MetaWear-SDK-CSharp-Plugin-Win10 repo

Out of Pre-Release

23 Apr 01:48
f3597e1
Compare
Choose a tag to compare

The C# SDK is finally out of the pre-release stage. SDK v1.0.0 contains code improvements as well as breaking changes with the solution hierarchy, API and how it is distributed on NuGet.

The platform agnostic portion of the SDK is now built as a standalone .NET Standard 2.0 assembly and is distributed on NuGet under the existing MetaWear.CSharp id. The Windows 10 specific code has been moved to the MetaWear.CSharp.Win10 package; developers building Windows 10 apps should install both packages to allow updating the MetaWear.CSharp package to newer versions.

Changes

  • Added feature to refer to subscribers by name
  • Updated Split component to correctly handle data processor output
  • Implemented IDataToken slicing
    • Lets you use only a portion of the data for data forwarding
  • Added power save and temp value support to IDebug interface
  • Added Odr and Range properties to the IAccelerometer interface
  • Added string variant of the Model property, ModelString
    • Returns human friendly string instead of enum
  • Changed disconnect during download to fault the task instead of cancelling it
  • Let IMU data be casted as the FloatVector type
  • Renamed time parameter to standbyTime for IBarometerBme280.Configure and IBarometerBmp280.Configure functions
  • Moved Platform namespace to reside under the Impl namespace
  • Fixed bugs with anonymous routes
  • Fixed bug with commands not being sent after an exception was thrown from a previous write characteristic attempt
  • Fixed bug with scheduling an indefinite task
    • Would instead only schedule with 255 repetitions
  • Fixed string formatting errors reported by the VS2017 code analyzer

Feature and API Update

01 Feb 23:27
Compare
Choose a tag to compare

SDK v0.4 adds additional support for existing features and also introduces breaking changes to the IRoute, IGpio and ISettings interfaces.

Changes

  • Added support for a few MMA8452Q features
    • Orientation detection and configure the power mode and high-pass filter
  • Added count mode support for the accounter processor
  • Moved subscriber related functions to the ISubscriber interface
    • The IRoute interface exposes them with the Subscribers property
  • Separated tx power from ble ad config function
  • Refactored GPIO virtual pin implementation
  • Queue the values to be written to the command characteristic to enforce the write order

Android SDK Feature Sync

15 Dec 01:21
Compare
Choose a tag to compare

SDK v0.3.0 syncs many of the features from Android SDK v3.3 and updates the Bluetooth LE code for .NET console apps on the Fall Creators Update.

This release also adds another build that targets .NET Standard 2.0. Keep in mind that the .NET Standard build is platform agnostic i.e. only the API for the MetaWear protocol is provided. Developers will need to plugin their own Bluetooth LE and I/O code.

Changes

  • Added build targeting .NET Standard 2.0
  • Added support for anonymous routes
  • Cache discovered BLE characteristics
  • Added support for tap, low/high-g, orientation, flat, and motion detection on the BMI160 and BMA255 accelerometers
  • Have IAnalogDataProducer extend from IForcedDataProducer
  • Added options to configure the BMI160 digital filters
  • Updated the Delay component to support 16 byte data
  • Modified InitializeAsync to throw an exception if it times out
  • Added TimeForResponse property

Firmware v1.3.4 Support and SDK Improvements

21 Aug 21:21
Compare
Choose a tag to compare

SDK v0.2.0 adds support for firmware v1.3.4 features, improves underlying the implementation, and expands the SDK's support of existing sensor features.

Furthermore, the serialization format has changed from the previous release and is not backwards compatible. Old states created from the previous SDK must be discarded and reserialized.

Changes

  • Added support for the BMI160 step detector algorithm, see documentation for more details
  • Added ClearDeviceCacheAsync to the Application class to remove all cached data for a board
  • Added Suspend method to the IMagnetometerBmm150 interface
    • Will only send the command on boards running firmware v1.3.4 or later
    • If Suspend is called, the magnetometer must be reconfigured before it can be used again
  • Added support for the new data processors added in firmware v1.3.4
  • Improved logging implementation to handle time rollover
  • Fixed corner case in logging implementation that would think some entries from an 800Hz data sample were duplicates and discard them
  • Fixed regex pattern for matching version strings
  • Fixed exception that occurred if the SDK initializes a cached board that now has a different firmware version
  • Updated serialization settings to preserve object references
  • Changed the folder structure of the SDK cache for UWP apps
    • Projects that upgrade to SDK v0.2 will have all previous cached data invalidated

First Release of C# SDK

05 Jul 00:00
Compare
Choose a tag to compare

The MetaWear C# SDK is now available for developers building Windows 10 apps. Unlike the previous C# wrapper classes, this SDK is fully implemented in C# and does not call into an underlying C library.

SDK documentation is available on the MbientLab website and we have tutorial apps on our GitHub page.

Note that the SDK is not yet complete though most features such as streaming, logging, and data processing are supported.