Proper configuration of mbedTLS for IoT project

This is post 7 of the series/tutorial. In case you have not gone through the other posts, you can do so now. In the previous post (post #6), we got mbedTLS working and it delivered content to us from a server using SSL/TLS. However, in the code, you should have noticed a line saying that in real life we should bail out when the certificate verification fails, see it here. Also in the logs, you must have seen a section with errors like the one below. . Performing the SSL/TLS handshake... C:\Keil_v5\ARM\PACK\ARM\mbedTLS\ »

Getting mbedTLS to work with your Keil project

This is post 6 of the series/tutorial. In case you have not gone through the other posts, you can do so now. In the previous post (post #5), we added mbedTLS to the project and agreed that we would follow the sample that comes with the mbedTLS pack. If you followed everything correctly you should see an output such as the one below. There are several additional steps but I discuss them below the dump. . Seeding the random number generator... ok . Loading the CA root certificate ... ok (0 skipped) . Connecting to tcp/tls.mbed.org/443... ok . Setting up »

Add encryption and SSL/TLS into your IoT project thumbnail

Add encryption and SSL/TLS into your IoT project

This is post 5 of the series/tutorial. Here are the other posts, in case you need them: Post #1, Post #2, Post #3 and Post #4. Before we get soaked in, let me remind you that in case you are looking for a post on the best practices for encryption, SSL, TLS, DTLS or general informational security, this is not the post for you. I am not an expert in any of these fields. If you need such kind of information, Google is a better place to find an answer. Now we get to what this post is about. »

MQTT with LPC4337 and Keil MDK

Despite the busy week I had, I got some little time to write this as my main machine performed an update. You know those windows 10 updates you leave to run overnight... Anyway, this is the fourth post of the series/tutorial. In case you have not gone through the other posts, you can do so now. Post #1: SIM900 Dialup Connection Setup Post #2: SIM900 PPP Driver for KEIL Network-DS Post #3: Choosing the protocol and why I chose MQTT This post will also be very short (or so I hope). Setting up MQTT in your Keil MDK project »

Using Parsley Validation in Asp.Net 5 thumbnail

Using Parsley Validation in Asp.Net 5

Asp.Net always comes with built-in support for jQuery Unobtrusive Validation. It is based on jQuery validation. I like it and use it in a number of places. But there are times I like to use parsley validation mainly because of the themes. I know it can be done with jQuery validation but somehow parsley seems superior in my sight. Asp.Net generates validation attributes in HTML from the C# models that you write. You can Google about that if you do not already know it. In the newer version of Asp.Net, there is still no way to plug »

Communication protocols for embedded application and why I chose MQTT thumbnail

Communication protocols for embedded application and why I chose MQTT

This is going to be a rather short post because it has been covered by other people elsewhere. I will concentrate on which protocol works best for the tutorial we are on. This is the third post of the tutorial. You may find the previous posts here: Post #1: SIM900 Dialup Connection Setup Post #2: SIM900 PPP Driver for KEIL Network-DS At the tail end of this post, there are additional resources for further reading. There are a number of protocols out there and sometimes we get confused by the marketing around some of them. That is evident in the »

SIM900 Driver for KEIL MDK-Network (PPP interface for TCP/IP) thumbnail

SIM900 Driver for KEIL MDK-Network (PPP interface for TCP/IP)

As promised before this post covers connection of SIM900 to the Network driver via PPP. The related Github checkpoint is available as a release here. The last commit can be used to get the code up to the point for this blog in case there are changes later. Let us now look at the magic elements, shall we? First things first, I choose to use LPC4337 and the Cortex-M4 core. No particular preference, only that it was on my desk at the time I chose to write this post. Also, I bought this developer board here. The network driver is »

ASP.NET 5 WebApp with WebJob and VSO/VSTS Automation thumbnail

ASP.NET 5 WebApp with WebJob and VSO/VSTS Automation

Asp.Net 5 was renamed to Asp.Net Core 1.0. This blog post has not been updated for reference sake. For RC2 and RTM see the newer post here. Azure App Service has a nice feature called WebJobs. I use it a lot. In case you do not know what that is, you can read more about WebJobs here and here. Lately, I have been moving toward automating build and deployment using Visual Studio Team Services (VSTS) (formerly Visual Studio Online -VSO). I have also been using Asp.Net 5 since beta 4 and since the support for building »

Communication for IoT or Embedded applications thumbnail

Communication for IoT or Embedded applications

There is really a lot of talk about IoT and how many billion dollars it will be worth in the future. However, unless we solve actual problems that we face, that might be a dream that will only connect a bunch of toys to the internet without much of information for our use. One of those problems is connectivity. Communication Options Most examples available online from hardware manufacturers, for development kits, and from cloud service providers will only describe the connection to the internet via ethernet. If they do not show ethernet, the application is most likely a Bluetooth Smart »