We are pleased to present below all posts tagged with ' .Net Gadgeteer'. If you still can't find what you are looking for, try using the search box.
Before the end of this year, I wanted to enrich my uPLibrary a new managed driver for the dual motor driver TB6612FNG that I used earlier this year in a demo at the Microsoft Embedded Conference 2013 on a robot equipped with a Netduino Plus and piloted through the Kinect (thanks to Clement Giorio).
The dual motor driver
This Toshiba motor driver allows to drive two DC motors (Direct Current) with a maximum power of 15 V and with four operating modes: CW (ClockWise), CCW (CounterClockWise), short brake and stop. Also, the speed of each motor can be varied through a PWM (Pulse Width Modulation) by changing the duty cycle.
On the Sparkfun website a useful breakout board that mounts the motor control and makes it easily accessible pins is available.
The managed driver
The managed driver that allows the use of dual motor driver is represented by the TB6612FNG class that provides two contructors through which you can decide whether to use just one or both engines. For each engine is called a channel (A and B ...
New release for my M2Mqtt library, MQTT client available for any platform based on .Net Framework (from the desktop to the micro via the compact), now at version 184.108.40.206 and as always is available on CodePlex and Nuget.
Bug Fix : message identifier no longer cross-broker
This time the update contains, among other things, an important bug fixes on the message identifier generation for PUBLISH, SUBSCRIBE and UNSUBSCRIBE messages provided by the MQTT protocol. In previous versions, the generation of this identifier was encapsulated in the base class of the hierarchy of messages, the MqttMsgBase, highlighting the anomaly of a message identifier increasing cross-broker, which was used the same variable (static) for the generation also if the client was instantiated multiple times in our application to connect to multiple different brokers. Obviously, the protocol provides that the identifier is bound to the client-broker pair, namely that it is unique for each connection to the broker.
.Net Compact Framework 3 ...
This time again with great pleasure, my M2Mqtt library (MQTT client for all versions of the. Net Framework) is mentioned in the "fardware friday post" on the blog Coding4Fun on Channel9 at the following link !
The post highlights the main latest features, support for security through SSL / TLS protocol and event management asynchronously. It is also highlighted my demo on the use of the MQTT client with 2lemetry platform.
The satisfaction is double in knowing that my work is attracting a lot of interest and that the library is increasingly being used. Obviously, this leads me to improve it and in fact approaching many surprises and improvements!
On the horizon there are some good news for the future of .Net Micro Framework !
It 's been a year (exactly December 4, 2012) since it was first released version 4.3 RTM and any updates since then .... until the last few days!
On the official forum of Netduino platform, Chris Walker (Secret Labs) responded on the lack of platform update with the following words:
I sat down with the program manager for NETMF in Seattle two weeks ago, to discuss progress on NETMF 4.3 QFE1.
QFE1 is getting closer; we're all pretty excited to move over the NETMF 4.3 core.
Speaking of 4.3...we have a few surprises in store, once NETMF 4.3 QFE1 ships. We've been busy this year, especially in the software department. Quite a few community members have been contributing behind the scenes too. We should have lots of love and kudos to share in the near future.
Chris obviously has participated at MVP Summit in November 2013, along with all other MVPs and with the development team on. Net Micro Framework. It se ...
Now you can find numerous online platforms that offer the service of "device to the cloud," in order to acquire data from remote devices, save and expose them to other devices: one of these is 2lemetry.
It provides a RESTful interface over HTTP and an MQTT interface that we are going to use with the M2Mqtt client library.
First you need to register online :
At the end of the registration, you can log in to your account page and view some information, including the most important one is the "domain", which will be the root of all topics on which we are going to publish or receive messages via MQTT.
At this point we can move immediately to develop a simple application by choosing between all platforms supported by the M2Mqtt library (.NET Framework, .Net Compact Framework or. Net Micro Framework). In a real case, we use the Netduino Plus board with a temperature sensor (usually the TMP102 already widely used in previous posts and where the driver can be found in uPLibrary) to send the data collected onlin ...
The development of this project began in April of this year with the objective of filling the absence of a good MQTT client for all .Net platforms. After 6 months I did not expect an interest so strong against him, probably due to the wave of the Internet of Things that is coming (or is already among us ? ) .
Many people are using the library for projects of varying complexity , they send me mails ( with reports but also with compliments ) and open the "issue" on the CodePlex site , which I promptly resolve .
This can push me to get better and better the quality of the project , now arrived at version 2.3.0 with some bug fixes but also with an interesting new feature : all the events raised by the MqttClient class ( published message , the received message , ...) are executed in a separate thread , so the user no longer has to worry about launch "long" processing in his event handler through a new thread.
With this update, I hope to have made further improvements of great interest for those who ...
I made a bug fix on my Library M2Mqtt (MQTT client) that allows you to better manage the case where the client does not transmit anything for a time equal to the "keep alive period " and the keep alive thread, whose task is to ping the broker to keep the connection alive, does not receive anything within the timeout period (ex. broker shutdown, network disconnection, ...).
The update is already available on CodePlex and Nuget !
I have just updated on CodePlex and Nuget my uPLibrary library (version 220.127.116.11), adding automatic detection of any IPv6 address to the HTTP client (HttpClient class) .
To determine the address class (AddressFamily), I implemented the '"Extension Method" GetAddressFamily () for the IPAddress class through the static class IPAddressUtility, needed only because the. NET Micro Framework does not itself provide the property AddressFamily in the IPAddress class.
1: public static AddressFamily GetAddressFamily(this IPAddress ipAddress)
3: return (ipAddress.ToString().IndexOf(':') != -1) ?
4: AddressFamily.InterNetworkV6 : AddressFamily.InterNetwork;
In this way, at the time of the creation of the socket, it is automatically set to the correct address family from the address to connect to.
1: // create socket and connect
2: this.socket = new Socket(
4: Sock ...
After releasing the new version of my M2Mqtt library with support for SSL / TLS with server-side authentication, the time has come to show you an example of use.
Choose and install the broker: Mosquitto
First we have to choose an MQTT broker among those available but unfortunately no one is developed using the .Net Framework . Discarding more complex solutions , especially with regard to the installation and configuration , such as IBM Websphere , we can take into account to brokers like RabbitMQ , HiveMQ or Mosquitto. In this case , my choice was Mosquitto that we can download from the official web site for various operating systems based on Linux , as well as there is a convenient installer for the Windows environment . In fact, for Windows there are two installation modes: the first uses an installer in which the broker is compiled natively while in the second case is based on the Cygwin provides a Linux-like environment for Windows. It 'obvious that the first mode is the most simple and immediate . Afte ...
I just updated only on CodePlex (for now) M2Mqtt library (version 18.104.22.168), adding the automatic detection of any IPv6 address to connect.
To determine the address class (AddressFamily), I implemented the '"Extension Method" GetAddressFamily() for the IPAddress class through the static class IPAddressUtility, necessary only because the. NET Micro Framework does not itself provide the property AddressFamily the IPAddress class. In fact, in the case of full / compact. Net Framework is returned that property while in the case of. NET Micro Framework is done by a simple search of the ":" character (separator in IPv6 addresses).
1: public static AddressFamily GetAddressFamily(this IPAddress ipAddress)
3: #if (!MF_FRAMEWORK_VERSION_V4_2 && !MF_FRAMEWORK_VERSION_V4_3)
4: return ipAddress.AddressFamily;
6: return (ipAddress.ToString().IndexOf(':') != -1) ?
7: AddressFamily.InterNetworkV6 : AddressFamily.InterNetwork;
View this page in another language: