In the last week of March 2021, we participated in the TestFest organized by Open Mobile Alliance (OMA) SpecWorks – the standardization body of the Lightweight M2M protocol. The event is held periodically at least once a year to verify the quality of the LwM2M protocol’s specification, check software conformance to the specification and ensure interoperability between implementations of multiple vendors. The OMA ETS test cases are written in such a way to cover most of the LwM2M protocol features such as data formats, secure connection, bootstrap methods, message types, response codes, firmware upgrades, etc.
As usual, we decided to test our Coiote IoT Device Management (server) and Anjay (client) implementations. We registered for the event with our server in the LwM2M 1.1 version and the client in the LwM2M 1.2 version. Unfortunately, during this edition, only 1.1 implementations were tested as there were not enough vendors supporting the latest (1.2) protocol version, which is still relatively new.
Our team confirmed Anjay's interoperability readiness with other vendors’ implementations. As basic Anjay is an open-source project and the feedback loop with device manufacturers has been in place for years, we are glad that the maturity of the implementation has also been confirmed during the event. Only two minor bugs have been found, which have already been fixed.
On the server side we utilized our improved LwM2M Interoperability Tests component. Test cases’ logic from previous years was enriched with automatic detection of response codes, data formats, message types, awaiting times, etc. This allowed us to:
What’s more, we have a few customers that use our Coiote DM platform to test the LwM2M interoperability for their devices, so this is a great opportunity for us to see how Coiote DM performs with the latest versions of other vendors’ client implementations.
The results of each TestFest edition achieved by those participants who accepted the publication are available on the OMA SpecWorks’ GitHub page. The points for a test case can be scored only when both server and client sides support all necessary protocol features required by the specific test case. This is a great way to learn about other LwM2M implementations and their performance. It is worth noting, though, that the combination of server and client implementations of the same vendor is not allowed – which means that, for instance, we couldn’t test the LwM2M specification conformance of our server using Anjay as an LwM2M client and the other way around. The downside to this was that we lost some points as some features were not supported by other vendors’ implementations either on the server or the client side.
Overall, the participation in OMA SpecWorks TestFests is a great opportunity for us to compare our implementation and protocol interpretation directly with other vendors. The more vendors participate, the more interoperable products on the market the customers can expect. At AVSystem, we take advantage of every opportunity to make the initial experience of using our products as smooth as possible for our customers.