Release Notes 8.1

General Notes

ProSyst mBS Smart Home SDK Version 8.1 contains several new and updated modules, bug fixes and performance enhancements.

Released: March 2016

Previous Release Notes:

For older versions of our product please check our online documentation zone.
Note: The names of Test Cases and TEE Projects in mBS Smart Home SDK 8.1 have been changed in accordance with the new Naming Convention.

Bluetooth LE

Version of the module included in this product: 1.1.0

Changes and Bug Fixes
  • Fixed Bluetooth LE Discovery demo to build in Eclipse.
  • Fixed NullPointerException on Bluetooth LE Discovery demo uninstall.
  • Added Bundle-Description headers for Bluetooth LE bundle manifests.

Bluetooth PerAdmin

Version of the module included in this product: 1.0.1000

Changes and Bug Fixes
  • Added Bundle-Description headers for Bluetooth Peripheral bundle.

Cameras

Version of the module included in this product: 4.1.1

New Features
  • Added new driver for Edimax cameras.
  • Added new method in RecordControl for listing records only from specified storage type (e.g SD, NAS).
  • Support records from SD card for D-Link (nipca 1.9.5) cameras .
  • Support records from Network share for D-Link (nipca 1.9.5) cameras.
Changes and Bug Fixes
  • RecordControl is extended to support SD and NAS record storages.
  • Bundle com.prosyst.mbs.services.cameras.hdmadapter hangs on while 'start' operation has been executed.
  • Potential memory leak caused by RecordActuator.
  • Fixed DLink HTTPS support.
  • Fixed Demos kitman scripts.
  • Various minor bug-fixes.

Config Tree

Version of the module included in this product: 2.3.1002

Changes and Bug Fixes
  • Added system property for backup alias provider.
  • Fixed StackOverflowError when ConfigNode.setProperty and Configurable.setConfig are called with invalid parameters.
  • Fixed ConcurrentModificationException while restoring.
  • Fixed Missing OSS usage reference for jstree.

Database

Version of the module included in this product: 3.0.2000

Changes and Bug Fixes

  • Added JavaSE/compact2 as a required execution environment for the DB SQlite demo.
  • Fixed the Java SQLite native wrapper library not loading correctly on Linux bug.

DECT

Version of the module included in this product: 2.1.1

New Features
  • Added support for Flood and Door Open Close Detectors.
  • Added support for BinarySwitch.toggle().
  • The Bundle-Description header gives some more descriptive information.
Changes and Bug Fixes
  • Fixed DECT List demo project in respect to Eclipse usage.
  • Fixed test method testGetVersions() used in TEE by adding fixed delay at the end of the call.
  • Fixed HanMessage.getInterfaceMember() to return 'byte'.
  • Fixed java.lang.IllegalArgumentException on adding DCOs com.prosyst.mbs.services.hdm.deviceclasses.WakeUp and com.prosyst.mbs.services.dect.adapter.deviceclasses.DectTamperAlert.
  • Added license information in fragment bundles about jansson library usage.
  • TC configurations com.prosyst.mbs.dect-bo.cfg.xml and com.prosyst.mbs.dect-bo.demo.cfg.xml changed to reference separate windows and linux fragment bundles instead single 'dev' fragment.
  • Updated kitman scripts and test config files for the changed mBS External bundle.

DevStreams

Version of the module included in this product: 3.0.1000

Changes and Bug Fixes
  • Fixed manifests Bundle-Description headers.

eMail

Version of the module included in this product: 1.6.1001

New Features
  • Added support for multi-line 220 responses in SMTP.
Changes and Bug Fixes
  • Fixed the Web eMail Demo : Cannot add a user bug.
  • Fixed the SMTP error code in SMTPException.
  • Cached .eml sent mails are now deleted immediately after sending.
  • Fixed incorrect dependencies in the demo kitman script.

EnOcean

Version of the module included in this product: 1.4.1001

Changes and Bug Fixes
  • Fixed a crash of EoLink.
  • Fixed a problem with the EnOcean simulator kitman script.

Functional Item Management

Version of the module included in this product: 2.0.1001

New Features
  • AbstractFunctionalItem has own string representation using the main objectClass, UID, name, tags and attributes.
  • Metadata API methods return empty collections and maps instead of null, if there are no elements added.
  • Javadoc improvements aimed at providing more detailed information.
  • java.lang.Number creation is enabled because of the TypeFactory added for it. Now it can be used as writable property type and as operation parameter type.
Changes and Bug Fixes
  • FunctionalItemHelper.findClass() no longer requires org.osgi.framework.AdaptPermission. Only org.osgi.framework.AdminPermission is required.
  • FunctionalItem object class is now used in FunctionalItemPermision checks.
  • Tags property changed event fixed in AbstractFunctionalItem. Now it sends unmodifiable set as new property value.
  • Synchronization problems in FunctionalItemHelper registration fixed.
  • ITEM type metadata support in JSON-RPC and Pluggable commands is fixed.
  • Operation parameters metadata print fixed in the pluggable commands.
  • Non-primitive NUMERIC type variables with null values are no longer converted to 0 (for Integer, Long, etc..) or 0.0 (for Float and Double). This applies to Boolean objects as well (a null Boolean is no longer converted to Boolean.FALSE).
  • Functional Item Interfaces and beans metadata validation improvements.

JavaScript Library

New Features

  • Detection of the WebSocket connection state enabled.
    • New default options added to the WebSocket adapter and constructor - system event topic, timeout, system event timeout multiplier.
    • The configuration passed to the constructor function now takes an additional parameter with name ping of type object. The object may have the following properties: on, notifyOnPing, topic, timeout, checkIntervalToTimeoutRatio, timeoutProperty. The ping topic will be automatically added if on is set to true. If the user uses the URL configuration and not topic and filter, it will be his responsibility to properly include the ping topic in the URL.

Changes and Bug Fixes

  • The com.prosyst.mbs.fim.web.js is changed to com.prosyst.mbs.fim.web.jslib.
  • FIM JavaScript Library is available as JavaScript development library resource in runtime/osgi/lib/web/fim.
  • The FIM JSON-RPC service is not tracked by default. To enable remote service tracking the trackRemoteService option should be set true on constructing a FunctionalItemManager/DataService instance.
  • Incorrect FIM JSON-RPC service detection fixed. FIM Web Admin hang out when running without Policy Admin bundles was resolved because of this bug fix.
  • WebSocket and LongPolling port setting is fixed. location.port was string instead of number.

Framework

Version of the module included in this product: 8.1.1003

Core

New Features
  • Added support for installing bundles using the eclipse reference location.
  • Added support for Conditions that are implemented outside the core framework.
  • Added support for osgi.native namespace from OSGi R6.
  • Added info command for framework uptime and framework start time.
  • Enhanced debug info for unresolved packages, when resolving fails.
  • Java 9 execution profile support added.
  • Enhanced debug in StartupWatchdog.
  • ThrowableWrapper extended with information for the class name of the wrapped exception.
  • Platform State debug messages show real names instead of numbers.
  • Enhanced bundle class loading for lazily activated bundles, when class loading takes place in another thread during BundleActivator.start(BundleContext) execution.
  • Extended the asynchronous watchdog operations in FrameworkAccess (start and update) with the options to:
    • stop the operation when a bundle throws an exception in start/update
    • stop the operation when a bundle hangs in start/update
    • specify a custom timeout for the hang check
Changes and Bug Fixes
  • Removed duplicate measurement logs for bundle starting.
  • Fixed NullPointерException in PackagesManager.prepareCapabilityTable.
  • Implemented better protection of access to bundleWires variable.
  • Fixed memory leak with unreleased bundle loaders.
  • Fixed memory leak for BundleStarter thread of StartupWatchdog.
  • Added missing privileged blocks, where it was required.
  • Multiple fixes in the framework startup watchdog.
  • Fixed NullPointerException in BundleLoader.unload.
  • Fixed NullPointerException in PackagesManager.resolveInfoChanged.
  • Fixed NullPointerException while stopping the framework.
  • Improved ServiceRegistration.toString() to provide more detailed message for developers.
  • Fixed memory leak in ContextFinder.
  • Fixed NoClassDefFoundError on stop of dependent bundle using a class from the uninstalled bundle.
  • Fixed ArrayIndexOutOfBoundsException in BundleImpl.eventMonitors.
  • Fixed memory leak with remaining resolver hook objects.
  • Added support to correctly for running JUnit testcases with PaxExam.
  • The fw.debug command now also changes the framework log level to debug.
  • Improved log messages in multiple places. The messages are not logged, if the log level is not enabled.
  • Fixed some security issues in ProxyCondition & Functional Groups.
  • Fixed NullPointerException in BundleImpl.update0(), when invoking Bundle.update() and Bundle.uninstall() in parallel.
  • Fixed Java security incorrectly preventing calls to PropertyUtils.getProperty(...).
  • Added ability to call service hook asynchronously (register your hook with property mbs.hooks.isSync=true).
  • Fixed a problem, that Dynamic-ImportPackage header does not work when framework factory is used.
  • Fixed the cause for multiple faults for mBS restart cause mBSA restart limiter to force OS restart.
  • Fixed support for osgi.ee namespace.
  • Fixed a bug with validation of a trusted certificate chain.
  • The mbs.security.sysbundles system property now supports a comma separated list of bundle symbolic names.
  • The info.fw command provides info for product name/version.
  • Fix for loading org.json classes on Android.
  • Correct processing of system property mbs.server.jar, when org.osgi.framework.launch.FrameworkFactory is used.
  • Correct processing of required capabilities (in osgi.contract namespace, etc), while resolving javax.* packages.
  • Compact profiles are CDC/FP compatible.
  • Deadlock in framework hooks support is resolved - observed with subsystem and apache.blueprint bundles.
  • Fixed a ClassCastException in ResourceBundle.getWiredBundles().
  • Fixed osgi.contract information for bundles written incorrectly in persistent storage.
  • Fixed incorrect initialization in framework instances started via FrameworkLauncher.
  • Log level for "not loaded permission classes" changed from error to debug.
  • NullPointerException fixed, when auto backup restore is triggered and no backup aliases properties file is specified.
  • Framework version is properly set and printed at runtime.

Backup Admin

New Features
  • Added MultiBackupStatus.getCause() that contain information about the failure reason.
  • BackupAdmin support can be extended in a central place with a mapping between old bundle symbolic names and new bundle symbolic names.
Changes and Bug Fixes
  • The new package version is 1.2.
  • Fixed an issue where a failed Restore operation was incorrectly reported as successful.

JSON-RPC

Version of the module included in this product: 1.1.1001

New Features
  • The property remote.exported.methods.ignorePlatformState of the Long Poll Remote Service is now configurable via system property mbs.longpoll.ignorePS.
  • Custom heartbeat protocol is implemented.
Changes and Bug Fixes
  • Fixed an issue where client socket closing is not handled correctly for some browsers.
  • Fixed a case where an exception is thrown incorrectly when creating a subscription for remote events with an empty string for a filter.
  • Fixed incorrect manifest header in the DMT handler.
  • Fixed incorrect code returned to the browser when closing a web socket.
  • Fixed a memory leak.
  • Fixed an issue with method cache working incorrectly.
  • Trying to subscribe to remote events with a single event topic no longer throws en exception.
  • WebSockets no longer get closed when the client sends a message.
  • The system property mbs.json.debug.maxDataSize is now read again when the core bundle is restarted.
  • Javadoc added, some public methods (that should not be public) were removed from the API.
  • Introspector fixed to correctly find all public get-er and set-er methods.
  • RemoteServicePermission fixed to allow empty actions string.
  • Failure to open the standalone server will now not stop the websockets to work through the HTTP server.
  • Debug fixed to correctly check the debug levels.
  • Code re-factored.

HAM

Version of the module included in this product: 3.0.1004

New Features

  • Added a bundle descriptions into the manifest headers.
  • Added the is_satisfied property of event fired by status condition.
  • Added HAMResourceImporter which stores relation between bundle SymbolicName and its uploaded HAMResources.
Changes and Bug Fixes
  • Fixed LogicCondition, PostponeCondition and DelayCondition to propagate its source condition properties when triggered.
  • Fixed Condition path.
  • Fix resolving com.prosyst.mbs.ham.console.web-demo
  • Fix exception handling in RuleStateCommand
  • Fix unresolved dependencies in HAMResourceImporter BackupProvider when restore operation is done in same thread of registering the BackupProvider

HDM

Version of the module included in this product: 3.0.1003

New Features
  • Added license information in DCO Generator Tool.
  • HDM created and send EventAdmin events for device additional properties.
Changes and Bug Fixes
  • The javadoc in DeviceClassObject and DeviceClassObjectSpi for polling interval is updated to indicate that the interval should be in milliseconds.

  • HDM logs errors when protocol adapter calls HomeDeviceAdminSpi methods after the adapter is unregistered.

  • Fixed HDM to not allow bad adapter implementation with duplicated DCO operation names to corrupt the HDM DB.

  • Fixed memory leak in HDM MulticastHandler support.

  • Fixed description of all commands that supports device uid or zone uid. Added possibility to put only index of the device or zone list from respectively executed of the listDevices or listZones command.
  • Fixed NullPointerException when there are configurations for Devices and DeviceTemplates.

  • Fixed ConcurrentModificationException when import DeviceTemplates configurable with empty group config nodes.
  • Fixed exception messages when add home device to Simulator.

  • The number of devices per page is raised to 100.

  • The device classes in Add Device dialog are sorted.

  • Change the websocket port. The usage of deprecated websocket ports is removed.

  • Fixed incorrect visualization when moving zones.

  • Fixed bugs when HomeZone events are received.

  • Fixed visualization of device class name when there is no default metadata.

  • Fixed HomeZone invocation of device class object operation and set device class object property.

  • Fixed bugs with HomeZone properties visualization.

  • Fixed ClassCastException in Demo Adapter.
  • Fixed WebPlugin to display correct remove options when the home device is removing.
  • Fixed NullPointerExcepiton when HomeDeviceEvent is created for additional device properties in security mode.

mBProfiler

Version of the module included in this product: 6.4.1000

Known Issues

  • On Eclipse 4.2 there is known bug with perspective events which could lead to missing toolbar buttons of mBProfiler (they can be added manually).
  • On Windows 7 double click outside of item text is handled by the OS and expands/collapses the item.
  • If com.prosyst.mbs.mbprofiler.bcm.jar is not found, JVM crashes. For more information check here.
  • The support for Skelmir and PERC JVM is not stable due to problems in the VM's JVMPI implementation. The JVM may crash sometimes.
  • Sun JDK version 1.2.2 - toString() does not work.
  • Sun JDK version 1.3 to 1.8 - No sleeping state of threads in threads pane, no stack traces in monitor dumps.
  • CVM version 1.1 - Not supported on Windows.
  • phoneME Advanced MR2 - Not supported on Windows. No sleeping state of threads in threads pane, toString() does not work, no class information in heap dump.
  • IBM J9 version 2.3 to 2.4 - CPU sampling does not work, no sleeping state of threads in threads pane.
  • Skelmir CEE-J - WAIT looks like SLEEP, actual SLEEP is not sent, no threads status in monitor dump, no class loader information.
  • PERC - No sleeping state of threads in threads pane, no class loader information, monitor dump does not work, toString() does not work.

mBS Core

Version of the module included in this product: 1.1.0

New Features
  • Added support for manifests with additional sections in the manifest parser utility.
  • Added support for Bundle-NativeCode in the manifest parser utility.
  • Added support for osgi.native namespace from OSGi R6.
  • Added a Benchmark Weaver bundle. It automatically enabled benchmarks for bundles, that do not use it natively.
  • Added benchmark demo.
  • Added command to print the framework start time and uptime (system.uptime).
  • Added new API to simplify developing console commands, using annotations.
  • Added Bundles and Services command (through the "fw" group is still available).
  • API includes java sources to ease usage from Eclipse IDE.
  • Commands are separated from the implementation of the corresponding OSGi Service.
  • Improved javadoc.
  • Improved security - bundles do not have java.security.AllPermission for local permissions. AccessController.doPrivileged() is used where necessary.
  • Improved the help for fw.install command.
  • Improved the output of fw.bundle command.
  • Optimization in DB performance in regards to frequent changes in DB.
  • Support for osgi.ee namespace.
Changes and Bug Fixes
  • Added correct description for all of the bundles.
  • Added property to enable Benchmarks globally.
  • Benchmark Util is now thread safe.
  • DB does not store properly db node's value, when its value was changed without deleting the node first.
  • Added protection in Timer Service for removing stale listeners, when the providing bundle is uninstalled.
  • Fixed wrong de-initialization of timer services in the activator.
  • Fixed llegalThreadStateException when updating com.prosyst.mbs.core.threads bundle.
  • Fixed problem, that in some cases the process output cannot be read.
  • Fixed the wrong execution environment for the com.prosyst.mbs.core.process-demo.
  • Improved DB commands to support more operations.
  • Backup Admin, Benchmark, Permission Admin, Conditional Permission Admin, Fault Manager, Resource Manager, Restart Manager, Transactions and Update Manager commands were refactored.
  • Removed info.resman command - there is a resman group that is dedicated for that service.
  • Added more adequate help for the "dump" command.
  • The bundle symbolic name/version is used by default in ls output.
  • Replace Library.java in com.prosyst.mbs.core.console.jline.jar due to security vulnerability.
  • Changes in the names of the commands in the console groups according to the new API. Enhancements in the commands information and usage.
  • NullPointerException in backup console commands.
  • NullPointerException in update manager console commands.
  • API are now separated from the implementation.
  • Removed packages - com.prosyst.util.beans, com.prosyst.util.net, com.prosyst.util.session, com.prosyst.util.system, com.prosyst.util.template
  • Moved packages - com.prosyst.util.acc to Framework, com.prosyst.mbs.services.remote to com.prosyst.mbs.osgi.api.jar
  • NullPointerExeption in com.prosyst.util.ref.Log resolved.
  • Correct initialization of the debug and printOnConsole flags in the com.prosyst.util.ref.Log in security mode.
  • Contains console commands for the Framework and mBS Core bundles. The following OSGi Services have support for console commands: Backup Admin, Conditional Permission Admin, DB, Framework Commands, Fault Manager, Permission Admin, Resource Manager, Restart Manager, Transaction Manager, Update Manager.
  • NullPointerException in Backup Admin commands is resolved.
  • The result of the Framework 'groups' command is listed alphabetically.
  • Major update in Log commands. The new syntax is not compatible with the old one but allows for more powerful filtering based on bundle, time, severity of the log entries.
  • Unification of the commands group messages.
  • Dynamic-ImportPackage info is printed in the same style as the Import-Package.
  • An error is printed, when unknown command is executed.
  • console.jline requires JDK 1.5 to run.
  • Contains only Timer and Thread Pool services.
  • NullPointerException in Thread Pool Manager is resolved.
  • DB calls Backup Manager utilities in privileged blocks.
  • Measurements API are now merged into benchmark API.

mBS Mobile

Version of the module included in this product: (OMA /Mobile) 1.5.1000

Changes and Bug Fixes
  • Runtime validator project and configuration file names are unified.
  • Fixed the access to the configurations in a security mode.

mBS Externals

Version of the module included in this product: 1.0.11

New Features
  • Web console and plugins updated to the latest versions.
  • New bundles added:
    • gson.jar - A Java serialization library that can convert Java Objects into JSON and vice versa.
    • javax.inject.jar - This package specifies a means for obtaining objects in such a way as to maximize re-usability, testability and maintainability compared to traditional approaches such as constructors, factories, and service locators (e.g., JNDI). This process, known as dependency injection, is beneficial to most nontrivial applications.
    • javax.validation.jar - Top level package of the Bean Validation API.
  • Added OSGi DS annotations.
  • Added quartz library.
  • Added org.quartz-scheduler.quartz.jar
  • Added symbolic name and version for bundle org.quartz-scheduler.quartz-sources.jar
  • Added Jackson bundles.
  • Added swagger-annotations.
Changes and Bug Fixes
  • Added missing notice file in com.prosyst.mbs.external.mobile.conditions.jar
  • Fixed a notice file in org.json.jar which referred to snapshot.
  • org.apache.aries.util.jar did not contain all required messages.properties files
  • Bundle-Description of some bundles were not correct.
  • The bundle xml-apis.jar registers the xml parser services and provides them in the OSGi service registry.
  • Manifests of the Web console plug-in source jars for UPNP, DS and Package Admin are fixed to be correctly parsed.
  • The bundles org.apache.wink.client.jar and org.eclipse.jetty.websocket.client are removed from mBS Externals and moved to REST.
  • The bundle xml-apis registers the xml parser services, which it provides, in the osgi service registry.
  • Тhe metadata for retrotranslator library is fixed, so that it is not added in images built for Java5+.
  • JmDNS library updated to version 3.5.
  • Update Commons FileUpload library updated to version 1.3.1.
  • Bundle names changed:
    Old name New name
    javax.activation-1.1.1-prosyst3.jar javax.activation.jar
    javax.annotation-1.2-prosyst2.jar javax.annotation.jar
    javax.jmdns-3.4.1-prosyst2.jar javax.jmdns.jar
    javax.servlet-2.5.0-prosyst1.jar javax.servlet.jar
    javax.ws.rs-1.1.1-prosyst2.jar javax.ws.rs.jar
    javax.xml.bind-2.1-prosyst3.jar javax.xml.bind.jar
    jdom-1.1.1-prosyst1.jar jdom.jar
    jsml-1.0.14-prosyst2.jar jsml.jar
    org.apache.aries.spifly-1.0.1-prosyst3.jar org.apache.aries.spifly.jar
    org.apache.aries.util-1.1.0-prosyst.jar org.apache.aries.util.jar
    org.apache.commons-fileupload-1.2.2-prosyst2.jar org.apache.commons-fileupload.jar
    org.apache.commons-io-1.4.jar org.apache.commons-io.jar
    org.apache.felix.inventory-1.0.4.jar org.apache.felix.inventory.jar
    org.apache.felix.webconsole-4.2.8.jar org.apache.felix.webconsole.jar
    org.apache.felix.webconsole.plugins.ds-1.0.0.jar org.apache.felix.webconsole.plugins.ds.jar
    org.apache.felix.webconsole.plugins.event-1.1.2.jar org.apache.felix.webconsole.plugins.event.jar
    org.apache.felix.webconsole.plugins.packageadmin-1.0.0.jar org.apache.felix.webconsole.plugins.packageadmin.jar
    org.apache.felix.webconsole.plugins.upnp-1.0.6.jar org.apache.felix.webconsole.plugins.upnp.jar
    org.apache.felix.webconsole.plugins.useradmin-1.0.2.jar org.apache.felix.webconsole.plugins.useradmin.jar
    org.apache.wink.client-1.4-prosyst1.jar org.apache.wink.client.jar
    org.apache.xerces-2.9.1-prosyst.jar org.apache.xerces.jar
    org.eclipse.jetty.websocket.client-9.3.0-prosyst2.jar org.eclipse.jetty.websocket.client.jar
    org.json-20131018-prosyst1.jar org.json.jar
    org.kxml2-2.3.0-prosyst2.jar org.kxml2.jar
    org.objectweb.asm-5.0.3-prosyst1.jar org.objectweb.asm.jar
    org.osgi.compendium-5.0.0.jar org.osgi.compendium.jar
    org.osgi.core-5.0.0.jar org.osgi.core.jar
    org.osgi.residential-4.3.0-prosyst.jar org.osgi.residential.jar
    org.osgi.service.obr-1.0.2.jar org.osgi.service.obr.jar
    rome-1.0-prosyst3.jar rome.jar
    tar-2.5-prosyst1.jar tar.jar
    xml-apis-1.4.01-prosyst.jar xml-apis.jar

mBS OSGi

Version of the module included in this product: 1.1.1005

New Features

  • LogReaderFactory is cleaned up on close.
  • slf4j Log Entry provides a public method to retrieve the logger name.
  • Mark and unmark log console commands added instead of the removed clear command.
  • Subsystem install command description improved.
  • Subsystem install command extended with start option.
  • Integration with Apache Aries Blueprint container.
  • Garbage collection support added to remove the no longer used components.
  • Support for providing the subsystem signers is added. Integration of Subsystem with Policy Admin.
  • Synchronization inside the Subsystem implementation revised and optimized.
  • Subsystem service registration property for nested subsystems is supported.
  • com.prosyst.mbs.services.subsystem API is revised. Only public visible interfaces are left there.
  • Better integration of Subsystem with DS to allow usage of declarative services components in composite and application subsystems.
  • Removed unnecessary permission check in metatype loader.
  • Developed and/or enhanced the existing demos for the modules: Event Admin, Config Admin, Http, Log.
  • Event Admin and Log Event redispatcher use the updated osgievents package.
  • Improved verbosity of the debug messages.
  • Added support for using the default SSLServerSocketFactory in case javax.net.ssl.keyStore=NONE.
  • Client address added in the headers map, passed to the ProtocolHandler.handleUpgrade() method. Property name is mbs.http.client.address.
  • Optimized for memory during long time tests. Resolved memory leaks.
  • Support execution of subsystem ini file in a separate thread instead of the subsystem start method.
  • Improved logs when the region bundle is restored.
  • Enhanced subsystem debug information.
  • SubsystemScopedServiceFactory integration with Service Component Runtime.
  • Subsystem boot file is processed only once. It is not executed after framework restart, if it has been processed.
  • ConfigurationAdminPlugin.unbindConfigurations(Collection<Bundle>) should escape the "()", when creating a LDAPFilter.
  • Add an option to list the subsystem parent/child tree in subsystem console commands.
  • Compacted the subsystem.ls console command output.
  • Improved subsystem log message, when subsystem installation fails due to an invalid subsystem location.
  • Subsystem start, stop, uninstall support more than one parameter.
  • Declarative Services optimized for speed performance, when activating components.
  • Event Admin posts an Event, when a hanged EventHandler is detected.
  • Redundant org.osgi.framework.AdminPermission is removed, when registering EventHandler.
Changes and Bug Fixes
  • Several manifests give wrong info in their Bundle-Description headers.
  • com.prosyst.mbs.osgi.metatype.loader.jar and com.prosyst.mbs.osgi.metatype.bundle.jar - Metatype Loader should not create configuration, when mbs.mtp.osgi.createConfigs=false
  • org.osgi.test.cases.io test case no longer fails because of an incomplete test configuration.
  • Fixed memory leaks in Http Whiteboard support.
  • Fixed memory leaks in Metatype console commands and Config console commands.
  • If the log location is set to a custom one, an empty jdk/logs/logs.txt is no longer created.
  • Missing API source code is added to the Log Bundle, Metatype Bundle and Connector Bundle.
  • Fixed possible deadlock between HTTP and CM.
  • Fixed the com.prosyst.mbs.services.remote.RemoteServicePermission to accept empty string for actions.
  • Fix for Log Listener thread is not restarted.
  • Fix for Bundle events are logged regardless of the log level.
  • Fix for NullPointerException during log.bundle restart.
  • Fix for Metatype Loader should not create configuration, when mbs.mtp.osgi.createConfigs=false.
  • Fix for NullPointerException in MetaDataManagerImpl.timer.
  • Fix for IllegalArgumentException in MetaTypeUtils.convertProperties() when trying to convert a string containing comma+space separated values to Vector.
  • Fix in metatype annotations demo regarding the pid of the created test configuration.
  • Fixed validation of metatype, when the Vector has cardinality Integer.MIN_VALUE.
  • Fix for http.core lack of java.io.FilePermission in local permissions.perm file.
  • Fix for Recursive start of the http bundle when starting the framework with lazy option.
  • Protection for indefinite requests via configuration property maxReqLen.
  • Fix for NullPointerException while running integration tests.
  • Fix for HTTP server fails on big requests.
  • Fix for InputStream parameter must be closed by Subsystem.install(String location, InputStream content).
  • Fix for Subsystem installation from HTTPS, No space left on device Exception.
  • Fix for Incomplete Rollback on failed subsystem install.
  • Fix for Exception when updating subsystem.
  • Fix for Warning on downloading subsystems by using SSL.
  • Subsystem state changes persistence fixes.
  • Subsystem localization headers properly handled.
  • Deadlocks during subsystem start are resolved.
  • Fixed references to local archive repository after subsystem installation.
  • Fix for Subsystem cannot be installed from a relative location.
  • Nested subsystems properly supported in PaxExam.
  • Fixed subsystem cleanup on subsystem uninstallation.
  • Fixed the support for subsystems signed with a certificate chain not with a single self-signed certificate.
  • Resolved issues with Config demo.
  • Deadlock in config manager when executing the OSGi Configuration Manager test case.
  • Fix for a NumberFormatException is thrown on receipt of an event.
  • Resolved issues with mbs.upnp.subscription.maxRetries property.
  • Filter the devices without the device description processing.
  • Filter the devices by IP at socket level.
  • Fix for ArrayIndexOutOfBoundsException when executing deployment.bundles console command.
  • Fix for Subsystem ls command ignores the id parameter.
  • Removed ProSyst lazy support from the bundle's headers.
  • Threads are created through com.prosyst.util.common.ThreadUtils.
  • Fixes to support Event Admin execution on Android.
  • The log entries with log level DEBUG are now available, when enabled.
  • logsDir property is no longer missing in log metatype. When it is set, it is no longer ignored.
  • HTTP clears its buffers - as a result no more request errors.
  • Fixed NullPointerException in Device Manager console commands.
  • Do not block dispatching of BundleEvent-s in Subsystem hook.
  • com.prosyst.mbs.services.subsystem from subsystem.jar to api.jar to follow the general convention.
  • mbs.subsystem.state service property is properly handled.
  • Installation of remote subsystem through console commands with enabled security is properly supported.
  • Exception when installing subsystem demo is resolved.
  • IllegalArgumentException during subsystem bundle stop is resolved.
  • Does not allow installation of the same subsystem twice.
  • Deadlock, while attaching devices, is resolved.
  • NullPointerExeption when a deployment package is uninstalled while the ThreadPoolManager is stopped.
  • UPnP no longer stays in starting state if the initial configuration is not valid.
  • NullPointerException in MetatypeConfigurationLoader.processCAE, when there are no required attribute definitions.
  • Added missing ("org.osgi.framework.ServicePermission" "org.osgi.service.cm.ConfigurationAdmin" "get") in com.prosyst.mbs.osgi.http.cors
  • SubsystemScopedServiceFactory API made more generic.
  • Nested subsystem location is made unique in the whole framework.
  • Subsystem installation cycle is resolved, when there are dependencies on parent subsystems.
  • Add protection for start/stop of bundles, while performing operations on the containing subsystems.
  • Update subsystem state on changes of the states of the constituents' bundles.
  • Subsystem update behavior optimized in regards to executed resolve operations.
  • Subsystem hooks should call security sensitive operations in doPrivileged blocks.
  • On subsystem bundle restart the subsystem services for already installed subsystems should be registered before their bundles are started.
  • Invalidate subsystem instances after stopping the Subsystem bundle.
  • Register SubsystemUtils after processing subsystem persistent storage.
  • Integration of subsystem boot processing with the PlatformState service.
  • connector.core exports a missing package.
  • The service for unsatisfied component is not registered.
  • DMT must attach the mounted children if and only if the request is on the same level.
  • Log an error, when a configuration cannot be created successfully from metatype annotations - com.prosyst.mbs.services.metatype.annotations.Configurable.createConfigurable(Class, Dictionary/Map) throws an error.
  • Fixed ManagedServiceFactory update. It is no longer called twice, when framework is restarted with a built storage.
  • Fixed NullPointerException when starting http.cors bundle.
  • Fixed Metatype Loader metadata cache to be updated properly during metadata changes.
  • Added support for metadata version in the name of the external metadata file.
  • SecurityEvent equals and hashcode are overriden to take into account both permissions and topic.
  • Add support for passing object parameters to ProtocolHandler services.
  • Fixed loading external metatype files not to take into account the path, but only the name of the file in the configs folder.
  • Fixed Java SQLite native wrapper library not loading correctly on Linux

Removed

  • The usage of HttpBindingListener in HttpUpgrade has been removed.

mBS Util

Version of the module included in this product: 1.0.1000

New Features
  • Added a new command group 'docs' that will allow the users to export documentation files about the currently active console commands. It supports text, xml and DITA formats.
  • There is a new inventory printer, that allows developers to run console command and includes it's output in the exported inventory ZIP.
  • New system property mbs.useradmin.default.charEncoding with default value UTF8 - specifies the default char encoding used when converting a String credential to byte[] in SimpleLogin.createCredential.
Changes and Bug Fixes
  • Added correct description for all of the bundles.
  • All runtime validator files are now named according the conventions and resemble the other modules.
  • Removed the benchmark bundle, which was obsoleted by the console commands and web console plugins.
  • Most of the inventory printers now support exporting of information in JSON format.
  • All kitman scripts were updated, because of a change in the naming of the external libraries used in the product.
  • Fixed Web Admin Console pages missing after install, deinstall and install again of the Web Console plugins kitman scripts.
  • Updated built-in commands.
  • Users can set mbs.useradmin.default.password system property with a hashed value, instead of the plain-text password.

mBS Web

Version of the module included in this product: 1.1.2

New Features
  • Added new top plugin, that allows developers to monitor the threads and their CPU usage.
  • The API now provides a list of the available libraries when opening /web/common alias.
  • Added jQuery jEC (jQuery Editable Combobox), v1.4.0 to Web API bundle.
  • Added The jQuery tooltip plugin, v1.0.0-rc3 to Web API bundle.
Changes and Bug Fixes
  • Added correct description for all of the bundles.
  • All runtime validator files are now named according the conventions and resemble the other modules.
  • Some NOTICE files were wrong. Now the correct licensing information is included.
  • Shell : The plugin is improved improved to catch the background commands output.
  • Backup Admin : Now the result after backup/restore operations is reported with more details, in more user-friendly manner.
  • DMT: removed some unused javascript libraries.
  • Backup Admin : No success message after restore operation.
  • Resource Manager : Cleaned up duplicated error message "No Resource Manager available, will not record resource usage".
  • Replaced the license loading.gif in the Resource Manager Plugin with version, that is computer generated.
  • Fixed manifest for bundle com.prosyst.mbs.web.console.top, so that its required execution environment resolves on Java SE 1.8.
  • Code refactored.

mBSA

Version of the module included in this product: 3.4.0

New Features
  • mBSA signal handler extended to handle SIGTERM signal (Linux/Mac).
  • Implemented PProcess::killTree() on Mac.
Changes and Bug Fixes
  • mBSA runtimes directory structure now follows the new structure for other modules.
  • mBSA start scripts do not support older mBSA natives (e.g. runtimes/linux/i386).
  • mBSA signal handler do not generate crash files on Ctrl+C / SIGINT (user requested signal).
  • PProcess::killTree() sends SIKGILL to ensure SIGTERM was not ignored (Linux/Mac).
  • Fixed Eclipse kill from Emulator image on Mac.
  • OS Restart plugin now respects "os.restart.internal.follow" and the system will not be rebooted if "os.restart.executable" is not defined, and internal restart is disabled.
  • RTC plugin default config changed to avoid waiting for runtime start, when a runtime stop request is pending (e.g. mbsa core exit due to signal).
  • mBS Manager plugin now respects "mbs.manager.rtc.1.kill_working_dir" property for setting the runtime kill script current directory.
  • mBSA Tooling sources are moved to mToolkit project.

Media Streams

Version of the module included in this product: 2.5.1000

Changes and Bug Fixes
  • Stops the ffmpeg process "nicely" by sending sig 15 first, then sig 9 if not terminated soon enough.

mToolkit

Version of the module included in this product: 3.7.1

New Features
  • Added support for Subsystems

    • Subsystem Editor
    • Support in IAgent
    • Support in Image Builder
    • Integration with the other mToolkit plugins
  • Separated PAR editor wizards into new category which parent is OSGi category.
  • Other minor improvements and optimizations.
  • Support for Eclipse Mars.
Changes and Bug Fixes
  • Discarded CVM VM launcher support.
  • Fixed memory leak after executing BUNDLE_OPERATION_IAgent_SWAdmin.
  • Other minor bug-fixes.
  • The warning dialog over the export wizard for overriding files the user has put in the image description was replaced by info log message.
  • Fixed support for Maven-built bundles on Eclipse Mars.

Known Issues

  • On Eclipse 4.2 there is a known bug on Save action events which could lead to unsaved changes in PAR Editor.
  • On Eclipse 4.2 the "Test on" menu is not hidden for some unsupported elements due to a bug in Eclipse.
  • On Eclipse 4.4 there is known problem which causes NullPointerException during plugin export in some cases. This problem is fixed in Eclipse 4.4 SR1.
  • Execution of TEE project files is NOT supported from Eclipse.
  • Sometimes target platforms are displaced when changing runtime location and switching to Target Platform page in preferences due to a bug in Eclipse.

Network Services

Version of the module included in this product: 2.0.1000

Changes and Bug Fixes

  • Runtime validator project and configuration file names are unified.

OMA

Version of the module included in this product: 1.4.1000

Changes and Bug Fixes
  • Updated bundle manifest descriptions.
  • Updated HTTP transport to support cookies.
  • Default system charset is used for encoding strings. UTF8 should be used instead.

Peripherals

Version of the module included in this product: 2.0.1002

New Features
  • Demos kitman scripts are extended to install the peripheral module first. Now there is no need to install it manually.
  • Improved log messaging of the driver installer bundles for more detailed driver installation status. The change affects the following bundles:
    • peripheral.driver.installer.appagent.jar
    • peripheral.driver.installer.local.jar
  • Added one more method of getting the features of a bluetooth device in Linux. If reading from the known file system locations do not succeed, the properties are read by a hciconfig request.
Changes and Bug Fixes
  • Changed TEE config xml names:
    • bundle_op*.xml becomes *-bo.cfg.xml
    • bundle_op*_demo.xml becomes *-bo.demo.cfg.xml
  • Changed TEE projects xml names:
    • bundle_op*.xml becomes *-bo.prj.xml
    • bundle_op*_demo.xml becomes *-bo.demo.prj.xml
    • prosyst_tc*_demo.xml becomes *-prj.xml
  • Changed debug log activation: Removed "periph.debug.flag=true" property that activated debug log. Now debug log is activated only by setting "peripheral.core.logLevel=4"
  • Fixed duplicated or missing configuring on initial configuring.
  • Removed misleading logs in the part of initial config.
  • Fixed memory leak of creating driver operations thread.

Policy Admin

Version of the module included in this product: 1.1.1000

New Features
  • Multiple PolicyHook services can now be registered;a new registration property "policyadmin.id.type" is introduced: a list of identity types that the hook will be used for. For backward compatibility, if the property is missing, the hook will be used for all id types that don't have an explicitly registered hook.
  • New Tee Test for the PolicyAdmin Core.
  • New IdentityProvider for Subsystems: com.prosyst.mbs.policyadmin.identity.subsystem.
Changes and Bug Fixes
  • Methods listIdentities, findIdentities and getIdentities in the PolicyAdmin impl fixed to correctly throw PolicyException when the IdentityProvider type does not exist.
  • Fixed a Stack overflow bug in the BackupProvider.
  • Removed Java5 language features from com.prosyst.mbs.policyadmin.identity.plain-demo, so that it can be OSGi/Minimum-1.2 compatible.
  • Changes in the decision-making algorithm of the default PolicyHook implementation:
    • If a Function is allowed for one parent IdentityGroup and denied for another, the result is that the Function is denied for the Identity.
    • If a Function is denied for a parent IdentityGroup, but explicitli allowed for the Identity, the result is that the Function is allowed for the Identity.

REST

Version of the module included in this product: 1.1.1000

New Features

  • Integrated swagger-jaxrs-doclet-1.1.0 for generating swagger 1.2 complaint JSON resource listings from the source code of JAX-RS resources and entities.
  • Added restdocx maven profile to enable generation of REST API documentation, the profile invokes the integrated swagger doclet and packs the REST documentation artifacts as bundle resources, bundles that contain REST documentation artifacts are marked with X-ProSyst-Restdoc-Included manifest header.
  • Integrated swagger-ui-2.1.1 for visualizing and browsing the available REST APIs documentation and manually sending requests towards the underlying REST web services.
  • Added navigation panel in swagger UI which hierarchically organizes links to the available REST APIs documentation, the hierarchy of the links is based on the root REST API paths specified in the resource listings.
  • Added options for configuring username and password for basic authentication in swagger UI:
    • added separate text fields for user and password
    • replaced Explore button with a button to generate and add Authorization HTTP header using basic authentication
  • Added mechanism for dynamic discovery and loading of REST API documentation via OSGi services. The mechanism is based on the white board pattern, bundles that wish to dynamically generate and provide REST API documentation may do so by registering a DocGeneratorService which provides REST API documentation artifacts in form of JSON objects based on the swagger 1.2 specification. Added DocGeneratorBuilder utility which eases generation of JSON objects that conform to the swagger 1.2 specification.
  • Added bundle com.prosyst.mbs.webservices.rest.client.wink which provides ProSyst's REST client add-on based on Wink 1.4 Client API.
  • Added bundle com.prosyst.mbs.webservices.rest.client.jetty which provides ProSyst's web socket client add-on based on Jetty 9.3 Web Socket Client API.
  • Added utilities for appending appropriate Content-Range and Accept-Ranges headers in responses.
Changes and Bug Fixes
  • Fixed Bundle-Description manifest headers for all bundles in the Web Services REST module.
  • Modified swagger UI header and improved REST API calls list view:
    • removed the path field from the header
    • fixed the alignment of the REST API calls descriptions in the list view
  • Added caching support in the swagger UI servlet in order to improve the responsiveness of the web interface and reduce the load on the gateway.
  • Fixed ProvidersAccessor utility to check the supported types (if available in the provider's class generic type information) and mime types manifested by the tracked providers prior to invoking MessageBodyWriter.isWritable and MessageBodyReader.isReadable methods.
  • Fixed parsing of Range HTTP header.
  • Fixed parsing of representation constraints defined via X-Representation-** HTTP headers.
  • Applied the recommended pattern for handling resource caching and pagination in Book Store Demo REST web service.
  • Applied the recommended pattern for handling resource updates in Book Store Demo REST web service.
  • Increased the number of books that visualized in the Book Store Demo web GUI.
  • Updated remote events demo to use knockout-3.3.0 and jquery-1.11.2.
  • Changed the type of IdentifiableResourcetags field from List<String> to Set<String>, the JSON representation of the resources will remain the same.
  • Modified swagger UI in order to provide better user experience and integrate REST documentation in user documentation:
    • added description text while loading navigation menu.
    • removed links to root.json and missing json files from navigation menu and list view.
    • added selection of elements in the navigation menu.
    • added option to load automatically the description of the first REST API node in the navigation menu.
    • modified swagger UI web resources to support both static (user documentation) and dynamic (OSGi runtime) case.
    • skipped JSON verification from swagger.

RMT

Version of the module included in this product: 1.2.1000

New Features

  • Software Module Management data model can start the execution unit after install, if it is supported by Software Admin Extension.
  • Software Module Management data model has been extended to support OSGi Subsystems.
  • TR-069 transport connection can be customized.
  • RMT pluggable commands have been introduced into two groups: tr069todmt - commands on top of OSGi TR069Connector service, tr069 - session management.
  • TR-069 Common Objects Backup & Restore support.
  • New debug has been introduced to log the protocol messages in a raw format.
  • TR-069 Download can be customized.
  • TR-069 Common Objects support extension points.
  • The number of the inform changed parameters can be controlled with a system property.
  • The size of the Software Module Management caches can be controlled with system properties.
  • Device.DeviceSummary parameter value can be set with a system property.
Changes and Bug Fixes
  • Codec is using org.xmlpull.v1 API instead of org.kxml2.io API
  • Execution environment instance numbers can be reserved with a system property.
  • DU Parameter URL is empty after restart.
  • Instance ID is used instead of UUID for AutonomousDUStateChangeComplete on uninstall.
  • Software Admin component identifier is used as an unique identifier for the execution units, but it's unique in the scope of the type.
  • DOM parser ignores empty elements.
  • TR-069 Connector service does not unescape comma separated list values.
  • Logs are not synchronized when the client is started with security.
  • Configurations are not synchronized when the client is started with security.
  • NumberOfEntries parameters not listed for children of getParamerNames root.
  • UUID provided by ACS is persistently stored.
  • If the vendor is missing, an empty string is set instead of null.
  • Runtime validator project and configuration file names are unified.
  • Default bundle start level is changed to 6.
  • Time statistics are moved from the standard output stream to the log service on the info log level.
  • Devce.DeviceSummary default value is updated to Device:2.1[](Baseline:1,SM_ExecEnvs:1,SM_DeployAndExecUnits:1,DUStateChngComplPolicy:1), OSGi:1.0[](Baseline:1).
  • Fixed ACS redirection.
  • Fixed TR-069 UUID generator to use version 3 instead of 5.
  • Fixed the node type of Software Module Management NumberOfEntries nodes.
  • Fixed TR069Connector duplicated synthetic nodes when they are provided by the data model.
  • Fixed path processing in TR069Connector delete object.
  • Fixed TR069Connector instance number processing.
  • Fixed TR069Connector alias processing.
  • Fixed manifest header values.
  • Fixed memory leaks.
  • Fixed minor bugs.

Software Admin

Version of the module included in this product: 1.2.0

New Features
  • Support for auto-starting a subsystem after install.
  • New Subsystems Support TEE Test.
  • New customizer interface added - com.prosyst.mbs.services.swadmin.ConnectionCustomizer.
  • Improved filtering criteria of Subsystem visibility: new system property mbs.swadmin.subsystem.filter added; if set, this filter defines the subsystems that are visible through the Software Admin API.
  • Added support for the SoftwareConstants.PARAMETER_INSTALL_EXISTING_ACTION parameter in SoftwareProcessor.install in the subsystems. processor
Changes and Bug Fixes
  • NullPointerExeption in the install method of the Subsystem Processor fixed.
  • DownloadCustomizer.connecting is deprecated, and will not be invoked.
  • Local permissions added for the com.prosyst.mbs.swadmin.ext.subsystem bundle.
  • SoftwareComponent.getVendor now returns the value of the "Subsystem-Vendor" header of the corresponding subsystem.
  • SoftwareEvent.UPDATE_STARTED event is now correctly fired.
  • The console commands bundle com.prosyst.mbs.swadmin.ext.command is renamed to com.prosyst.mbs.swadmin.commands
  • "Provided-Services" header removed, lazy services will not be used for console commands.

Serial and Parallel

Version of the module included in this product: 3.0.1000

New Features
  • Added ioctl() support in RXTXPort (for int arguments).
  • Added warning about buggy FIONREAD ioclt (data available events won't work) .
  • Increased severity of configure_port() failures to warning.
Changes and Bug Fixes
  • Fixed deadlock with simultaneous calls to CommPortIdentifier.open() and CommPortIdentifier.getPortIdentifier().
  • Fixed memset() usage.
  • Changed Windows COM port device prefix from "//./COMxxx" to "\\.\COMxxx".

TEE

Version of the module included in this product: 2.0.1000

Changes and Bug Fixes

Minor improvements, optimizations and bugfixes.

Units

Version of the module included in this product: 1.1.0

New Features
  • Introduced Functional Item type factory for units.
  • Introduced Functional Item type factory for quantities.
  • Introduced new units of measurement usually supported by the different home protocols.
Changes and Bug Fixes
  • Runtime validator project and configuration file names are unified.
  • UnitUtil.getUnit is able to accept a non-null system name parameter when the units bundle is not started.
  • Information system of units is introduced.
  • US Customary system of units is introduced.

USB

Version of the module included in this product: 3.0.1001

Changes and Bug Fixes
  • Code refactored.

ZigBee

Version of the module included in this product: 4.2.0

New Features

  • Rework of the status handling mechanism for the ZigBee home devices by relying mainly on device notifications instead of direct polling. Polling is done only in case there had been no notification in the time period specified for the device. The status of the device is stored, so that after restart of the zigbee hdm adapter it can be estimated what is the expected status of the device.
  • Optimized the message flow from the ZigBee module to the ZigBee network: reduced duplicate messages, removed unnecessary binding requests, reused read attributes among the device classes. The result from the configure reporting calls is stored, so when the Framework is restarted no more read reporting configuration calls are done. This is especially useful for sleepy devices, as this read configure reporting calls could lead to Not Initialized state.
  • Added extension interface FirmwareUpdateEx of FirmwareUpdate.
  • Added new device class: com.prosyst.mbs.services.zigbee.hdm.deviceclasses.provider.ha.hvac.ThermostatHA12 mapped to the HA12 Thermostat cluster.
  • Improvements in Telegesis Driver: added handling of error messages, processing of NODELEFT prompt, speed-up firmware update process.
  • Improvement in console commands: zllResetAll stops scanning channels after 1 successful reset.
  • Added EndpointManager.sendCoordinatorAnnounce().
  • ZigBee Home Devices can be configured using config-tree based configurations under the ZigBeeDeviceConfiguration root. The structure allows configuration of home device properties and configurations specific for the device classes. They could be for example: reporting configurations, supported modes/states which can not be figured out by reading attributes but from a manual. The configurations are applied to the home devices before the devices are introduced to HDM.
  • Improvements and bug fixes in ZCL Application handling.
  • Added support for the PollControl cluster represented by the com.prosyst.mbs.services.zigbee.hdm.deviceclasses.WakeUpExt dco.
  • Added manufacturer specific functionality in AbstractDeviceClassObject.
  • Add OSGi configurations for dynamic log level management.
  • Optimize BatteryLevel DCO loading mapped to Power Configuration Cluster.

Changes and Bug Fixes

  • Bug fixes in all drivers regarding spurious wake-ups.
  • Bug fixes in Ember Driver.
  • Bug fixes in FirmwareUpdate device class.
  • Bug fix in Metadata provider concerning the data overwriting by external providers.
  • Bug fixes in HSB device class: Execute MLS operation must cancel HSB transition.

Z-Wave

Version of the module included in this product: 4.3.1004

New Features
  • Added support for User Code unsolicited reports in adapter.
  • Added support for the Indicator CC and DC, including console commands.
  • Added API to retrieve controller flags and roles.
  • Added system property "mbs.services.zwave.nif.ignore.for" that can hold a list of comma-separated IDs for devices that shouldn't be refreshed upon Node Information Frame.
  • Added configuration for Fibaro motion sensor.
Changes and Bug Fixes
  • Fixed the Z-Wave test config file names to be compliant with the ProSyst TC and ТЕЕ Project Files.
  • CCApplicationStatus added to Node Information Frame as supported.
  • Controller type set to SPECIFIC_TYPE_PC_COONTROLLER.
  • Disabled the processing of wake up for devices without HomeDeviceSPI.
  • Disabled WakeUp.goToSleep handling until ZWaveController.Z_WAVE_CONTROL_EVENT_TOPIC_DEVICE_AWAKE_PASSED has been processed.
  • End-device suported CC's version is assumed v.1, if CCVersion is not supported. Log warning for Z-Wave+ devices, that have missed the mandatory CCVersion support.
  • WakeUpNotification is processed regardless of whether the devices is declared sleeping or not.
  • Route assignment done only for Z-Wave+ nodes with declared role PS, AOS, LSS or RSS.
  • More robust port and controller initialization sequence.
  • Added support for the new HDM Async behavior for sleeping devices.
  • Added indication for sleeping devices as Home Device property "zwave.sleeping.node".
  • BasicDCO created always - no matter if we have full node info or not.
  • Device-specific serial number not asked during inclusion.
  • Set SIS to added controller with high power message.
  • Capability flags refresh timeout increased to 15s after a controller is added.
  • Rejecting any incoming secure messages if property "mbs.zwave.security.disable" is set to "true".
  • Fixed disabling secure classes fill cache, if security is disabled, for devices when the gateway enters other network (learn mode).
  • Fixed creation of child devices for AlarmV1 and SensorAlarm.
  • Fixed out-of-order secure children registration.
  • Fixed sending Z-Wave Plus Info Report.
  • Fixed required permissions to allow running with Java 2 security.
  • Fixed security encapsulation and handling.
  • Fixed the Colorswitch metadata xml to follow strictly the DTD.
  • Fixed javadoc spelling and formatting.
  • ZWPlusCC added to the beginning of Node Information Frame, per specification.
  • Fixed Sensor Alarm DC creation via security.
  • Fixed NullPointerException when creating child devices.
  • Fixed supported PowerLevel issues.
  • Fixed manufacturer/device specific identifier issues.
  • Implemented correct handling of report v1 for supported CCAppStatus.
  • Fixed supported Association and AssocGroupInfo.
  • Fixed supported CRC16 reporting.
  • Fixed replace failed node interview.
  • Forbid further secure inclusions if invalid scheme inherit was passed.
  • Setting SIS to added controller if SIS not present in the network.
  • Skip setting, if already set, wake up for sleeping devices when added in another network.
  • Reversed 'total' with 'current' property for version 1 of CC Meter (according to Z-Wave specification).