Laying the foundations for the M2M information highway
Eclipse Ponte Project collaborator Matteo Collina talks about his work, his perspective on M2M systems, and MGTTs future in the IoT.
University of Bologna
Ph.D student and Node.js, Ruby, Java and Objective-C coder
Matteo Collina, who is currently working on an initiative related
to the Internet of Things, tells Diana Kupfer about his work on the
Eclipse Ponte Project, his perspective on M2M systems, and MQTT’s
future in the IoT.
Do you remember what it was that first sparked your
interest in M2M systems?
I have always been fascinated by the idea of “coding” the real
world, much before the term Internet of Things existed. I started
reading code very early: my father coded for the Commodore 64 with
me on his lap when I was 4 years old. Being a kid into programming
was hard, as I always wanted to show off physically what I was
doing, failing to do so all the time. Thus, I have always been
fascinated by how I can code the real world and change it with the
easiness of fixing a bug.
What is your research about?
I am trying to solve the problem of building a 50 billion
network of interconnected things. You might think this is about
performance and scalability. However, I think the key is
interoperability: there are already several competing standards for
interconnecting things, and every vendor is pushing its own. Today,
many things are connected to internet, but they cannot talk to each
As someone with an academic interest in the IoT, how
does your perspective on M2M development differ from that of a
developer working on a bespoke solution for a specific
I have been working part-time as a software engineer for most of
my Ph.D. and I know very well the needs of such work. However,
there are differences. The main reason is that I can work in search
of a good solution and not be market-focused, so I can try out new
ideas before they are market-ready. If you work for a specific
company, you usually do not have such freedom.
Let’s talk about your Eclipse project, Ponte, which was
proposed a few months ago. Can you explain to our readers what this
project is aiming to ‘bridge’?
If we want to build an “internet of things”, we need to reach
the mass market, which means we need physical/virtual products with
the same polish of an Apple device. To do so, we need technologies
that are designer-friendly, but the current state of M2M is very
far from that. However, the web and mobile stacks fit perfectly.
Ponte aims to allow web and mobile developer to build cool virtual
interfaces for the Internet of Things.
Ponte is based on the QEST broker, which already helps
traverse the language barrier between MQTT and HTTP/REST. What
exactly is the relationship between Ponte and QEST?
QEST was my research prototype and a first iteration in this
area, and as all first tries I made some mistakes. Starting from
QEST I have built a full MQTT broker, Mosca, that will power Ponte. Moreover, Ponte
aims to do much more than QEST: from the protocol side, it aims to
also support CoAP. It will also support multiple data formats, as
the interoperability issue is not just at the protocol level, and
some security. You might want to try a very early release of
Ponte at https://github.com/mcollina/ponte.
Obviously the assumption underlying both QEST and Ponte
is that MQTT is of growing significance in the IoT – not least
because an OASIS committee has recently started developing a
standard version based on it. From your point of view, what is
MQTT’s future in the IoT, particularly in relation to other
Actually, my core assumption is that open protocols will rule
the Internet of Things, and MQTT fits as well as CoAP, for example.
If you do not know CoAP, it is a REST (Representational State
Transfer) protocol running on top of UDP. It is a “low-level HTTP”
(which runs on top of TCP).The main problem with standard
fragmentation is that everybody has different needs, and everybody
builds their own solution. MQTT is a pub/sub protocol which is
not REST friendly, and there are cases where a REST approach might
suits better, e.g. if you want to communicate directly to a single
device. On the other hand, in CoAP is harder to receive updates for
the changing of state of our devices, i.e. you need to know the IP
address of every of them.
How does Ponte aim to address security issues, which are
also a growing concern in M2M development?
Most people do not care about security and privacy- they take it
for granted. As an example, if they buy an internet-enabled lock
for their front door, they assume nobody can open their door
remotely if not authorized. However, they complain that the
internet-enabled door is not working with the lights, triggering
them on automatically. Ponte will allow you to selectively specify
which things might access your things in a safe way.Naturally,
Ponte will form part of the ensemble of M2M projects already
present at Eclipse.
Are there any specific interactions or interconnections
at the moment?
It is loosely related to Paho, as it is the home of most of the
MQTT libraries out there and I got a lot of feedback from them.
Whose idea was it to join forces with the Eclipse
community- did you approach Eclipse or vice versa?
Ian Skerret approached me after looking at one of my slide decks
on Slideshare. They are great!
What have been your experiences with the Eclipse
community so far?
It is a community of people that builds great tools, and as a
tool-builder I loved their feedback. I have been to EclipseCon
France which had a huge presence of M2M talks, and I made some
extremely good connections there.
This interview will also be published in the next edition of