LibMuse 6.0.1 is a bug fix release with improved support for MuseArtifactPackets and stability while connecting. There is 1 minor API breaking change.
Download LibMuse for Android: http://developer.choosemuse.com/android
Download LibMuse for iOS: http://developer.choosemuse.com/ios
Download LibMuse for Windows: http://developer.choosemuse.com/developer-sdk-windows
Download LibMuse Unity example from http://developer.choosemuse.com/unity
Features introduced in this release:
- The application name, application version and LibMuse version are now automatically added as an annotation at the start of all .muse files created with MuseFileWriter. This can be used to identify the source and version of LibMuse that produced the file.
Issues addressed in this release:
- MuseArtifactPacket now includes a timestamp.
- The ARTIFACT message type has been added to the MessageType enumeration to identify a MuseArtifactPacket in a .muse file. Use MuseFileWriter::add_artifact_packet() to save an artifact packet in the file and MuseFileWriter::get_artifact_packet() to retrieve it.
- A warning has been added to provide more context to the failed assertion that is thrown if a Muse object is destroyed while in the connected state. Muse objects should only be destroyed while in the disconnected state but this assertion could appear if start_listening() is called while the application maintains a reference to a connected Muse object. If you maintain a local reference to a Muse object, make sure it is in the disconnected state before setting it to null.
- Exceptions raised during the connection process no longer crash the application. Now if an error is encountered, the error will be logged and the headband will return to the disconnected state.
- Fixed a crash that could arise if you tried to connect to a Muse while Bluetooth was off. Now the connection request is deferred until Bluetooth is turned on or a disconnect is requested.
- If the pairing operation fails when connecting to a Muse 2016, LibMuse will now disconnect immediately rather than waiting for the connection attempt to time out.
- run_asynchronously can be called on multiple Muse objects to simultaneously connect to more than 1 Muse headband.
- The RSSI value of a Muse is correctly returned if it is known.
- MuseManagerWindows::getInstance() has been deprecated. Use MuseManagerWindows::get_instance() instead.
- Formatting fixes for the Android documentation.
- Updated readme file with links to the Bug Reports forum and License terms.
Breaking API changes in this release:
- The constructor of MuseArtifactPacket has changed to take 4 parameters instead of 3, with the timestamp as the fourth parameter. This will only impact you if you are constructing your own instances of MuseArtifactPackets.