Skip to content

Multiple MetaWear Support

Choose a tag to compare

@mbientlab mbientlab released this 29 Dec 08:59
· 105 commits to master since this release

Version 1.3 adds support to connect to multiple MetaWear boards, and new features and bug fixes for the temperature, gpio, haptic, and metawear service/controller classes. There are some changes to the API that users will want to carefully look over when using the release. A blog post detailing how to connect to multiple boards with the API is available on our project's page

Features

  • Support to communicate with multiple MetaWear boards
  • Thermistor mode for the temperature module
  • GPIO pin state notifications
  • Callback function to notify the user of GATT errors
  • Fixed bug that would falsely report non-existent ble device is connected on Android 4.4 devices
  • Fixed bug with the buzzer code

Known Issues

  • BluetoothGatt is not properly freed when the board disconnects on its own (i.e. out of range, pulled power etc.). This results in the gatt callbacks being called multiple times if you discard the internal state (with MetaWearController.setRetainState(false)) and reconnect to the board.
  • Work around is to either opt to retain the internal state, or use the same MetaWearController reference to close or reconnect to the board instead of retrieving a new controller form MetaWearBleService.getMetaWearController(BluetoothDevice)

Build Changes

  • Depends on Android Support Library for use of LocalBroadcastManager
    • Library is available in the Android SDK Manager, under the "Extras" section

Code Changes

Haptic

  • Fixed issue with the startBuzzer implementation which resulted from using the incorrect duty cycle value
  • Added another startMotor function to set the dutyCycle percentage

GPIO

Temperature

MetaWearController

MetaWearBleService