The latest capability to be added to ManuvrOS is a uniform cryptographic layer with test-coverage. I have plans to make this asynchronous and pluggable-at-run-time to facilitate non-blocking hardware access for TPM modules and secure storage.
Additionally, the cryptographically-backed notions of identity are taking shape, and also have test-coverage.
Current support is via mbedTLS, but extension to other embedded cryptography stacks are stubbed out.
While I've been in the crypto-trenches, I wrote-up an introduction to DTLS. I have been hard at work building IoT test fixtures with it. More to come on the security front...
What follows is a post I wrote back in April for my co-workers who are tasked with sales and product concerns. I am posting it because it still applies to our present situation in IoT, how we got to where we are, and what direction we are moving.
We've had a busy January. The entire Manuvr team is now in the San Francisco Bay area. Josh and I are now working full-time on Manuvr and related technologies for a major telecom company that will likely be the first deployment-at-scale, and who has agreed to keep their efforts open-source, and developer friendly. That will warrant a separate in-depth post once they clear us to release details.
We're very excited about our prospects of unifying some of the fractured landscape of standards, transports, protocols, and hardware; something the IoT realm sorely needs.
For my part, I've been hard at work debugging threading Manuvr's firmware under different threading models and imparting concurrency safety. I've made builds with both FreeRTOS on the Teensy3.1, and pthreads on linux. At present, the pthreads version is much more complete, but once I resolve a few more library congruency mis-matches the two threading models can be coded for against the same API.
Digitabulum has sat idle for the past few months as time was devoted to ManuvrOS and MHB. But that is changing as-of yesterday. We are back in communication with our fabricator, and they are eager to help us build the digit sensor circuits. The 3rd draft of the hardware has been sent to them for feasibility opinions. Realistically, we are probably 3 months away from having the full sensor package for r1 built, funds permitting.
The non-circuit hardware tasks have also been advancing in the past few months. Here are some renders of the casing parts...
...and the digit mold for the sensor package...
Major changes are underway. But we are still alive, and the project is still making steady progress. More to come!
The past few months have been spent rebuilding the host-side Node.js implementation of Manuvr's protocol. Following it's completion, any manuvrable (not just Digitabulum) will be able to setup a session and exchange capabilities with the host. With no prior knowledge of the specific hardware, basic functions will still be available and allow specific drivers to be found and installed. From that point forward, making drivers for manuvrables will be as easy as writing a single javascript file. No knowledge of Manuvr's protocol required.
From the standpoint of firmware (this project), the node.js implementation will be used as a reference implementation against which the C++ code will be validated. Therefore, expect lots of upheaval in the next few months as the firmware components are brought into functional correspondence with the javascript.
Specific functionality that is targeted for refactor....
Implement bi-directional message legend and self-definition.
Fix the sync-termination sequence.
Implement new message flags for security and better self-definition.
ACK/NACK solidification.
#Digitabulum is now in the manufacturer's hands until late September. And we are on-target to complete the javascript work by that point.