SlideShare a Scribd company logo
M2M for Java Developers
MQTT with Eclipse Paho
Dominik Obermaier
@dobermai
excited about M2M
passionate
Architect & Maker

loves OSS
Co-Founder and
CTO at dc-square

likes Open Source Hardware
Dominik Obermaier
@dobermai
excited about M2M

loves OSS

passionate
Architect & Maker

Co-Founder and
CTO at dc-square

likes Open Source Hardware

K

Who not?!?
M2M?
TECHNOLOGY THA
T
SUPPORTS WIRED
OR WIRELESS
COMMUNICA
TION
BETWEEN DEVICES
Why
should
we
care?
“Things” in the Internet
2010

2015

2020

~6.909.000.000

~7.302.000.000

~7.675.000.000

[1]

[2]

~12.500.000.000 ~25.000.000.000 ~50.000.000.000

[1]Source: http://www.un.org/esa/population/publications/wpp2008/wpp2008_highlights.pdf
[2]Source: http://share.cisco.com/internet-of-things.html
“Things” in the Internet
People

Things

50,000,000,000

37,500,000,000

25,000,000,000

12,500,000,000

0
2010

2015

2020
“Things” in the Internet
People

Things

50,000,000,000

37,500,000,000

25,000,000,000

1.8x

12,500,000,000

0
2010

2015

2020
“Things” in the Internet
People

Things

50,000,000,000

37,500,000,000

25,000,000,000

1.8x
3.4x

12,500,000,000

0
2010

2015

2020
“Things” in the Internet
People

Things

50,000,000,000

6.5x

37,500,000,000

25,000,000,000

1.8x
3.4x

12,500,000,000

0
2010

2015

2020
Things?
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
Another revolution?
Screenshot Taken from Oracle JavaOne Strategic Keynote 2013
IoT
Which
protocol
?
HTTP?
Request / Response
Verbose
Polling instead of Push
No quality of service
How to get notified if clients die?
Stateless
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
Why MQTT?
✓ Simple
✓ Efficient
✓ Publish / Subscribe
✓ Quality of Service Levels
✓ Last Will and Testament
✓ Designed for unreliable networks
Why MQTT?
✓ Simple
✓ Efficient
✓ Publish / Subscribe
✓ Quality of Service Levels
✓ Last Will and Testament
✓ Designed for unreliable networks

K

Wireless? Yep, then it probably is unreliable
Publish / Subscribe
Broker Implementations
Broker Implementations
Broker Implementations
Broker Implementations
Broker Implementations
Broker Implementations
Broker Implementations

+ others
Broker Implementations

+ others
Extensive list of brokers available at http://mqtt.org/wiki/doku.php/brokers
Noooo! Sounds like
programming in C!
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
Java!
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
What is Paho?
✓ Scalable Open Source Implementations of M2M
standard protocols

✓ Focus on MQTT
✓ Implementations in Java, Javascript, Lua,
C, C++ and Python

✓ Eclipse Incubator
What is Paho?
K

Read: What is Paho at the moment

✓ Scalable Open Source Implementations of M2M
standard protocols

✓ Focus on MQTT
✓ Implementations in Java, Javascript, Lua,
C, C++ and Python

✓ Eclipse Incubator
Code!
public void start() throws Exception {
final String clientId = "eclipsecon_sub";
final MqttClient mqttClient = new MqttClient(BROKER_URL,
clientId, new MemoryPersistence());
mqttClient.setCallback(new SubscribeCallback(mqttClient));
mqttClient.connect();
mqttClient.subscribe(TOPIC_SUBSCRIPTION,
QUALITY_OF_SERVICE_LEVEL);
}
Moar Code!

public class SubscribeCallback implements MqttCallback {
@Override
public void connectionLost(Throwable cause) {}
@Override
public void deliveryComplete(MqttDeliveryToken token) {}
@Override
public void messageArrived(MqttTopic topic,
MqttMessage message)
throws Exception {
System.out.println(
"Message arrived. Topic: "
topic.getName() +
", QoS: " +
message.getQos() +
", message: " +
new String(message.getPayload(),Charset.forName("UTF-8")));
}
DEMO!
Other Eclipse
M2M Projects
Other Eclipse
M2M Projects

+ others
THANK
YOU!
Credits
✓ Scared Cat Picture by http://www.flickr.com/photos/
dat-pics/

✓ Thanks Vincent Le Moign for the awesome Icon Set
✓ Rest of pictures licensed from different people from
500px.com

✓ MQTT Logo by http://www.mqtt.org
✓ Paho Logo from http://wiki.eclipse.org/Paho/Branding

More Related Content

PDF
Bringing M2M to the web with Paho: Connecting Java Devices and online dashboa...
PDF
MQTT with Eclipse Paho: A protocol for IoT and M2M communication
PDF
An introduction to MQTT - Pub / Sub for the masses
PDF
IoT with MQTT and Paho for Webpages - Eclipse Democamp München 2014
PDF
MQTT with Java - a protocol for IoT and M2M communication
PDF
Securing MQTT - BuildingIoT 2016 slides
PDF
Introducing MQTT
PDF
Scaling MQTT - Webinar with Elastic Beam
Bringing M2M to the web with Paho: Connecting Java Devices and online dashboa...
MQTT with Eclipse Paho: A protocol for IoT and M2M communication
An introduction to MQTT - Pub / Sub for the masses
IoT with MQTT and Paho for Webpages - Eclipse Democamp München 2014
MQTT with Java - a protocol for IoT and M2M communication
Securing MQTT - BuildingIoT 2016 slides
Introducing MQTT
Scaling MQTT - Webinar with Elastic Beam

What's hot (20)

PDF
MQTT - Communication in the Internet of Things
PDF
JAX 2014 - M2M for Java Developers with MQTT
PDF
MQTT 101 - Getting started with the lightweight IoT Protocol
PDF
An introduction to MQTT
ODP
Connecting Internet of Things to the Cloud with MQTT
PDF
Powering your next IoT application with MQTT - JavaOne 2014 tutorial
PDF
Smart Home Live: Intelligent Detection of Fire or a Break-In with MQTT and Op...
PDF
MQTT, Eclipse Paho and Java - Messaging for the Internet of Things
PDF
MQTT - Protocol for the Internet of Things
PDF
MQTT - Austin IoT Meetup
ODP
Connect to the IoT with a lightweight protocol MQTT
PPTX
MQTT IOT Protocol Introduction
PDF
Mqtt overview (iot)
PDF
Node home automation with Node.js and MQTT
PPTX
Introduction to EMQ
 
PDF
A Short Report on MQTT protocol for Internet of Things(IoT)
PPTX
EMQ Company Deck
 
PDF
MQTT – protocol for yours IoT
PPTX
Introduction to EMQ X Enterprise
 
MQTT - Communication in the Internet of Things
JAX 2014 - M2M for Java Developers with MQTT
MQTT 101 - Getting started with the lightweight IoT Protocol
An introduction to MQTT
Connecting Internet of Things to the Cloud with MQTT
Powering your next IoT application with MQTT - JavaOne 2014 tutorial
Smart Home Live: Intelligent Detection of Fire or a Break-In with MQTT and Op...
MQTT, Eclipse Paho and Java - Messaging for the Internet of Things
MQTT - Protocol for the Internet of Things
MQTT - Austin IoT Meetup
Connect to the IoT with a lightweight protocol MQTT
MQTT IOT Protocol Introduction
Mqtt overview (iot)
Node home automation with Node.js and MQTT
Introduction to EMQ
 
A Short Report on MQTT protocol for Internet of Things(IoT)
EMQ Company Deck
 
MQTT – protocol for yours IoT
Introduction to EMQ X Enterprise
 
Ad

Viewers also liked (6)

PDF
Eclipse Paho Progress Report - EclipseCon 2012
PDF
Eclipse Democamps 2013 - M2M for Java Developers with MQTT
PDF
MQTT Hacks for Fun and... Fun!
PDF
Eclipse Paho - MQTT and the Internet of Things
PDF
Android Implementation using MQTT Protocol
PDF
Introduction MQTT in English
Eclipse Paho Progress Report - EclipseCon 2012
Eclipse Democamps 2013 - M2M for Java Developers with MQTT
MQTT Hacks for Fun and... Fun!
Eclipse Paho - MQTT and the Internet of Things
Android Implementation using MQTT Protocol
Introduction MQTT in English
Ad

Similar to M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013 (20)

PDF
Building the Internet of Things with Eclipse IoT - IoTBE meetup
PDF
Azure tales: a real world CQRS and ES Deep Dive - Andrea Saltarello
PDF
Building the IoT - Coding Serbia 2015
PPTX
Building Microservices in the cloud at AutoScout24
PDF
MQTT and SensorThings API MQTT Extension
PDF
Oracle Code Javaday Sao Paulo Monolith_to Microservices
PDF
Oracle Code One San Francisco - Monolith to microservices
PDF
Cloud native java are we there yet go tech world 2019
PDF
Oracle code bogota-Handle the Complexity of Migrate to Microservices from Mon...
PDF
Choose Your Own Adventure with JHipster & Kubernetes - Utah JUG 2020
PDF
Join Our Party: The Cloud Native Adventure Brigade (TCSW 2019)
PDF
Micronaut: Changing the Micro Future
PDF
Кирилл Толкачев. Микросервисы: огонь, вода и девопс
PPTX
OpenShift: Devops Made Easy
PDF
#JavadayEcuador Monolith to Microservices
PDF
Eclipse IoT Talk (Montreal JUG)
PDF
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.
PDF
Tampere Docker meetup - Happy 5th Birthday Docker
PPTX
Docker Bday #5, SF Edition: Introduction to Docker
PPTX
Web Techdfasvfsvgsfgnolofgdfggy Unit I.pptx
Building the Internet of Things with Eclipse IoT - IoTBE meetup
Azure tales: a real world CQRS and ES Deep Dive - Andrea Saltarello
Building the IoT - Coding Serbia 2015
Building Microservices in the cloud at AutoScout24
MQTT and SensorThings API MQTT Extension
Oracle Code Javaday Sao Paulo Monolith_to Microservices
Oracle Code One San Francisco - Monolith to microservices
Cloud native java are we there yet go tech world 2019
Oracle code bogota-Handle the Complexity of Migrate to Microservices from Mon...
Choose Your Own Adventure with JHipster & Kubernetes - Utah JUG 2020
Join Our Party: The Cloud Native Adventure Brigade (TCSW 2019)
Micronaut: Changing the Micro Future
Кирилл Толкачев. Микросервисы: огонь, вода и девопс
OpenShift: Devops Made Easy
#JavadayEcuador Monolith to Microservices
Eclipse IoT Talk (Montreal JUG)
Open IoT Cloud Architecture, Web of Things, Shenzhen, China.
Tampere Docker meetup - Happy 5th Birthday Docker
Docker Bday #5, SF Edition: Introduction to Docker
Web Techdfasvfsvgsfgnolofgdfggy Unit I.pptx

More from Dominik Obermaier (17)

PPTX
Kafka Summit 2021 - Why MQTT and Kafka are a match made in heaven
PDF
Software-Infrastrukturen modernisieren in der Produktion - Digitale Transform...
PPTX
Inntroduction to MQTT Sparkplug with HiveMQ and Opto22
PDF
Building a reliable and scalable IoT platform with MongoDB and HiveMQ
PDF
Modernizing the Manufacturing Industry with Kafka and MQTT
PDF
HiveMQ Cloud - The Cloud Native IoT Messaging Layer
PDF
MQTT AS A KEY TECHNOLOGY FOR INDUSTRY 4.0 & IIoT
PPTX
MQTT 5: Why you need it and potential pitfalls
PDF
HiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTT
PDF
A pure Java MQTT Stack for IoT
PDF
Lightweight and scalable IoT Architectures with MQTT
PDF
Lightweight and scalable IoT Messaging with MQTT
PDF
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
PDF
MQTT 5 - What's New?
PDF
MQTT Deep Dive Workshop [GERMAN]
PDF
Pub/Sub for the masses- Ein Einführungsworkshop in MQTT [GERMAN]
PDF
Push! - MQTT for the Internet of Things
Kafka Summit 2021 - Why MQTT and Kafka are a match made in heaven
Software-Infrastrukturen modernisieren in der Produktion - Digitale Transform...
Inntroduction to MQTT Sparkplug with HiveMQ and Opto22
Building a reliable and scalable IoT platform with MongoDB and HiveMQ
Modernizing the Manufacturing Industry with Kafka and MQTT
HiveMQ Cloud - The Cloud Native IoT Messaging Layer
MQTT AS A KEY TECHNOLOGY FOR INDUSTRY 4.0 & IIoT
MQTT 5: Why you need it and potential pitfalls
HiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTT
A pure Java MQTT Stack for IoT
Lightweight and scalable IoT Architectures with MQTT
Lightweight and scalable IoT Messaging with MQTT
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
MQTT 5 - What's New?
MQTT Deep Dive Workshop [GERMAN]
Pub/Sub for the masses- Ein Einführungsworkshop in MQTT [GERMAN]
Push! - MQTT for the Internet of Things

Recently uploaded (20)

PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Big Data Technologies - Introduction.pptx
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Machine learning based COVID-19 study performance prediction
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Spectral efficient network and resource selection model in 5G networks
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
KodekX | Application Modernization Development
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Review of recent advances in non-invasive hemoglobin estimation
Big Data Technologies - Introduction.pptx
NewMind AI Monthly Chronicles - July 2025
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Advanced methodologies resolving dimensionality complications for autism neur...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
The Rise and Fall of 3GPP – Time for a Sabbatical?
Understanding_Digital_Forensics_Presentation.pptx
Machine learning based COVID-19 study performance prediction
MYSQL Presentation for SQL database connectivity
Building Integrated photovoltaic BIPV_UPV.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Spectral efficient network and resource selection model in 5G networks
“AI and Expert System Decision Support & Business Intelligence Systems”
KodekX | Application Modernization Development
Unlocking AI with Model Context Protocol (MCP)
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication

M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013