We have just released Connect IQ SDK version 6.3.0, which introduces the wheelchair API, increase sampling rates for accelerometer, gyroscope and magnetometer, and the addition of the Venu 3/3s devices. There are also a handful of bug fixes that were addressed from previous SDKs.  Here is the full list of updates and changes:

General Changes

  • Update the Primates sample to use the native page indicator.
  • Add a new sample, TrueTypeFonts, to highlight the new vector font APIs.
  • Add the wheelchair API usages to the ActivityTracking sample.
  • Add non-binary gender to the UserProfile sample.
  • Allow the FPS to be set higher than 10 in the MonkeyMotion app.
  • Fix a bug where PNG images were not accurately decoded for non-GPU enabled devices in the simulator
  • Fix a bug where a deadlock could sometimes occur when installing new apps
  • Fix a bug in API level 4.x products where makeImageRequest() would return a bitmap resource instead of a resource reference.
  • Fix a bug where loading images from application storage would temporarily use app memory instead of allocating from the shared resource pool.
  • Fix a bug where getRegisteredSensors() would not return the correct enabled states for onboard hear-rate and onboard pulse-ox sensors.
  • Fix a bug where setEnabledSensors() did not work correctly for onboard heart-rate and onboard pulse-ox sensors.
  • Add a more useful error string when encountering an illegal access error on accessing an invalid class member by providing the class name and context.
  • Fix a bug where duplicate app listings could be seen after firmware updates.
  • Fix a bug where DCs were not properly invalidated after onUpdate() was called. If an app saved a reference to this DC and attempted to use it while in an invalid state, a device crash could occur.
  • Add support for setting sampling frequency to 100hz for real-time accelerometer data.
  • Add APIs for getting real-time gyroscope and magnetometer data. Gyroscope supports sampling rates up to 100hz, whereas magnetometer supports up to 50hz.

Simulator Changes

  • Add support for enhanced readability mode.
  • Add support for Archery, Mixed Martial Arts, Motor and Water sports in the activity profile dialog.
  • Add support for Overland and Trolling Motor sub sports in the activity profile dialog.
  • Add support for higher frequency sensor sampling rates.
  • Add support for wheelchair mode.
  • Add support for triggering calls to AppBase.onActive() and AppBase.onInactive().
  • Add support for non-binary gender in the user profile editor.
  • Fix issue where the touch screen could be disabled for touch only devices after running a touch and button device.
  • Fix several issues with the Menu2 implementation.
  • Adjust the toast page to better match the fr965 and fr265 implementation.
  • Allow float input for the battery remaining in days dialog.
  • Allow ANT HR sensors to connect.
  • Fix issue where the user profile editor wouldn’t allow entry for some values.
  • Wrap text in confirmation page if needed.
  • Display the device’s API level in the title bar.
  • Prevent double counting of an object’s memory in the memory viewer.
  • Fix transparent pixels being rendered as black when drawing a bitmap on 16 color palette devices.
  • Fix rendering Thai characters on certain devices.
  • Fix log in issue when trying to login to a Connect account on Windows.
  • Fix issue seen with some OAuth providers when using makeOAuthRequest() on Windows.
  • Fix simulator crash when editing app settings.

Compiler Changes

  • Fix incorrect ‘Value may not be initialized’ error after a return statement.
  • Add error message indicating that the entry point must have a module as a parent.
  • Change the error message when the optimizer fails.
  • Fix bitmap scaling to be relative to the screen size, as documented, and not the image size.
  • Fix incorrect type checking error when using Array.addAll().
  • Fix type checker incorrectly stating a value could be null after retrieving a value from a dictionary and checking that it does not equal null.
  • Add message indicating that compilation was successful.
  • Adjust the ‘Typedef Summary’ and ‘Method Summary’ sections to match the rest of the documentation when using monkeydoc.
  • Fix type casting with certain l-values.
  • Fix symbol not found error when calling an object’s instance method from within a static function of the same class.
  • Fix constant folding between char and number types.
  • Update type checker error messages to not remove duplicate types from a dictionary.
  • Apply scope checking for the background and glance portions of an app when the entire app is loaded into these processes.
  • Allow setting an equal or greater dependency on a barrel version in the manifest file.
  • Allow resource IDs to start with an underscore.
  • Fix bug when the exporting and the output path didn’t include a directory.
  • Fix incorrectly allowing a non-null class member to be set to null by assigning it to itself in initialize().
  • Fix typecheck error when using an enum that is assigned to null.
  • Fix incorrect code generation when removing the Test.assert calls from a release build.
  • Fix value being returned inside a try/catch block being modified in the finally statement.
  • Prevent a stack overflow error when returning from a finally statement.