Tuesday, December 29, 2015

IoT Gateway

An important component in an IoT Architecture is an IoT Gateway.

A Gateway is an important link between the world of Things and Sensors (and actuators) and the world of Enterprise Applications.

Normally connected things don't have the computing capabilities to run complex computation. Very often they don't have too much networking capabilities, but they are the best components to link to the physical world.
To avoid to put too much burden on the Things, in terms of computational capabilities and in term of networking we need something in between. This is an IoT Gateway.

As a part of my IoT training, I'm investigating what kind of software you can run on a "Open Source" IoT gateway.
For now, I have decided that the best platform to run a gateway is Raspberry Pi 2.

This is the liste of the software that I have successfully run on it:
  • Mosquitto (MQTT) broker;
  • Node.js;
  • Node-Red;
  • MySQL;
  • Redis;
  • Python;
  • Oracle Edge Analytics
I think that the best messaging solution, to connect sensor nodes with the Gateway is MQTT, and Mosquitto broker seems to work perfectly.

Sunday, October 4, 2015

Friday, October 2, 2015

Learning Internet of Things

Well, in this fast-changing world learning new things (IoT things) is necessary.

IoT is always on my Radar for many reasons:
  • It is in the eye of many people and most probably it is there to stay;
  • It is a combination of Electronics and Programming, and I have always been interested in Electronics
  • It is "physical", not only software: something that once built you can touch;
I have started an interesting specialization on Coursera, and the first course have beeen completed. If everything goes well the Capstone is in the way for the beginning of new year.

 https://www.coursera.org/account/accomplishments/records/H3LX5AXNJ9

stay tuned.

Sunday, June 7, 2015

Openhab

Just a short post, to begin.

IoT is one of my favourite subject, even if it is rare that I have plenty of time, for playing with it.

This week-end I have started working with OpenHAB.
It is a nice project for Home Automation, with many many bindings for differnet products and technologies.

OpenHAB runtime works on almost any platfor where Java 8 is available and it is based on OSGI (cool).

I have tried it on my Macbook. I have treid MQTT binding, using Mosquitto as a broker. Works really well and in half an hour you can have it up&running.

But, I have problems with ther integration with my Sansung AirConditioner.
I have opened an issue on Openhab issue tracker... let's see hot i will proceed.

bye

Thursday, April 30, 2015

Learning How To Learn: my final work

One of the most interesting courses I have followed on Coursera is Learning How To Learn.
Really great and challenging.

At the end, as final assignement, I have prepared a presentation, with some exploration of the Learning Techniques that I have found most useful.

I have decided to share the presentation here... maybe someone is interested too.

Good (and not so good) habits for learning.


Monday, April 6, 2015

First Running Program

I have decided to return to train to run, seriously.
The goal is to return under 50' for a 10K run.

It won't be easy, especially because I have to manage my problems to the knee of my right leg.
I have decided to adopt the FIRST running method.
I'm reading a book, on my Kindle, and I'm taking all the relevant information from this book.

The First method focus more on quality than quantity.
  • Three quality run workouts per week
  • Two cross training sessions per week
  • Strength and stretching sessions to improve strength and flexibility

It won't be easy. From what I have read the rithm is high. I hope to be able to avoid problems to my knee. The key things to succeed should be:
  • Regular strength training (squat, etc)
  • Cross training sessions (I plan to use my Kettler Rowing Machine)
  • Stretching
I'll post my updates and progress.

Thursday, March 26, 2015

Che bella giornata

Indovina perche'

Perche' a casa siamo tornati ad essere in cinque😊

Sunday, January 11, 2015

Google Fit

It is going to happen.

Computing is becoming more and more ubiquitous.
It is more and more common to have enough computing power in a "small device", that can be for example a smartphone, a smartwatch, a wearable.
In addition, these devices have a set of sensors that enables to:
  • Track your position;
  • Measure the number of steps you do;
  • Measure your speed;
  • Read other important parameters like: temperature, your heart rate, and so on;
Obviously the next step is to develop complete systems to track your health, your level of fitness, to be able to figure out how to improve.

Both Apple and Google have presented a platform with the goal to transform your smartphone  in an intelligent device that can help with your fitness and health.

In the Android World, Google have proposed Google Fit. It is both an App and a complete development environment.
I have discovered it by change: last week I have taken a new Android Phone, a nice Samsung S5, and I have found this little, someway minimalist app, that track my activity time: Google Fit.
Nice, almost in every week I try to introduce some physical exercise in my weekly routine.

I have made some inquires and I have discovered that Google Fit is a complete platform, to enable developers to design and realize nice fitness apps.

It is a Cloud Service, that enables you to store fitness data and retrive by Apps and Web Application, through a REST API.
It is an Android API. to develop Apps.

I have given a look: for now it is an initial step towards a more complete platform. But it will become more and more interesting as soon as new Apps based on Google Fit API will be released.

Stay tuned.

Sunday, January 4, 2015

Learning How To Learn (LHTL)

I have decided to start another great course on Coursera.
It is called Learning How to Learn and is dedicated to explain how the brain works and how we can improve the way we learn new subjects.


UDOO as IoT gateway

At the Maker Faire Rome Conference I have bought a UDOO board.
I have read about it in the past and I was really interested in discovering how it was easy to use, and if I could run on it almost the same SW that can be run on a Raspberry PI.

I have received a very good impression.
Now I was thinking about IoT and UDOO.



The idea that I have is that UDOO can really be an effective platform for prototyping IoT gateway application.

On UDOO you can run these software:
  • Raspbian (Linux) OS
  • Apache
  • Oracle Java VM (HFP)
  • Mosquitto (MQTT broker)
  • Eclipse PAHO client
  • MySQL
  • PHP
With this software stack you can easily build sofisticated gateway IoT application and communicate with other nodes on the network.

As sensor nodes it is better to use cheaper devices, for examples based on Arduino technology. 
In addition Arduino is perfectly suited for interacting with sensors and actuators.
UDOO is Arduino compatbile, you can attach to it all the kind of sensors you would normally use on Arduino, and run Arduino sketches. But in order to realize a multi-layer architecture it is better to divide sensors and gateway layers.
The last pieces I'm considering is the network technology most suited for the communication between sensors and gateways.
One easy choice would be to use WIFI, if the range is limited to your home, for example in a Home Automation solution. In this case a simple choice would be to adopt Arduino YUN as board for sensors. With Grove shields you could easily experiment with different kind of sensors.
YUN is not a really cheap solution. WIFI is not cheap, but it is a simple solution to implement.

As application protocol, one choice that I would make is to adopt MQTT. In my view MQTT is perfect for transmitting messages from sensor nodes to the gateway.
It is a lightweight protocol, reliable, based on the publish-subscribe design pattern.

Ah, one last thing: UDOO has been entirely designed in Italy. Nice.