SlideShare a Scribd company logo
1 of 27
OCEAN IoT Platform Guide
IoT Platform Startup guide
July 17th, 2016
Youngmin Kim
rladudals02@gmail.com
1
• IoT Platform
– Mobius Yellow Turtle
– &Cube: Thyme (TAS)
• Process (without MQTT)
• MQTT broker
– Mosquitto
• Process (with MQTT)
• Reference
2
IoT Platform
3
IoT Platform
• OCEAN
– Formerly Open alliance for iot standard
– Global partnership based on open source and
IoT standards
– Aims to promote the development and
commercialization of IoT platforms, products,
and services by widespread adoption of IoT
standards-compliant open source.
– http://iotocean.org/
4
IoT Platform
• Mobius – Yellow Turtle
– An open source software of oneM2M-based
IoT Server Platform based on Node.js Java Script.
– The source code and files of Yellow Turtle are
under the OCEAN license terms and conditions,
i.e., 3-clause BSD open source license.
– http://www.iotocean.org/download/?tab1=1&
tab2=20
5
IoT Platform
• &Cube: Thyme
– An open source software of oneM2M-based
IoT Device Platform based on Node.js Java
Script.
– The source code and files of Thyme are under
the OCEAN license terms and conditions, i.e.,
3-clause BSD open source license.
– http://www.iotocean.org/download/?tab1=2
6
IoT Platform Schema
ADN
AE
ADN
AE
ADN
AE
IN
CSE
AE
Mca
Mca Mcc’
Mobius –
Yellow Turtle
&Cube -
Thyme
Mcn
Figure 1. Example (Node. js version)
7
IoT Platform Schema
AE
(Content
s)
IN-CSE
(Mobius:
Yellow
Turtle
Beacon
TAS AE
(&Cube:
Thyme)
Raspberry Pi
CSE-
Mobius
AE
ss_1_ctrl
ss_1
Subscription
Subscription
BLE
8
Process ( without MQTT )
Server
Yellow
Turtle
Database
MySQLRaspberry Pi
Bluez TAS Thyme
Raspberry Pi
Bluez TAS Thyme
Raspberry Pi
Bluez TAS Thyme USER
Application
Beacon
Data
9
Process ( without MQTT )
• Start Mobius
– First implement make CSE ID.
– ER_DUP_ENTRY is because of second implement.
– QnA page
• http://www.iotocean.org/Community/?tab1=2
Figure 4. Console of Mobius ( Pictures can be little different. )
10
Process ( without MQTT )
• Start Thyme
– We must modify conf.xml of Thyme in order to connect
Mobius (cbhost = Mobius server’s IP address).
– Create IDs that can be modified conf.xml
( Pictures can be little different. )
Figure 5. Console of Thyme Figure 6. Console of Mobius
11
Process ( without MQTT )
• Start Thyme_TAS
– We can see data transfer ( TAS -> Thyme -> Mobius ).
– If you want to implement TAS in windows,
http://www.iotocean.org/Community/view.asp?pageNo=
2&tab1=1&tab2=0&tab3=all&sType&word=&idx=1163
Figure 7. Console of TAS Figure 8. Console of Thyme
( Pictures can be little different. )
12
Process ( without MQTT )
• Start Thyme_TAS
– You can see data transfer ( TAS -> Thyme -> Mobius ).
Figure 9. Console of Mobius
( Pictures can be little different. )
13
MQTT broker
14
MQTT Protocol
• MQTT
– Formerly MQ Telemetry Transport
– A lightweight messaging protocol for small
sensors and mobile devices.
– The publish-subscribe messaging
pattern requires a message broker.
– http://mqtt.org/
15
MQTT Method
• MQTT Method
– Connect
• Waits for a connection to be established with the server.
– Disconnect
• Waits for the MQTT client to finish any work it must do,
and for the TCP/IP session to disconnect.
– Subscribe
• Waits for completion of the Subscribe or Unsubscribe
method.
– Unsubscribe
• Requests the server unsubscribe the client from one or
more topics.
– Publish
• Returns immediately to the application thread after
passing the request to the MQTT client.
16
MQTT broker
• Mosquitto
– Open source message broker that
implements the MQTT
– https://mosquitto.org/
• Others
– Emqttd, ActiveMQ, Apollo, HiveMQ, IBM
MessageSight, JoramMQ, RabbitMQ, Solace
Message Routers, and VerneMQ.
17
MQTT broker
• Mosquitto
– Synopsis
• Mosquitto [-c config file] [-d | --daemon][-p port
number][-v]
– Options
• -p, --port
– Listen on the port specified instead of the default
1883.
• -v, --verbose
– Use verbose logging.
18
Process ( with MQTT )
Server
Yellow
Turtle
Server
Mosquitto
broker
Database
MySQL
Raspberry Pi
Bluez TAS Thyme
Raspberry Pi
Bluez TAS Thyme
Raspberry Pi
Bluez TAS Thyme USER
Application
Beacon
Data
MQTT
proxy
Figure 10. Example (Remote MQTT broker)
19
Process ( with MQTT )
• This case implements the former.
• But something different.
– We must implement two js file in Mobius (app.js,
pxymqtt.js).
– We have to change implement file in Thyme (app.js ->
mqtt_app.js).
– We use mosqutto (MQTT broker).
– We must modify TAS conf.xml in order to match
Thyme’s mqtt_conf.xml (parentport = tasport).
– Also we have to assign mqtt proxy (conf.json of Mobius
– mqttproxy = mosquitto’s IP address).
– We need forwarding, so we have to uncomment
function (mqtt_forwarding).
20
Process ( with MQTT )
• Start mosquitto.
– We use this for MQTT broker.
– If we want to use proxy server, we must modify
Mobius conf.json file (mqttproxy = MQTT
server IP address).
– Command : mosquitto.exe -v
Figure 11. Console of Mosquitto
( Pictures can be little different. )
21
Process ( with MQTT )
• Start Mobius - pxymqtt.
– We need forwarding, so we have to uncomment
function (mqtt_forwarding).
Figure 13. Console of Mosquitto ( Pictures can be little different. )
Figure 12. Console of Mobius (pxymqtt)
22
Process ( with MQTT )
• All program start like the former process.
– We can see data transmission.
Figure 14. Console of mosquito ( Pictures can be little different. )
23
TEST Environment
• Raspberry Pi
– node : v0.10.29
– npm : v1.4.21
– Thyme : v1.5
– Thyme TAS : v1.3
• Server (Windows 10, Windows server 2012 R2)
– Node.js : v4.4.4, v4.4.6, v4.4.7
– Nginx : v1.10.1
– Mobius (Yellow Turtle) : v2.0.5
– Mosquitto : v1.3.5
24
Reference
25
Reference
• Web page
– http://iotocean.org
– https://en.wikipedia.org/wiki/MQTT
– http://mqtt.org
– https://mosquitto.org/
• Document
– 『oneM2M 서비스 플랫폼 표준 해설서』, 한국정보통신기술협회, 2014-
11-30
– 『oneM2M 어플리케이션 개발자 가이드 표준 해설서』, 한국정보통신기술
협회, 2015-11-30
– 「MQTT Version 3.1.1」, OASIS, 2014-10-29
– 「Mobius : Yellow Turtle Installation Guide v1.9」, OCEAN, 2016-12
– 「“개방형 사물인터넷 플랫폼(Mobius, &Cube) 기반 서비스 개발 실습” 교
육 과정」, 전자부품연구원
26
July 17th, 2016
Youngmin Kim
rladudals02@gmail.com
27

More Related Content

What's hot

Stratello : marketing automation et parcours client
Stratello : marketing automation et parcours clientStratello : marketing automation et parcours client
Stratello : marketing automation et parcours clientLaurence EVRARD
 
Lead Submission & Lead Management Process
Lead Submission & Lead Management ProcessLead Submission & Lead Management Process
Lead Submission & Lead Management ProcessSalesforce Partners
 
Summary - The Four steps to the Epiphany - Steve Blank
Summary - The Four steps to the Epiphany - Steve Blank Summary - The Four steps to the Epiphany - Steve Blank
Summary - The Four steps to the Epiphany - Steve Blank Rohit Sharma
 
What is funnel marketing
What is funnel marketingWhat is funnel marketing
What is funnel marketingGauravNayyar12
 
Building Sustainable Brands the Brand Management Process
Building Sustainable Brands the Brand Management ProcessBuilding Sustainable Brands the Brand Management Process
Building Sustainable Brands the Brand Management ProcessEndeavor Management
 
Starbucks - Delivering Customer Service
Starbucks - Delivering Customer ServiceStarbucks - Delivering Customer Service
Starbucks - Delivering Customer ServiceBenu Sagar Dubey
 
2018 Product Launch Campaign Planner Template [Excel Template]
2018 Product Launch Campaign Planner Template [Excel Template]2018 Product Launch Campaign Planner Template [Excel Template]
2018 Product Launch Campaign Planner Template [Excel Template]unfunnel
 
UX best practices for ecommerce websites
UX best practices for ecommerce websitesUX best practices for ecommerce websites
UX best practices for ecommerce websitesDonna Sandsmark
 
Creating customer value and customer relationship s1
Creating customer value and customer relationship s1Creating customer value and customer relationship s1
Creating customer value and customer relationship s1Sameer Mathur
 
Principles of MARKETING - Managing Marketing Information to gain Customer Ins...
Principles of MARKETING - Managing Marketing Information to gain Customer Ins...Principles of MARKETING - Managing Marketing Information to gain Customer Ins...
Principles of MARKETING - Managing Marketing Information to gain Customer Ins...Ramil Jabbarov
 

What's hot (16)

Stratello : marketing automation et parcours client
Stratello : marketing automation et parcours clientStratello : marketing automation et parcours client
Stratello : marketing automation et parcours client
 
Competitor Analysis
Competitor AnalysisCompetitor Analysis
Competitor Analysis
 
Marketing plan
Marketing planMarketing plan
Marketing plan
 
Lead Submission & Lead Management Process
Lead Submission & Lead Management ProcessLead Submission & Lead Management Process
Lead Submission & Lead Management Process
 
Summary - The Four steps to the Epiphany - Steve Blank
Summary - The Four steps to the Epiphany - Steve Blank Summary - The Four steps to the Epiphany - Steve Blank
Summary - The Four steps to the Epiphany - Steve Blank
 
What is funnel marketing
What is funnel marketingWhat is funnel marketing
What is funnel marketing
 
Starbucks ppt
Starbucks pptStarbucks ppt
Starbucks ppt
 
Building Sustainable Brands the Brand Management Process
Building Sustainable Brands the Brand Management ProcessBuilding Sustainable Brands the Brand Management Process
Building Sustainable Brands the Brand Management Process
 
Marketing Plan
Marketing PlanMarketing Plan
Marketing Plan
 
Starbucks - Delivering Customer Service
Starbucks - Delivering Customer ServiceStarbucks - Delivering Customer Service
Starbucks - Delivering Customer Service
 
2018 Product Launch Campaign Planner Template [Excel Template]
2018 Product Launch Campaign Planner Template [Excel Template]2018 Product Launch Campaign Planner Template [Excel Template]
2018 Product Launch Campaign Planner Template [Excel Template]
 
Customer Research - Briefly Explained
Customer Research - Briefly ExplainedCustomer Research - Briefly Explained
Customer Research - Briefly Explained
 
UX best practices for ecommerce websites
UX best practices for ecommerce websitesUX best practices for ecommerce websites
UX best practices for ecommerce websites
 
Creating customer value and customer relationship s1
Creating customer value and customer relationship s1Creating customer value and customer relationship s1
Creating customer value and customer relationship s1
 
Principles of MARKETING - Managing Marketing Information to gain Customer Ins...
Principles of MARKETING - Managing Marketing Information to gain Customer Ins...Principles of MARKETING - Managing Marketing Information to gain Customer Ins...
Principles of MARKETING - Managing Marketing Information to gain Customer Ins...
 
Business Model
Business ModelBusiness Model
Business Model
 

Similar to OCEAN IoT Platform Guide

Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...
Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...
Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...Manish Kumar Yadav
 
Network-Connected Development with ZeroMQ
Network-Connected Development with ZeroMQNetwork-Connected Development with ZeroMQ
Network-Connected Development with ZeroMQICS
 
Tutorial mikrotik step by step anung muhandanu
Tutorial mikrotik step by step  anung muhandanu Tutorial mikrotik step by step  anung muhandanu
Tutorial mikrotik step by step anung muhandanu Alessandro De Suoodh
 
Blockchain Development
Blockchain DevelopmentBlockchain Development
Blockchain Developmentpreetikumara
 
Node home automation with Node.js and MQTT
Node home automation with Node.js and MQTTNode home automation with Node.js and MQTT
Node home automation with Node.js and MQTTMichael Dawson
 
End-to-end IoT solutions with Java and Eclipse IoT
End-to-end IoT solutions with Java and Eclipse IoTEnd-to-end IoT solutions with Java and Eclipse IoT
End-to-end IoT solutions with Java and Eclipse IoTBenjamin Cabé
 
Introduction MQTT in English
Introduction MQTT in EnglishIntroduction MQTT in English
Introduction MQTT in EnglishEric Xiao
 
Messaging for the Internet of Awesome Things
Messaging for the Internet of Awesome ThingsMessaging for the Internet of Awesome Things
Messaging for the Internet of Awesome ThingsAndy Piper
 
Using open source for IoT
Using open source for IoTUsing open source for IoT
Using open source for IoTIan Skerrett
 
Nilden Tutular, Volkan Balikci, Uygar Zubari [Eldor Corporation] | MQTT - Mac...
Nilden Tutular, Volkan Balikci, Uygar Zubari [Eldor Corporation] | MQTT - Mac...Nilden Tutular, Volkan Balikci, Uygar Zubari [Eldor Corporation] | MQTT - Mac...
Nilden Tutular, Volkan Balikci, Uygar Zubari [Eldor Corporation] | MQTT - Mac...InfluxData
 
Low Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTTLow Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTTHenrik Sjöstrand
 
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....Marcin Bielak
 
ONLINE FOOD ORDERS THROUGH WHATSAPP AUTOMATION BOT
ONLINE FOOD ORDERS THROUGH WHATSAPP AUTOMATION BOTONLINE FOOD ORDERS THROUGH WHATSAPP AUTOMATION BOT
ONLINE FOOD ORDERS THROUGH WHATSAPP AUTOMATION BOTIRJET Journal
 
Mulesoft Pune Meetup Deck - Apr 2020
Mulesoft Pune Meetup Deck - Apr 2020Mulesoft Pune Meetup Deck - Apr 2020
Mulesoft Pune Meetup Deck - Apr 2020Santosh Ojha
 
SDARPiBot - VLES'16
SDARPiBot - VLES'16SDARPiBot - VLES'16
SDARPiBot - VLES'16Arun Joseph
 
Pushing Data from S7-1200 to Cloud
Pushing Data from S7-1200 to CloudPushing Data from S7-1200 to Cloud
Pushing Data from S7-1200 to CloudDMC, Inc.
 
Ekon25 mORMot 2 Server-Side Notifications
Ekon25 mORMot 2 Server-Side NotificationsEkon25 mORMot 2 Server-Side Notifications
Ekon25 mORMot 2 Server-Side NotificationsArnaud Bouchez
 

Similar to OCEAN IoT Platform Guide (20)

Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...
Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...
Mumbai MuleSoft Meetup:Batch Processing, Anypoint Messaging Queue and Custom ...
 
Network-Connected Development with ZeroMQ
Network-Connected Development with ZeroMQNetwork-Connected Development with ZeroMQ
Network-Connected Development with ZeroMQ
 
An introduction to MQTT
An introduction to MQTTAn introduction to MQTT
An introduction to MQTT
 
Tutorial mikrotik step by step anung muhandanu
Tutorial mikrotik step by step  anung muhandanu Tutorial mikrotik step by step  anung muhandanu
Tutorial mikrotik step by step anung muhandanu
 
Blockchain Development
Blockchain DevelopmentBlockchain Development
Blockchain Development
 
Node home automation with Node.js and MQTT
Node home automation with Node.js and MQTTNode home automation with Node.js and MQTT
Node home automation with Node.js and MQTT
 
End-to-end IoT solutions with Java and Eclipse IoT
End-to-end IoT solutions with Java and Eclipse IoTEnd-to-end IoT solutions with Java and Eclipse IoT
End-to-end IoT solutions with Java and Eclipse IoT
 
Introduction MQTT in English
Introduction MQTT in EnglishIntroduction MQTT in English
Introduction MQTT in English
 
Messaging for the Internet of Awesome Things
Messaging for the Internet of Awesome ThingsMessaging for the Internet of Awesome Things
Messaging for the Internet of Awesome Things
 
6. TinyOS_2.pdf
6. TinyOS_2.pdf6. TinyOS_2.pdf
6. TinyOS_2.pdf
 
Using open source for IoT
Using open source for IoTUsing open source for IoT
Using open source for IoT
 
Nilden Tutular, Volkan Balikci, Uygar Zubari [Eldor Corporation] | MQTT - Mac...
Nilden Tutular, Volkan Balikci, Uygar Zubari [Eldor Corporation] | MQTT - Mac...Nilden Tutular, Volkan Balikci, Uygar Zubari [Eldor Corporation] | MQTT - Mac...
Nilden Tutular, Volkan Balikci, Uygar Zubari [Eldor Corporation] | MQTT - Mac...
 
Low Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTTLow Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTT
 
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, Poznań 21....
 
Immutant
ImmutantImmutant
Immutant
 
ONLINE FOOD ORDERS THROUGH WHATSAPP AUTOMATION BOT
ONLINE FOOD ORDERS THROUGH WHATSAPP AUTOMATION BOTONLINE FOOD ORDERS THROUGH WHATSAPP AUTOMATION BOT
ONLINE FOOD ORDERS THROUGH WHATSAPP AUTOMATION BOT
 
Mulesoft Pune Meetup Deck - Apr 2020
Mulesoft Pune Meetup Deck - Apr 2020Mulesoft Pune Meetup Deck - Apr 2020
Mulesoft Pune Meetup Deck - Apr 2020
 
SDARPiBot - VLES'16
SDARPiBot - VLES'16SDARPiBot - VLES'16
SDARPiBot - VLES'16
 
Pushing Data from S7-1200 to Cloud
Pushing Data from S7-1200 to CloudPushing Data from S7-1200 to Cloud
Pushing Data from S7-1200 to Cloud
 
Ekon25 mORMot 2 Server-Side Notifications
Ekon25 mORMot 2 Server-Side NotificationsEkon25 mORMot 2 Server-Side Notifications
Ekon25 mORMot 2 Server-Side Notifications
 

Recently uploaded

Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 

Recently uploaded (20)

Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 

OCEAN IoT Platform Guide

  • 1. OCEAN IoT Platform Guide IoT Platform Startup guide July 17th, 2016 Youngmin Kim rladudals02@gmail.com 1
  • 2. • IoT Platform – Mobius Yellow Turtle – &Cube: Thyme (TAS) • Process (without MQTT) • MQTT broker – Mosquitto • Process (with MQTT) • Reference 2
  • 4. IoT Platform • OCEAN – Formerly Open alliance for iot standard – Global partnership based on open source and IoT standards – Aims to promote the development and commercialization of IoT platforms, products, and services by widespread adoption of IoT standards-compliant open source. – http://iotocean.org/ 4
  • 5. IoT Platform • Mobius – Yellow Turtle – An open source software of oneM2M-based IoT Server Platform based on Node.js Java Script. – The source code and files of Yellow Turtle are under the OCEAN license terms and conditions, i.e., 3-clause BSD open source license. – http://www.iotocean.org/download/?tab1=1& tab2=20 5
  • 6. IoT Platform • &Cube: Thyme – An open source software of oneM2M-based IoT Device Platform based on Node.js Java Script. – The source code and files of Thyme are under the OCEAN license terms and conditions, i.e., 3-clause BSD open source license. – http://www.iotocean.org/download/?tab1=2 6
  • 7. IoT Platform Schema ADN AE ADN AE ADN AE IN CSE AE Mca Mca Mcc’ Mobius – Yellow Turtle &Cube - Thyme Mcn Figure 1. Example (Node. js version) 7
  • 8. IoT Platform Schema AE (Content s) IN-CSE (Mobius: Yellow Turtle Beacon TAS AE (&Cube: Thyme) Raspberry Pi CSE- Mobius AE ss_1_ctrl ss_1 Subscription Subscription BLE 8
  • 9. Process ( without MQTT ) Server Yellow Turtle Database MySQLRaspberry Pi Bluez TAS Thyme Raspberry Pi Bluez TAS Thyme Raspberry Pi Bluez TAS Thyme USER Application Beacon Data 9
  • 10. Process ( without MQTT ) • Start Mobius – First implement make CSE ID. – ER_DUP_ENTRY is because of second implement. – QnA page • http://www.iotocean.org/Community/?tab1=2 Figure 4. Console of Mobius ( Pictures can be little different. ) 10
  • 11. Process ( without MQTT ) • Start Thyme – We must modify conf.xml of Thyme in order to connect Mobius (cbhost = Mobius server’s IP address). – Create IDs that can be modified conf.xml ( Pictures can be little different. ) Figure 5. Console of Thyme Figure 6. Console of Mobius 11
  • 12. Process ( without MQTT ) • Start Thyme_TAS – We can see data transfer ( TAS -> Thyme -> Mobius ). – If you want to implement TAS in windows, http://www.iotocean.org/Community/view.asp?pageNo= 2&tab1=1&tab2=0&tab3=all&sType&word=&idx=1163 Figure 7. Console of TAS Figure 8. Console of Thyme ( Pictures can be little different. ) 12
  • 13. Process ( without MQTT ) • Start Thyme_TAS – You can see data transfer ( TAS -> Thyme -> Mobius ). Figure 9. Console of Mobius ( Pictures can be little different. ) 13
  • 15. MQTT Protocol • MQTT – Formerly MQ Telemetry Transport – A lightweight messaging protocol for small sensors and mobile devices. – The publish-subscribe messaging pattern requires a message broker. – http://mqtt.org/ 15
  • 16. MQTT Method • MQTT Method – Connect • Waits for a connection to be established with the server. – Disconnect • Waits for the MQTT client to finish any work it must do, and for the TCP/IP session to disconnect. – Subscribe • Waits for completion of the Subscribe or Unsubscribe method. – Unsubscribe • Requests the server unsubscribe the client from one or more topics. – Publish • Returns immediately to the application thread after passing the request to the MQTT client. 16
  • 17. MQTT broker • Mosquitto – Open source message broker that implements the MQTT – https://mosquitto.org/ • Others – Emqttd, ActiveMQ, Apollo, HiveMQ, IBM MessageSight, JoramMQ, RabbitMQ, Solace Message Routers, and VerneMQ. 17
  • 18. MQTT broker • Mosquitto – Synopsis • Mosquitto [-c config file] [-d | --daemon][-p port number][-v] – Options • -p, --port – Listen on the port specified instead of the default 1883. • -v, --verbose – Use verbose logging. 18
  • 19. Process ( with MQTT ) Server Yellow Turtle Server Mosquitto broker Database MySQL Raspberry Pi Bluez TAS Thyme Raspberry Pi Bluez TAS Thyme Raspberry Pi Bluez TAS Thyme USER Application Beacon Data MQTT proxy Figure 10. Example (Remote MQTT broker) 19
  • 20. Process ( with MQTT ) • This case implements the former. • But something different. – We must implement two js file in Mobius (app.js, pxymqtt.js). – We have to change implement file in Thyme (app.js -> mqtt_app.js). – We use mosqutto (MQTT broker). – We must modify TAS conf.xml in order to match Thyme’s mqtt_conf.xml (parentport = tasport). – Also we have to assign mqtt proxy (conf.json of Mobius – mqttproxy = mosquitto’s IP address). – We need forwarding, so we have to uncomment function (mqtt_forwarding). 20
  • 21. Process ( with MQTT ) • Start mosquitto. – We use this for MQTT broker. – If we want to use proxy server, we must modify Mobius conf.json file (mqttproxy = MQTT server IP address). – Command : mosquitto.exe -v Figure 11. Console of Mosquitto ( Pictures can be little different. ) 21
  • 22. Process ( with MQTT ) • Start Mobius - pxymqtt. – We need forwarding, so we have to uncomment function (mqtt_forwarding). Figure 13. Console of Mosquitto ( Pictures can be little different. ) Figure 12. Console of Mobius (pxymqtt) 22
  • 23. Process ( with MQTT ) • All program start like the former process. – We can see data transmission. Figure 14. Console of mosquito ( Pictures can be little different. ) 23
  • 24. TEST Environment • Raspberry Pi – node : v0.10.29 – npm : v1.4.21 – Thyme : v1.5 – Thyme TAS : v1.3 • Server (Windows 10, Windows server 2012 R2) – Node.js : v4.4.4, v4.4.6, v4.4.7 – Nginx : v1.10.1 – Mobius (Yellow Turtle) : v2.0.5 – Mosquitto : v1.3.5 24
  • 26. Reference • Web page – http://iotocean.org – https://en.wikipedia.org/wiki/MQTT – http://mqtt.org – https://mosquitto.org/ • Document – 『oneM2M 서비스 플랫폼 표준 해설서』, 한국정보통신기술협회, 2014- 11-30 – 『oneM2M 어플리케이션 개발자 가이드 표준 해설서』, 한국정보통신기술 협회, 2015-11-30 – 「MQTT Version 3.1.1」, OASIS, 2014-10-29 – 「Mobius : Yellow Turtle Installation Guide v1.9」, OCEAN, 2016-12 – 「“개방형 사물인터넷 플랫폼(Mobius, &Cube) 기반 서비스 개발 실습” 교 육 과정」, 전자부품연구원 26
  • 27. July 17th, 2016 Youngmin Kim rladudals02@gmail.com 27