This time another new and exciting experience as speaker … at Community Days 2014 in Rome with all Microsoft italian communitis !
For the first time, I had the honour to have a session with me “big” friend Valter Minute, from which you never stop learning something new. Of course, the topic was the Internet of Things and this time with a washing machine as protagonist !
This time, with great honor, I will be among the speakers of the Community Days 2014 to be held September 23 to 25 in Rome, after I was there more times as attendee in the past.
The honor will be double, because I will have the session with my dear friend Valter Minute that I recognized as the "Maradona" of embedded systems.
Our session entitled "Internet of Things: my washing machine connected to the Internet?" will be completely dedicated to IoT starting from embedded systems (Microsoft based) to the possible solutions in the Cloud, including the future project "Reykjavik" based on Azure and presented at Build 2014; the title tells the truth, among other things, we will have as its protagonist a washing machine (toy) !
You can find all the information concerning the agenda of the sessions and logistics on the official website in addition to the registration form.
We look forward to this event every year will not disappoint the expectations of those who participate !
It seems that I was on vacation (given the lack of posts on my blog) and it's the truth !
Despite the holiday, I continued the development of the M2Mqtt project and today I am pleased to release the new version 220.127.116.11 with WinRT support !!
I made some changes on networking layer (from Socket to StreamSocket), thread (from Thread to Task) and security but finally the first MQTT client for all .Net platforms today also works on tablets with Windows 8.1 and on smartphones with Windows Phone 8.1.
The new project, added in a Visual Studio 2013 solution, is a "portable class library" that I used and tested in a Universal App.
The same for the "brother" GnatMQ, now in version (Beta) 0.9.2.0, thanks to which we have an MQTT broker to run on tablet and smartphone with Windows 8.1 OS family.
Of course I updated the Nuget package by adding the assemblies for WinRT.
I hope I did something useful f ...
This time the M2Mqtt library has undergone some "important" changes in terms of new features and bug fixing. I have to admit that the improvements are mainly due to the people who use it and report me to add new features or bugs to fix. In addition to several issues reported on CodePlex, this time also Clemens Vasters, PM on Microsoft Azure, submitted some improvements to be applied in the context of SSL / TLS authentication. In fact, as already tweeted several weeks ago, Clemens used my library to run tests on the Reykjavik project (Device Gateway) presented at Build in 2014 and I can only be honored.
In this case, the improvement is closely related to the .Net Framework version, since it is the only version to support what has been added. In particular, the MqttClient class makes available other constructors which can provide the following callbacks :
RemoteCertificateValidationCallback : allows the user to execute further checks on the validation of the ...
The M2Mqtt library is now at 18.104.22.168 release with the new tracing feature in debugging mode.
The project has the new Trace class that exposes the static member TraceListener declared as the following delegate :
1: // delegate for writing trace
2: public delegate void WriteTrace(string format, params object args);
In this way, it is possibile to chose our preferred tracing mode setting a method to this delegate. Furthermore, it is possibile to set the tracing level using thet static member TraceLevel with the following possible values :
1: /// <summary>
2: /// Tracing levels
3: /// </summary>
4: public enum TraceLevel
6: Error = 0x01,
7: Warning = 0x02,
8: Information = 0x04,
9: Verbose = 0x0F,
10: Frame = 0x10
A simple example of tracing usage could be the following :
1: Trace.TraceLevel = MqttUtility.TraceLevel.Verbose | MqttUtility.TraceLevel.Frame;
2: Trace.T ...
Friday, June 6th IoT@Work event was held in Rome at the Microsoft headquarters and it was organized by the DomusDotNet community and the online TinyCLR.it community (of which I am member).
Thanks to the hospitality of Massimo Bonanni and all the guys in the community, we spent an entire day dedicated to the Internet of Things.
In the morning, Mirco Vanini started showing us what Internet of Things is and what it is not with a series of real use cases and future projections of this new business. The next session saw myself as the lead in tackling a technical point of view of main protocols that are used in the IoT, each with their own advantages and disadvantages. The morning sessions were completed by Lorenzo Maiorfi who spoke of "flow-programming", its application in the IoT and two main tools that can be used for this purpose: NodeRed and Orleans.
Finally, the M2Mqtt project, which includes the client library and the GnatMQ broker, has its official website !
In addition to a dedicated blog, there is a documentation section that currently contains the architecture description of the client library, the main advantages in using it and a simple application example. As for the broker, are the main features implemented and future.
In addition, the download section lists all the link to download the project (CodePlex, Nuget and Microsoft Code Gallery).
My objective is also to add a "case study" section with application examples, hobbistic or professional, and/or demos of those who are using the library and/or the broker. Obviously, anyone who wants to participate can contact through the contact section !
Development of M2Mqtt library continues .... now reached the version 22.214.171.124 !
This time the new features are related to two requests from people who are using it.
First, I added more overloads for Connect() method, because from when I removed the default parameters (for compatibility with older versions of the .Net Framework) I left the more complex constructor that requires all parameters. Many people, not knowing well the MQTT protocol, found themselves in difficulty in deciding what values to pass to lesser known parameters (will message, clean session, ...).
A further new feature concerns the client disconnected event (from the MQTT broker) that was requested on the official CodePlex web site. The MqttClient class exposes MqttMsgDisconnected event that is raised when a condition of connection failure with the broker is detected and typically in two cases :
when there isn’t network traffic, when client sends the PINGREQ message (relative to the keep-alive) it doesn’t receive ...
With a week later than the expected output, I finally released in Beta an MQTT broker completely developed in C# that can run on .NET Framework and .NET Compact Framework 3.9 (on systems with Windows Embedded Compact 2013) his name is ... GnatMQ !
It has the M2Mqtt library “core” with which it shares the features of MQTT protocol about the part of the connection to the clients and the messages management.
Obviously, it is completely open source and available on CodePlex but is currently in Beta version (aspect numerous reports on your part!).
Main features included in the current release :
All three Quality of Service (QoS) Levels (at most once, at least once, exactly once);
Will message (QoS, topic and message);
Username/Password via a User Access Control;
Subscription to topics with wildcards;
Publish and subscribe handle using inf ...
Today is "born" a new dedicated website by Microsoft on the Internet of Things that talks about the Internet of Your Things and highlights that the IoT can be achieved by each of us with his own "things" that can interconnect with each other through the Cloud.
On the website you can find all the information about this new (or already mature ?) project on which Microsoft is focusing its business using what is already good for the embedded world (all operating systems of the Windows Embedded family to which I would add the .NET Micro Framework) and joining it to the powerful of the Cloud (Microsoft Azure is well known).
It's true what the new CEO Satya Nadella said with intention to want "a cloud for everyone , on every device" for which the #cloud4device can be understood in its most general main, not only smartphones and tablets but also devices and "things" that connect to the big network !
You can subscribe to a newsletter that will begin on July 1st, but ... maybe from that date ... we'll see ...