Sunday, February 7, 2016

First Node-RED Practice- Retrofitting a caller ID

"Retrofitting refers to the addition of new technology or features to older systems."


This project aims to add a new capability to an old phone caller ID: connect it to the internet. 

The idea is to push a notification to my smartphone when someone is calling my landline. The essence of this project is to transmit the caller ID to a remote device.

The question is: Why not to simply redirect the calls to a cell phone?  It is just a matter of subscribing to the "follow me" service offered by the carrier. Because this is a fake project. It is just an excuse to learn and practice how to handle the messaging required.

As it seems a rather idiot idea lets name the project accordingly: the caller ID-IOT

Can you picture this situation?  Someone calls your home. You return the call half a minute later saying that you are miles away from home and could not take the call. Most likely the person will react by saying: Don't call me an idiot.

The first step is to name the project (done) and the second one is to brand it. So below logo seems to fit well.



Finally, in the next post, I will exercise with the several ways to play with messages in Node-RED.  Stay tuned.




Selecting a Dashboard for IOT

In many IOT solutions, it will be necessary to have a way to visualize the data gathered from the "things". Based on this information you will know what is going on in your environment, will be able to take decisions and intervene when some action is required. The best tool for such visualization is a dashboard. This is a piece of software that you don't need to develop as there are many solutions readily available for you to choose.There are many different criteria for selecting a dashboard, including (but not limited to): communication capabilities, design, price, general capabilities, easy of configuration and deployment, amount of "widgets" available, etc.

I have chosen Freeboard.  It is open source and can be hosted on your own computer. Alternatively, you can use the online environment hosted on http://freeboard.io (click here).  Freeboard can be easily integrated with Node-Red,  has an appealing design and can be augmented with new datasources and widgets (these ones built with JavaScript):

I will come back many times to Freeboard in future posts. For the time being I am still assessing its capabilities. In just a couple of days, I was able to clone, change and create several dashboards.





Javascript Learning Progress

Well, the first achievement has been completed in just 20 days:  JavaScript course from CodeAcademy. Not too bad considering that I can spare free time only in the night.  My evaluation is that CodeAcademy is an awesome tool for learning a programming language. It provides a hands-on environment where the student can do real coding in a very easy way. The amount of theory is kept to a minimum.

Of course, this is the very first step on mastering JavaScript. There is a long road ahead. I will focus now on Udemy Node.JS courses as well as on YouTube videos.