Senior Software Engineer, Microsoft MVP on Windows Embedded and IoT. Devices to cloud, IoT, M2M and embedded systems.
The first "visible" step of the new .Net Micro Framework has been accomplished ... finally the official repository for the future versions is GitHub; viceversa all previous versions of the framework will remain onCodePlex as the forum. Each bug/issue reported on CodePlex will be evaluated and included as "work item" on GitHub.
Due to the "interpreter" nature of the runtime, the project was named ".Net Micro Framework Interpreter" but contains the interpreter, the BCL (Base Class Library) and the native code for porting.
In this post we'll see a big difference on "string interning" mechanism between .Net Framework and .Net Micro Framework ...
Developing on all versions of the .Net Framework (full, compact and micro) I have always the portability problem and I avoid to use methods that are not available in one of three framework or using directives for precompilation.
It never happened a case where the method exists in all the frameworks but the parameters have a different meaning ... are even reversed !!
The method in question is the overload Regex.Split(String, String, RegexOptions) !
As we know, to be able to access to some Microsoft Azure services, there is the SAS (Shared Access Signature) Authentication by sending a token by which we get the rights to perform specific operations.
This token is obtained by building a string containing some information including the URI to access and the expiration time over which to calculate an HMAC (Hash Massage Authentication Code) withSHA256. The result of this hashing operation is encoded in Base64 and the result obtained is inserted in the token (Shared Access Signature) with an appropriate format.
The goal of this short post isn’t to describe the procedure for determining the token but to warn the user about the Base64 conversion functions provided by the .Net Micro Framework.
In the Internet of Things world and especially when we are going to protect the data transmitted by an embedded system from prying eyes through encryption algorithms (AES, DES, 3DES, RSA, ...) and with related network protocols (SSL, TLS , DTLS, ...), correct date/time on our board plays a fundamental role.
In fact, the encryption algorithms are strongly based on Pseudor-Random Number Generators (PRNG), which often needs to use the current date/time as a "seed" of the generation. Being pseudo-random generators and not real generators, it is important that for each system boot the "seed" is different otherwise the generated sequence is the same as the earlier boot and therefore predictable.
One of the biggest initiatives of 2014 was definitely the birth of DotNetPodcast, podcast completely in Italian and dedicated to Microsoft technologies. Guests are always of the highest level and earlier this year, I had the honor of being able to record an episode, completely dedicated to the Internet of Things and the development of IoT solutions using the .Net Micro Framework.
A new use case for M2Mqtt library !! The case studies section of the official web site has a new great example usage !
Jon Gallant from Microsoft (IoT maker team) wrote an interesting article about his “maker experience” with a demo on using MQTT on a Raspberry Pi. In this scenario, he doesn’t use native C/C++ library available for MQTT but he made the great choice to use C# language and M2Mqtt library on Mono project !
The article describers all the steps to setup the entire demo from hardware to Mono installation on the Raspberry Pi and example code execution.
Great to see another M2Mqtt use case but this time on a Linux environment !
After about a month of work during my free time, it's finally time to release the new version of the M2Mqtt library (18.104.22.168) and the related GnatMQ broker (0.9.3.0 Beta) with the MQTT OASIS 3.1.1specification support (in addition to some bug fixes).
Did you join the Windows Developer Program for IoT and now you are waiting for the board or have ordered an Intel Galileo (Gen2) on which you will load the Windows image made available on the official website ? Are you waiting for the board but you are curious to know what are the components included in the Windows for IoT ?
There is a solution !
Thursday, October 23 there was in Naples the "Mobile Camp" organized by Microsoft with my community DotNetCampania and focused on the development on Windows Phone and Windows platforms.
View this page in another language: