SlideShare a Scribd company logo
1 of 22
Creating a Modern IIoT Monitoring Solution
Using iOS Swift, MQTT and InfluxDB
MOXIE IoT LLC
2
About Deft Dynamics
Smart Materials
Composite Structures
Embedded Electronics
Industrial IoT
Tele-operated Robotics
Embedded Intelligence
Birmingham
Venture Studio
Giving Ideas a Pulse
MOXIE IoT LLC
3
Moxie IIoT
Predictive
UtilizationBusiness
Insights
Safety
Downtime
IoT Technology for all Industrial Teams
• Operations - Utilization, downtime, safety
• Maintenance - Service intervals, distance travelled, overload events
• Technology Team - Predictive maintenance, business insights
MOXIE IoT LLC
4
MOXIEWORLD
Combine Four IoT Technologies:
• UWB Indoor Positioning
• Real-time Stream (MQTT)
• Historic Time-series Database (InfluxDB 2.0)
• App-centric Interface (iOS Swift)
To Provide Customer Benefits:
• Low Latency (2-10 seconds) 3D visualization
• Easily configured to help all your Teams
• Create and manage projects in-App
3D
Visualization
Live/Historic
Insights
MOXIE IoT LLC
5
Applications
MOXIE IoT LLC
6
UWB Indoor Positioning
Anchor
Fixed Reference Point
Tag
Mobile Tracker & Gateway
Ultra Wideband
• Mobile ‘Tags’ and Stationary ‘Anchors’
• 10 cm accuracy indoor positioning
• 50m+ range
• Combine with GPS for indoor/outdoor
MOXIE IoT LLC
7
MQTT
• Publish/Subscribe Messaging
• IoT Device Benefits
• Low-Bandwidth (e.g. for CAT-M1 carrier compliance)
• Safe keep-alive timing
• on-disconnect events (LW&T)
• Single Broker Supports
• Thousands of Devices
• Topic Filters safely isolate users
• Easy to Host / Many 3rd Party Tools
• Drivers for Py/C++/Java/…
MQTT
Broker
Limited View
Full Access View
IoT Devices
MOXIE IoT LLC
8
Why InfluxDB?
• Why InfluxDB?
• Time-series for IoT (c.f. DynamoDB)
• NOT end-to-end (c.f. AWS IoT)
• Relevant data filtering unloads app
• Why InfluxDB Cloud?
• Manage accounts and access
• Interactive query builder
• Clear storage pricing (c.f. AWS)
MOXIE IoT LLC
9
iOS Swift
• Why iOS?
• Connecting to Real World devices
• Focus energy on one platform
• Tools for
• 3D visualization
• Map-based visualization
• Input/Output (BLE / MQTT / etc.)
MOXIE IoT LLC
10
Technical Content Outline
• ‘3D’ IoT Data
• MQTT Stream
• JSON – (MQTT explorer)
• MQTT Transfer
• EC2 – (python demo)
• InfluxDB Backend
• Demo query on ‘DB Cloud
• InfluxDB in Swift
• HTTP Post technique
• Demo 3D query on App
• Handling Range/ Combinations
MOXIE IoT LLC
11
IoT Data
• Independent (X)
• Time
• Position
• Dependent (Y)
• Speed
• Load
• Voltage
• Etc…
MOXIE IoT LLC
12
Network Layout
Embedded
System
Moxie IoT Cloud
iOS App
MQTT
Real time
stream
InfluxDB 2.0
Historic Data
EC2/Python
Sort/Filter
+ Transfer
Flux
Query
Digital Twin
Dashboard
CSV
MQTT
Client
WIFI
LTE-M1
WIFI
LTE / 5G
Three Data Access Points for Customers
1. MQTT Stream (live, stream)
2. InfluxDB (historic, query)
3. App-Interface (digital twin, dashboard)
Bandwidth
MQTT: 240 bytes/update @ 1 Hz = 622 Mb/month/device
Influx: 80 bytes/update @ 0.1 Hz = 20.7 Mb/month/device
MOXIE IoT LLC
13
MQTT Stream
• MQTT Stream
• Topic Organization
• JSON Payloads – MQTT explorer
/ / / /
Header per Project
Account name used to filter each business
Device Type
Hardware Unique ID
Packet Type
JSON Payload (motor load)MW [Account] Tag [Tag UUID] UWB
MOXIE IoT LLC
14
MQTT Transfer (2/4)
• Python Tools
• Paho MQTT Client
• InfluxDBClient
• Process
• Buffer incoming message by account (Bucket)
• Transfer to InfluxDB Every X Seconds
• Filter if desired (e.g. average, max)
• Clear buffer
MOXIE IoT LLC
15
Storage & Query Design
• InfluxDB 2.0 Cloud
• Scheme
• [bucket] = Account
• _measurement = UUID
• _field = value from JSON
• Demo query on iDB Cloud
• Problem with ‘1D’ queries:
• How to align with position?
MOXIE IoT LLC
16
iOS Swift Query (1/3)
• InfluxDB Query in Swift
• UrlSession POST dataTask
• CSV format
• Closure return results
MOXIE IoT LLC
17
iOS Swift Query (2/3)
• InfluxDB Query in Swift
• UrlSession POST dataTask
• CSV format
• Closure return results
• Helper Object for Manipulation
• Create array of [FluxOperation]
• Run sequentially to generate Flux
query string
MOXIE IoT LLC
18
iOS Swift Query (3/3)
• InfluxDB Query in Swift
• Building Block Query Creation for User
• Filter+Pivot Creates ‘3D’ Result:
(value vs x,y,t)
User Selected
Combinations
MOXIE IoT LLC
19
Data Insights
CNC Spindle Load at a Production Machine Shop
• Determined spindles were overloaded when
grease was cool in the morning
• Optimize toolpaths to reduce 22% air time
(tool changes and rapid feeds)
Bridge Crane at Metals Distributor
• Optimize pre-loading material locations
• Adjust truck arrival schedule to balance shift
workload
MOXIE IoT LLC
20
System Demo
MOXIE IoT LLC
21
Next Steps
Next Steps with InfluxDB
• User-defined InfluxDB Cloud Alerts
• Rescaling data for long-term storage
Next Steps in Product Evolution
• LIDAR scanning for CAD models
• UWB built-in on iPhone 11,12
• Long term
• Cross-facility tracking (port to port)
• App as interface for AGV and robots
3029 4th AVE S.
BIRMINGHAM, AL 35233
hello@moxieiot.com
1.205.907.0165
moxieiot.com

More Related Content

What's hot

Serverless Streaming Architectures and Algorithms for the Enterprise
Serverless Streaming Architectures and Algorithms for the EnterpriseServerless Streaming Architectures and Algorithms for the Enterprise
Serverless Streaming Architectures and Algorithms for the Enterprise
Arun Kejariwal
 

What's hot (20)

Quantum Computing ppt
Quantum Computing  pptQuantum Computing  ppt
Quantum Computing ppt
 
Serverless Streaming Architectures and Algorithms for the Enterprise
Serverless Streaming Architectures and Algorithms for the EnterpriseServerless Streaming Architectures and Algorithms for the Enterprise
Serverless Streaming Architectures and Algorithms for the Enterprise
 
Teleportation presentation
Teleportation  presentationTeleportation  presentation
Teleportation presentation
 
Seminar report on quantum computing
Seminar report on quantum computingSeminar report on quantum computing
Seminar report on quantum computing
 
Quantum Computing
Quantum ComputingQuantum Computing
Quantum Computing
 
Quantum computers
Quantum computersQuantum computers
Quantum computers
 
Bevywise IoT Platform
Bevywise IoT PlatformBevywise IoT Platform
Bevywise IoT Platform
 
Quantum computing seminar
Quantum computing seminarQuantum computing seminar
Quantum computing seminar
 
Build a High Available NFS Cluster Based on CephFS - Shangzhong Zhu
Build a High Available NFS Cluster Based on CephFS - Shangzhong ZhuBuild a High Available NFS Cluster Based on CephFS - Shangzhong Zhu
Build a High Available NFS Cluster Based on CephFS - Shangzhong Zhu
 
Ibm quantum computing
Ibm quantum computingIbm quantum computing
Ibm quantum computing
 
Quantum Computing Explained
Quantum Computing ExplainedQuantum Computing Explained
Quantum Computing Explained
 
RIA and Ajax
RIA and AjaxRIA and Ajax
RIA and Ajax
 
Quantum computing
Quantum computingQuantum computing
Quantum computing
 
Prometheus Overview
Prometheus OverviewPrometheus Overview
Prometheus Overview
 
Balkan - data eng meetup - data fusion
Balkan - data eng meetup - data fusionBalkan - data eng meetup - data fusion
Balkan - data eng meetup - data fusion
 
Quantum computers by Emran
Quantum computers by EmranQuantum computers by Emran
Quantum computers by Emran
 
Quantum computing
Quantum computing Quantum computing
Quantum computing
 
Back to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web DevelopmentBack to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web Development
 
Seminar
SeminarSeminar
Seminar
 
The Future of Quantum Computing
The Future of Quantum ComputingThe Future of Quantum Computing
The Future of Quantum Computing
 

Similar to How to Create a Modern IIoT Monitoring Solution On iOS Using Swift, MQTT and InfluxDB

Introduction to MonoTouch
Introduction to MonoTouchIntroduction to MonoTouch
Introduction to MonoTouch
Jonas Follesø
 
Rapid IoT Application Development with IBM Bluemix - Mikko Poutanen
Rapid IoT Application Development with IBM Bluemix - Mikko PoutanenRapid IoT Application Development with IBM Bluemix - Mikko Poutanen
Rapid IoT Application Development with IBM Bluemix - Mikko Poutanen
WithTheBest
 
Demystifying IoT : Bringing the cloud to connected devices with IoT Station
Demystifying IoT : Bringing the cloud to connected devices with IoT StationDemystifying IoT : Bringing the cloud to connected devices with IoT Station
Demystifying IoT : Bringing the cloud to connected devices with IoT Station
Scaleway
 

Similar to How to Create a Modern IIoT Monitoring Solution On iOS Using Swift, MQTT and InfluxDB (20)

Faites évoluer votre accès aux données avec MongoDB Stitch
Faites évoluer votre accès aux données avec MongoDB StitchFaites évoluer votre accès aux données avec MongoDB Stitch
Faites évoluer votre accès aux données avec MongoDB Stitch
 
Azure iot edge and AI enabling the intelligent edge
Azure iot edge and AI  enabling the intelligent edgeAzure iot edge and AI  enabling the intelligent edge
Azure iot edge and AI enabling the intelligent edge
 
Io t world_2016_iot_smart_gateways_moe
Io t world_2016_iot_smart_gateways_moeIo t world_2016_iot_smart_gateways_moe
Io t world_2016_iot_smart_gateways_moe
 
z Technical Summit Track 3 Session 4 Developing mobilefirst app for z
z Technical Summit Track 3 Session 4 Developing mobilefirst app for zz Technical Summit Track 3 Session 4 Developing mobilefirst app for z
z Technical Summit Track 3 Session 4 Developing mobilefirst app for z
 
Iot 1906 - approaches for building applications with the IBM IoT cloud
Iot 1906 - approaches for building applications with the IBM IoT cloudIot 1906 - approaches for building applications with the IBM IoT cloud
Iot 1906 - approaches for building applications with the IBM IoT cloud
 
IoT solutions with InduSoft Web Studio and Arduino in Coating Processes
IoT solutions with InduSoft Web Studio and Arduino in Coating ProcessesIoT solutions with InduSoft Web Studio and Arduino in Coating Processes
IoT solutions with InduSoft Web Studio and Arduino in Coating Processes
 
Social Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech DaySocial Photos - My presentation at Microsoft Tech Day
Social Photos - My presentation at Microsoft Tech Day
 
IoTSummit: Create iot devices connected or on the edge using ai and ml
IoTSummit: Create iot devices connected or on the edge using ai and mlIoTSummit: Create iot devices connected or on the edge using ai and ml
IoTSummit: Create iot devices connected or on the edge using ai and ml
 
Introduction to MonoTouch
Introduction to MonoTouchIntroduction to MonoTouch
Introduction to MonoTouch
 
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
 
Stream processing IoT time series data with Kafka & InfluxDB | Al Sargent, In...
Stream processing IoT time series data with Kafka & InfluxDB | Al Sargent, In...Stream processing IoT time series data with Kafka & InfluxDB | Al Sargent, In...
Stream processing IoT time series data with Kafka & InfluxDB | Al Sargent, In...
 
Tutorial: Building Your First App with MongoDB Stitch
Tutorial: Building Your First App with MongoDB StitchTutorial: Building Your First App with MongoDB Stitch
Tutorial: Building Your First App with MongoDB Stitch
 
Introduction to FIWARE Open Ecosystem
Introduction to FIWARE Open EcosystemIntroduction to FIWARE Open Ecosystem
Introduction to FIWARE Open Ecosystem
 
Rapid IoT Application Development with IBM Bluemix - Mikko Poutanen
Rapid IoT Application Development with IBM Bluemix - Mikko PoutanenRapid IoT Application Development with IBM Bluemix - Mikko Poutanen
Rapid IoT Application Development with IBM Bluemix - Mikko Poutanen
 
Build an azure connected io t device in 45 minutes (or less)
Build an azure connected io t device in 45 minutes (or less)Build an azure connected io t device in 45 minutes (or less)
Build an azure connected io t device in 45 minutes (or less)
 
Azure app service to create web and mobile apps
Azure app service to create web and mobile appsAzure app service to create web and mobile apps
Azure app service to create web and mobile apps
 
[MongoDB.local Bengaluru 2018] Introduction to MongoDB Stitch
[MongoDB.local Bengaluru 2018] Introduction to MongoDB Stitch[MongoDB.local Bengaluru 2018] Introduction to MongoDB Stitch
[MongoDB.local Bengaluru 2018] Introduction to MongoDB Stitch
 
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...
 
node.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehne
node.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehnenode.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehne
node.js is made for IoT - node.hh 07/16, Hamburg by Michael Kuehne
 
Demystifying IoT : Bringing the cloud to connected devices with IoT Station
Demystifying IoT : Bringing the cloud to connected devices with IoT StationDemystifying IoT : Bringing the cloud to connected devices with IoT Station
Demystifying IoT : Bringing the cloud to connected devices with IoT Station
 

More from InfluxData

How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
InfluxData
 
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
InfluxData
 
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
InfluxData
 
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
InfluxData
 

More from InfluxData (20)

Announcing InfluxDB Clustered
Announcing InfluxDB ClusteredAnnouncing InfluxDB Clustered
Announcing InfluxDB Clustered
 
Best Practices for Leveraging the Apache Arrow Ecosystem
Best Practices for Leveraging the Apache Arrow EcosystemBest Practices for Leveraging the Apache Arrow Ecosystem
Best Practices for Leveraging the Apache Arrow Ecosystem
 
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
 
Power Your Predictive Analytics with InfluxDB
Power Your Predictive Analytics with InfluxDBPower Your Predictive Analytics with InfluxDB
Power Your Predictive Analytics with InfluxDB
 
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
 
Build an Edge-to-Cloud Solution with the MING Stack
Build an Edge-to-Cloud Solution with the MING StackBuild an Edge-to-Cloud Solution with the MING Stack
Build an Edge-to-Cloud Solution with the MING Stack
 
Meet the Founders: An Open Discussion About Rewriting Using Rust
Meet the Founders: An Open Discussion About Rewriting Using RustMeet the Founders: An Open Discussion About Rewriting Using Rust
Meet the Founders: An Open Discussion About Rewriting Using Rust
 
Introducing InfluxDB Cloud Dedicated
Introducing InfluxDB Cloud DedicatedIntroducing InfluxDB Cloud Dedicated
Introducing InfluxDB Cloud Dedicated
 
Gain Better Observability with OpenTelemetry and InfluxDB
Gain Better Observability with OpenTelemetry and InfluxDB Gain Better Observability with OpenTelemetry and InfluxDB
Gain Better Observability with OpenTelemetry and InfluxDB
 
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
 
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
 
Introducing InfluxDB’s New Time Series Database Storage Engine
Introducing InfluxDB’s New Time Series Database Storage EngineIntroducing InfluxDB’s New Time Series Database Storage Engine
Introducing InfluxDB’s New Time Series Database Storage Engine
 
Start Automating InfluxDB Deployments at the Edge with balena
Start Automating InfluxDB Deployments at the Edge with balena Start Automating InfluxDB Deployments at the Edge with balena
Start Automating InfluxDB Deployments at the Edge with balena
 
Understanding InfluxDB’s New Storage Engine
Understanding InfluxDB’s New Storage EngineUnderstanding InfluxDB’s New Storage Engine
Understanding InfluxDB’s New Storage Engine
 
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDBStreamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
 
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
 
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
 
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
 
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
 
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Recently uploaded (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 

How to Create a Modern IIoT Monitoring Solution On iOS Using Swift, MQTT and InfluxDB

  • 1. Creating a Modern IIoT Monitoring Solution Using iOS Swift, MQTT and InfluxDB
  • 2. MOXIE IoT LLC 2 About Deft Dynamics Smart Materials Composite Structures Embedded Electronics Industrial IoT Tele-operated Robotics Embedded Intelligence Birmingham Venture Studio Giving Ideas a Pulse
  • 3. MOXIE IoT LLC 3 Moxie IIoT Predictive UtilizationBusiness Insights Safety Downtime IoT Technology for all Industrial Teams • Operations - Utilization, downtime, safety • Maintenance - Service intervals, distance travelled, overload events • Technology Team - Predictive maintenance, business insights
  • 4. MOXIE IoT LLC 4 MOXIEWORLD Combine Four IoT Technologies: • UWB Indoor Positioning • Real-time Stream (MQTT) • Historic Time-series Database (InfluxDB 2.0) • App-centric Interface (iOS Swift) To Provide Customer Benefits: • Low Latency (2-10 seconds) 3D visualization • Easily configured to help all your Teams • Create and manage projects in-App 3D Visualization Live/Historic Insights
  • 6. MOXIE IoT LLC 6 UWB Indoor Positioning Anchor Fixed Reference Point Tag Mobile Tracker & Gateway Ultra Wideband • Mobile ‘Tags’ and Stationary ‘Anchors’ • 10 cm accuracy indoor positioning • 50m+ range • Combine with GPS for indoor/outdoor
  • 7. MOXIE IoT LLC 7 MQTT • Publish/Subscribe Messaging • IoT Device Benefits • Low-Bandwidth (e.g. for CAT-M1 carrier compliance) • Safe keep-alive timing • on-disconnect events (LW&T) • Single Broker Supports • Thousands of Devices • Topic Filters safely isolate users • Easy to Host / Many 3rd Party Tools • Drivers for Py/C++/Java/… MQTT Broker Limited View Full Access View IoT Devices
  • 8. MOXIE IoT LLC 8 Why InfluxDB? • Why InfluxDB? • Time-series for IoT (c.f. DynamoDB) • NOT end-to-end (c.f. AWS IoT) • Relevant data filtering unloads app • Why InfluxDB Cloud? • Manage accounts and access • Interactive query builder • Clear storage pricing (c.f. AWS)
  • 9. MOXIE IoT LLC 9 iOS Swift • Why iOS? • Connecting to Real World devices • Focus energy on one platform • Tools for • 3D visualization • Map-based visualization • Input/Output (BLE / MQTT / etc.)
  • 10. MOXIE IoT LLC 10 Technical Content Outline • ‘3D’ IoT Data • MQTT Stream • JSON – (MQTT explorer) • MQTT Transfer • EC2 – (python demo) • InfluxDB Backend • Demo query on ‘DB Cloud • InfluxDB in Swift • HTTP Post technique • Demo 3D query on App • Handling Range/ Combinations
  • 11. MOXIE IoT LLC 11 IoT Data • Independent (X) • Time • Position • Dependent (Y) • Speed • Load • Voltage • Etc…
  • 12. MOXIE IoT LLC 12 Network Layout Embedded System Moxie IoT Cloud iOS App MQTT Real time stream InfluxDB 2.0 Historic Data EC2/Python Sort/Filter + Transfer Flux Query Digital Twin Dashboard CSV MQTT Client WIFI LTE-M1 WIFI LTE / 5G Three Data Access Points for Customers 1. MQTT Stream (live, stream) 2. InfluxDB (historic, query) 3. App-Interface (digital twin, dashboard) Bandwidth MQTT: 240 bytes/update @ 1 Hz = 622 Mb/month/device Influx: 80 bytes/update @ 0.1 Hz = 20.7 Mb/month/device
  • 13. MOXIE IoT LLC 13 MQTT Stream • MQTT Stream • Topic Organization • JSON Payloads – MQTT explorer / / / / Header per Project Account name used to filter each business Device Type Hardware Unique ID Packet Type JSON Payload (motor load)MW [Account] Tag [Tag UUID] UWB
  • 14. MOXIE IoT LLC 14 MQTT Transfer (2/4) • Python Tools • Paho MQTT Client • InfluxDBClient • Process • Buffer incoming message by account (Bucket) • Transfer to InfluxDB Every X Seconds • Filter if desired (e.g. average, max) • Clear buffer
  • 15. MOXIE IoT LLC 15 Storage & Query Design • InfluxDB 2.0 Cloud • Scheme • [bucket] = Account • _measurement = UUID • _field = value from JSON • Demo query on iDB Cloud • Problem with ‘1D’ queries: • How to align with position?
  • 16. MOXIE IoT LLC 16 iOS Swift Query (1/3) • InfluxDB Query in Swift • UrlSession POST dataTask • CSV format • Closure return results
  • 17. MOXIE IoT LLC 17 iOS Swift Query (2/3) • InfluxDB Query in Swift • UrlSession POST dataTask • CSV format • Closure return results • Helper Object for Manipulation • Create array of [FluxOperation] • Run sequentially to generate Flux query string
  • 18. MOXIE IoT LLC 18 iOS Swift Query (3/3) • InfluxDB Query in Swift • Building Block Query Creation for User • Filter+Pivot Creates ‘3D’ Result: (value vs x,y,t) User Selected Combinations
  • 19. MOXIE IoT LLC 19 Data Insights CNC Spindle Load at a Production Machine Shop • Determined spindles were overloaded when grease was cool in the morning • Optimize toolpaths to reduce 22% air time (tool changes and rapid feeds) Bridge Crane at Metals Distributor • Optimize pre-loading material locations • Adjust truck arrival schedule to balance shift workload
  • 21. MOXIE IoT LLC 21 Next Steps Next Steps with InfluxDB • User-defined InfluxDB Cloud Alerts • Rescaling data for long-term storage Next Steps in Product Evolution • LIDAR scanning for CAD models • UWB built-in on iPhone 11,12 • Long term • Cross-facility tracking (port to port) • App as interface for AGV and robots
  • 22. 3029 4th AVE S. BIRMINGHAM, AL 35233 hello@moxieiot.com 1.205.907.0165 moxieiot.com