SlideShare a Scribd company logo




Medan	
  IT	
  Meet	
  Up	
  #4

Internet	
  of	
  Things	
  (IoT)

	
  	
  Intro	
  &	
  Demo

Universitas	
  Pelita	
  Harapan	
  -­‐	
  Medan	
  
14	
  October	
  2017
Allow	
  me	
  to	
  introduce	
  myself	
  and	
  talk	
  about	
  my	
  
credentials	
  around	
  Embedded	
  System	
  and	
  IoT
So	
  you	
  will	
  know	
  better	
  who	
  is	
  talking	
  in	
  	
  
front	
  of	
  you	
  ☺
$whoami
Albert Suwandhi
Lecturer – STMIK IBBI
Bachelor Degree in Electrical Engineering
Master Degree in Information Technology
https://id.linkedin.com/in/albertsuwandhi
albert.suwandhi@gmail.com
087868577265
Past	
  experiences	
  on	
  Embedded	
  System
• Intensively	
  worked	
  with	
  Atmel	
  MCS51	
  and	
  Microchip	
  PIC	
  (2003	
  –	
  
2006)	
  
• Used	
  to	
  code	
  using	
  assembly	
  language	
  on	
  RISC	
  based	
  MCU	
  -­‐	
  PIC	
  
• Several	
  projects/research	
  during	
  my	
  undergraduate	
  course	
  :	
  
➢ iButton	
  Reader	
  :	
  Patrol	
  system	
  using	
  Microchip	
  PIC16F877	
  MCU	
  
to	
  read	
  iButton	
  using	
  1	
  wire	
  protocol	
  and	
  store	
  its	
  ID	
  and	
  time	
  
stamp	
  to	
  EEPROM	
  for	
  further	
  retrieval	
  and	
  processing.	
  
➢ RFID	
  Attendance	
  System	
  :	
  Attendance	
  system	
  using	
  Microchip	
  
PIC16F877	
  MCU	
  to	
  read	
  RFID	
  card	
  and	
  time	
  stamp,	
  stored	
  in	
  
EEPROM	
  for	
  further	
  retrieval	
  and	
  processing.
➢ Newspaper	
  counter	
  :	
  Counter	
  for	
  printer	
  newspaper	
  printer	
  on	
  
a	
  machine.	
  Built	
  using	
  PIC16F84A	
  MCU.
➢ Maze	
  Robot	
  :	
  Simple	
  maze	
  solving	
  robot	
  using	
  PIC16F877.
➢ RS485	
   communication	
   protocol	
   :	
   Multidrop	
   network	
   using	
  
RS485	
  and	
  Atmel	
  AT89S51	
  as	
  remote	
  nodes.
IoT	
  is	
  a	
  broad	
  topic	
  –	
  Let	
  us	
  discuss	
  about	
  it	
  in	
  2.5	
  hours
Internet	
  is	
  in	
  every	
  things	
  we	
  use!
• Smartphones	
  
• Children	
  
• Animals	
  
• TV	
  
• Ovens	
  
• Refrigerator	
  
• etc
IoT	
  Economic	
  Impact
Industry	
  4.0
IoT?!
So....What	
  is	
  IoT?
“The Internet of Things (IoT) is the network of physical
objects that contain embedded technology to communicate
and sense or interact with their internal states or the
external environment” - Gartner
“The Internet of things (IoT) is the inter-networking of
physical devices, vehicles (also referred to as "connected
devices" and "smart devices"), buildings, and other items
embedded with electronics, software, sensors, actuators,
and network connectivity which enable these objects to
collect and exchange data” - Wikipedia
IoT Intro and Demo
IoT	
  Applications
IoT	
  Architecture
IoT	
  Components
IoT	
  Typical	
  Architecture
Today	
  we	
  will	
  focus	
  on	
  the	
  things!
What	
  are	
  inside	
  the	
  Things	
  
How	
  to	
  communicate	
  with	
  sensor?
• Analog	
  Input	
  
• Digital	
  input	
  	
  
• SPI	
  (Serial	
  Peripheral	
  Interface)	
  
• I2C	
  (Inter	
  Integrated	
  Circuit)	
  
• UART	
  (Universal	
  Asynchronous	
  Receiver	
  Trasnmitter)	
  
• CAN	
  (Controller	
  Area	
  Network)	
  
• LIN	
  (Local	
  Internetwork	
  Network)	
  
• One	
  Wire	
  
• etc
How	
  about	
  energy	
  source?
• Commonly	
   we	
   will	
   use	
   power	
   source	
   from	
   :	
   AC,	
   Battery	
   or	
  
Super	
  Capacitors	
  
• But	
  nowadays	
  we	
  can	
  use	
  “energy	
  harvesting”	
  
• Energy	
  harvesting	
  is	
  the	
  process	
  of	
  capturing	
  ambient	
  energy	
  
and	
  storing	
  as	
  electricity.	
  
And	
  it	
  is	
  all	
  free	
  ☺
System	
  on	
  a	
  Chip	
  (SoC)
and a lot more ...
ARM	
  Based	
  Platform
Programming	
  Languages
and a lot more ...
Development	
  Boards
IDE	
  Tools
Cloud	
  Platform
and	
  a	
  lot	
  more	
  ...
Protocol
MQTT	
  Publish	
  –	
  Subscribe	
  Model
MQTT	
  vs	
  HTTP
*HiveMQ	
  MQTT	
  Introduction	
  Series	
  is	
  great	
  resources	
  to	
  deep	
  dive	
  into	
  MQTT
Operating System
Do we really need an OS?
OS	
  Function
• Microkernel	
  to	
  control	
  thread	
  execution	
  
• Microkernel	
  provides	
  Inter	
  Process	
  Communication	
  
• Data	
  structures:	
  hashtables,	
  queue,	
  semaphore,	
  mutual	
  exclusion,	
  
signal.	
  
• Memory	
  management	
  
• IP	
  networking	
  stack	
  
• Flash	
  file	
  system	
  	
  
• Cryptography	
  dan	
  security	
  
• Hardware	
  Abstraction	
  Layer	
  (HAL),	
  consistent	
  and	
  cross	
  platform	
  
API	
  for	
  timer,	
  interrupt,	
  I2C,	
  GPIO	
  and	
  etc	
  
Usually	
  MPU	
  will	
  use	
  full	
  blown	
  OS,	
  for	
  example	
  Raspbian,	
  Windows	
  10	
  IoT	
  
Core	
  on	
  Raspberry	
  Pi
IoT	
  Connectivity	
  Comparison
IoT	
  Connectivity	
  Comparison
Connectivity	
  –	
  Rate	
  vs	
  Range
Connectivity	
  –	
  Range	
  vs	
  Power
Cellular	
  Connectivity	
  IoT
What	
  is	
  LPWA
LPWA	
  Typicals
LPWA	
  Technologies
So	
  what	
  is	
  LoRa	
  and	
  LoRAWAN?
LoRa	
  Architecture
https://www.thethingsnetwork.org/article/ground-breaking-world-record-
lorawan-packet-received-at-702-km-436-miles-distance
http://koppelting.ltcm.net/
A	
   distance	
   of	
   702.676km	
   was	
   reached	
   by	
   using	
   only	
   25mW	
   (14dBm)	
   of	
  
transmitting	
  power,	
  roughly	
  40	
  times	
  smaller	
  than	
  a	
  mobile	
  phone	
  can	
  use.
Assets	
  Tracking
Smart	
  Metering
Smart	
  Environment
Indonesia	
  -­‐	
  Smart	
  Farming
Sensor	
  Used	
  in	
  Smart	
  Farming	
  
Sensor	
  Installation
Smart	
  Agriculture
Logistic	
  and	
  Shipping
Environmental	
  Monitoring
Environment	
  Monitoring	
  Dashboard
Nationwide	
  IoT	
  Deployment	
  -­‐	
  Singapore
Indonesia	
  IoT	
  Deployment
Should	
  we	
  learn	
  IoT?
8.5	
   years	
   old	
   kid	
   presents	
   his	
  
projects	
  :	
  Automatic	
  Cat	
  Feeder.
The	
   project	
   consists	
   of	
   a	
   MCU,	
  
ultrasonic	
  sensor	
  and	
  servo	
  motor.
Let	
  us	
  see	
  a	
  video	
  :	
  
https://www.youtube.com/watch?
v=aZWzNMVoFP8	
  
How	
  to	
  get	
  started?
• Learn basic electronics
• Choose an MCU Platform
• Use Development Boards
• Select the suitable tools & IDE
• Use cloud and explore real world technologies
• and solve your own problems!
IoT	
  Skill	
  Set
Today’s	
  Focus
ESPRESSIF
Espressif	
  ESP8266
• SoC/MCU	
   that	
   integrates	
   TCP/IP	
   Stack	
   and	
   WiFi	
   to	
   enable	
   it	
   to	
  
connect	
  to	
  the	
  network	
  and	
  communicate	
  with	
  other	
  devices
• Made	
  by	
  Espressif	
  –	
  China
• Have	
  many	
  modules,	
  eq	
  :	
  ESP-­‐01,	
  ESP-­‐02,	
  ESP-­‐12F,	
  ESP-­‐WROOM2
• It	
   was	
   sold	
   as	
   a	
   Serial-­‐WiFi	
   adapter	
   for	
   other	
   microcontrollers,	
  
however	
  it	
  is	
  more	
  powerful	
  as	
  the	
  ESP8266	
  integrates	
  a	
  32	
  bits	
  
microcontroller.
• Feature	
  :	
  
	
  	
  	
  	
  	
  Microcontroller:	
  Tensilica	
  L106	
  (32	
  bits)
	
  	
  	
  	
  	
  Clock	
  Frequency:	
  80	
  MHZ
	
  	
  	
  	
  	
  WiFi:	
  802.11	
  b/g/n
	
  	
  	
  	
  	
  Interfaces:	
  SPI,	
  I2C,	
  I2S,	
  UART,	
  PWM
	
  	
  	
  	
  	
  GPIO:	
  17	
  pins	
  (12	
  mA	
  max	
  current)
	
  	
  	
  	
  	
  ADC:	
  10	
  bits
	
  	
  	
  	
  	
  Operating	
  voltage:	
  3.3	
  V
Who	
  is	
  still	
  using	
  this	
  setup?
While	
  nothing	
  wrong	
  with	
  that,	
  but	
  you	
  can	
  program	
  ESP8266	
  directly.	
  
Without	
  the	
  Arduino	
  board	
  as	
  the	
  master
ESP8266	
  Development	
  Framework
Espressif	
  ESP32
• CPU:	
  Tensilica	
  Xtensa	
  32-­‐bit	
  dual	
  core,	
  
up	
  to	
  240	
  MHz,	
  600	
  DMIPS.	
  	
  
• Operating	
  voltage:	
  3.3V	
  
• Memory:	
  448	
  KB	
  ROM,	
  520	
  KB	
  SRAM	
  
16	
  KB	
  SRAM	
  in	
  RTC,	
  1	
  Kbit	
  of	
  eFuse.	
  
External	
  Flash:	
  512	
  KB	
  to	
  (4	
  x	
  16)	
  MiB	
  
• WiFi	
  (802.11):	
  b/g/n/e/i	
  
• Bluetooth:	
  v4.2	
  BR/EDR	
  &	
  BLE	
  
• Peripherals:	
   GPIOs,	
   PWM,	
   ADC,	
   DAC,	
  
I2S,	
   UART,	
   SPI,	
   I2C,	
   CAN,	
   RMII,	
   Cap	
  
Touch
ESP32	
  Development	
  Framework
ESP8266	
  Module
ESP8266	
  Boards
ESP32	
  Module
ESP32	
  Boards
ESP8266	
  vs	
  ESP32
ESP32 is more complex and advance than ESP8266 – let us keep discussion about ESP32 until next meetup!!
ESPectro	
  Core	
  
• ESP8266 ESP-12F as the brain
• Breaking out all ESP-12F pins to get the
most of it
• Built-in USB to TTL
• Auto-flashing, no need to keep pressing
reset and flash button before uploading your
sketches/firmware
• Reset and flash button, are still provided
• Built-in programmable LED and button
• 3 RGB LED (WS2812 or also known as
Neopixel), selectable to be driven either by
GPIO using bit-banging method, or I2S
method
• I2C Grove connector
• Pin header for directly plugging-in I2C OLED
display
• Power: LiPo battery via JST connector, or
5V~6V via Micro USB connector
IoT Intro and Demo
Demo	
  Scenario
❖IoT	
  Hello	
  World	
  –	
  Blink	
  ☺	
  
❖Blynk	
  Dashboard	
  
❖Makestro	
  Cloud	
  &	
  ThingSpeak	
  
❖Telegram	
  &	
  Google	
  Assistant	
  Integration	
  
❖Embedded	
  Web	
  Server	
  
❖MicroPython
Hardware	
  and	
  tools	
  used	
  in	
  the	
  demo
• ESPectro	
  ESP8266	
  Board	
  
• BMP180	
  Sensor	
  
• VS	
  Code	
  +	
  PlatformIO	
  
	
  
Prepare	
  Arduino	
  IDE	
  (Optional)
1. Download	
  and	
  Install	
  Arduino	
  IDE	
  :	
  https://www.arduino.cc/en/Main/
Software	
  
2. Open	
  the	
  preferences	
  from	
  File	
  >	
  Preferences.	
  Enter	
  this	
  url	
  into	
  
Additional	
  Board	
  Manager	
  URLs:

http://arduino.esp8266.com/stable/package_esp8266com_index.json	
  
3. Open	
  Board	
  Manager	
  from	
  Tools	
  >	
  Board	
  >	
  Board	
  Manager.	
  Search	
  for	
  
ESP8266	
  and	
  install	
  the	
  board	
  package:	
  esp8266	
  by	
  ESP8266	
  Community	
  
4. Open	
  Library	
  Manager	
  from	
  Sketch	
  >	
  Include	
  Library	
  >	
  Manage	
  Libraries.	
  
Search	
  for	
  Blynk	
  and	
  install	
  the	
  library:	
  Blynk	
  by	
  Volodymyr	
  Shymanskyy	
  
5. Change	
  the	
  board	
  by	
  selecting:	
  Tools	
  >	
  Board	
  >	
  ESPectro	
  Core	
  
6. Choose	
  	
  the	
  correct	
  COM	
  Port	
  	
  :	
  Tools	
  >	
  Port	
  >	
  Your	
  COM	
  Port	
  Number	
  
7. We	
  are	
  ready	
  to	
  go
LED	
  Blinking
How	
  easy	
  it	
  is!!!	
  ☺
Blynk	
  Architecture
• Blynk App - Allow you to create interfaces for projects using various widgets..
• Blynk Server - Responsible for all the communications between the smartphone
and hardware
• Blynk Libraries - Enable communication with the server and process all the
incoming and outcoming commands for all the popular hardware platforms
Blynk	
  Demo	
  Architecture
Topics	
  we	
  haven’t	
  discussed	
  yet
• SPIFFS	
  (SPI	
  Flash	
  File	
  System)	
  
• Firmware	
  Over	
  The	
  Air	
  (OTA)	
  Update	
  
• Details	
  of	
  WiFi	
  module	
  such	
  as	
  configuration	
  using	
  WiFi	
  
Manager,	
  Dual	
  Mode,	
  etc	
  
• Watchdog	
  Timer	
  (WDT)	
  
• RTOS/Scheduler	
  
• and	
  much	
  more	
  ........
As	
  software	
  developer	
  what	
  do	
  you	
  learn/expect	
  when	
  
developing	
  for	
  hardware?	
  
• Better	
  IDE/Tools	
  
• Implement	
  software	
  engineering	
  best	
  practices	
  :	
  library	
  and	
  
OOP,	
  highly	
  readable	
  code,	
  maintanable	
  code,	
  reuseable	
  code,	
  
software	
  design	
  pattern,	
  implement	
  software	
  based	
  solution,	
  
leverages	
  cloud,	
  UI	
  design.
• IoT	
  development	
  will	
  breed	
  a	
  new	
  type	
  of	
  engineer,expert	
  in	
  
electronics	
  while	
  fluent	
  in	
  software	
  development
Few	
  of	
  IoT	
  Trends
• IoT	
  and	
  Blockchain	
  will	
  converge	
  
• IoT	
  Data	
  Analyzed	
  by	
  Machine	
  Learning/AI	
  
• Rise	
  of	
  security	
  related	
  concerns	
  	
  
• IoT	
  will	
  reshape	
  the	
  health	
  care	
  
IoT	
  is	
  the	
  new	
  “ELECTRICITY”	
  and	
  unstructured	
  data	
  
is	
  the	
  new	
  “GOLD”
How	
  about	
  IoT	
  Vendors,	
  Communities,	
  Events	
  
and	
  etc	
  in	
  Indonesia?
IoT	
  Players
Some	
  Communities
and	
  more	
  unlisted	
  communities	
  ...
IoT	
  Store
and	
  many	
  more	
  on	
  Tokopedia,	
  Bukalapak	
  and	
  etc
IoT	
  Vendor
and	
  more	
  ....
Cloud	
  Platform
IoT	
  Event
3	
  Days	
  Seminar	
  	
  &	
  2	
  Days	
  Hackathon	
  
Collaboration	
  between	
  Indonesia	
  &	
  Malaysia
IoT	
  Security
Traditional	
  Internet	
  vs	
  IoT	
  Security
Traditional*Internet Internet*of*Things
Relatively)Safe)Environment Hostile)Environment
Standardized Large)Variety
Loss)of)money)or)reputation Loss)of)life,)money)or)reputation
Relatively)Mature Relatively)New
IoT	
  Vulnerabilities
IoT	
  Search	
  Engine
What	
  can	
  be	
  attacked?
IoT	
  Vulnerability	
  Categories
• Device	
  security	
  vulnerabilities	
  
• Firmware	
  vulnerabilities	
  
• Web,	
  mobile,	
  or	
  network	
  vulnerabilities	
  
• Radio	
  communication	
  based	
  vulnerabilities
IoT Intro and Demo
Military	
  IoT
http://events.windriver.com/wrcd01/wrcm/2016/08/WP-­‐IoT-­‐internet-­‐of-­‐things-­‐
for-­‐defense.pdf
Target	
  Scenario	
  of	
  Defense	
  and	
  Public	
  Safety
AttifyOS	
  -­‐	
  Distro	
  for	
  pentesting	
  IoT	
  devices

https://github.com/adi0x90/attifyos
WiFi	
  DeAuther	
  based	
  on	
  ESP8266
https://github.com/spacehuhn/esp8266_deauther
Learning	
  Resources
• ESPRESSIF	
  
	
  	
  	
  https://github.com/espressif	
  
• Kolban’s	
  Books	
  
	
  	
  https://leanpub.com/ESP8266_ESP32	
  
• ESP8266	
  Community	
  Forum	
  
	
  	
  http://www.esp8266.com/	
  
• HACKSTER	
  
	
  	
  https://hackster.io	
  
• Join	
  Community	
  
	
  	
  	
  http://t.me/kongkowITMedan
Quiz	
  -­‐	
  Get	
  a	
  free	
  ESP8266	
  Board!
• Sebutkan bahasa pemrograman yang bisa dipakai untuk
pengembangan solusi IoT untuk Things, Cloud and Apps
• Sebutkan 5 protokol komunikasi data yang bisa dipakai
untuk IoT
• Sebutkan minimal 3 cloud platform yang bisa dipakai untuk
IoT
98
IoT Intro and Demo

More Related Content

What's hot (20)

PPTX
Brain Computer Interfaces(BCI)
Dr. Uday Saikia
 
PDF
Arduino Workshop Day 2 - Advance Arduino & DIY
Vishnu
 
DOCX
Wireless E-Notice Board Using Bluetooth Report.docx
AbhishekGM10
 
PPTX
Introduction to Arduino
Yong Heui Cho
 
PPTX
Arduino Microcontroller
Shyam Mohan
 
PDF
PATIENT MONITORING SYSTEM USING IOT
AM Publications
 
PPTX
Intel 8051 Programming in C
Sudhanshu Janwadkar
 
PPTX
8b/10b Encoder Decoder design and Verification for PCI Express protocol usin...
T. Rajib Subudhi
 
PPT
Brain gate
Mayank Garg
 
ODP
Introduction to Arduino
Richard Rixham
 
PPS
What is Arduino ?
Niket Chandrawanshi
 
PDF
Introduction to ESP32 Programming [Road to RIoT 2017]
Alwin Arrasyid
 
PDF
Motorola 68hc11
gajani121
 
PDF
Introducing the Arduino
Charles A B Jr
 
PDF
Esp8266 basics
Eueung Mulyana
 
PPTX
Distance measurement using Ultrasonic sensor on Arduino Uno
Aswin KP
 
PPTX
Brain Computer Interface (BCI) - seminar PPT
SHAMJITH KM
 
PPTX
Smart card system ppt
Dewanshu Haswani
 
PDF
PATIENT HEALTH MONITORING SYSTEM USING IOT AND ANDROID
Journal For Research
 
Brain Computer Interfaces(BCI)
Dr. Uday Saikia
 
Arduino Workshop Day 2 - Advance Arduino & DIY
Vishnu
 
Wireless E-Notice Board Using Bluetooth Report.docx
AbhishekGM10
 
Introduction to Arduino
Yong Heui Cho
 
Arduino Microcontroller
Shyam Mohan
 
PATIENT MONITORING SYSTEM USING IOT
AM Publications
 
Intel 8051 Programming in C
Sudhanshu Janwadkar
 
8b/10b Encoder Decoder design and Verification for PCI Express protocol usin...
T. Rajib Subudhi
 
Brain gate
Mayank Garg
 
Introduction to Arduino
Richard Rixham
 
What is Arduino ?
Niket Chandrawanshi
 
Introduction to ESP32 Programming [Road to RIoT 2017]
Alwin Arrasyid
 
Motorola 68hc11
gajani121
 
Introducing the Arduino
Charles A B Jr
 
Esp8266 basics
Eueung Mulyana
 
Distance measurement using Ultrasonic sensor on Arduino Uno
Aswin KP
 
Brain Computer Interface (BCI) - seminar PPT
SHAMJITH KM
 
Smart card system ppt
Dewanshu Haswani
 
PATIENT HEALTH MONITORING SYSTEM USING IOT AND ANDROID
Journal For Research
 

Similar to IoT Intro and Demo (20)

PDF
Road to RIoT 2017 Medan
Albert Suwandhi
 
PDF
IoT Workshop in Macao
Shigeru Kobayashi
 
PDF
IoT Workshop in Macao
Shigeru Kobayashi
 
PDF
IoT and Its Application
Dun Automation Academy
 
PPTX
iot-component-dimensioning
sadiqFakheraldian
 
PDF
IoT simple with the ESP8266 - presented at the July 2015 Austin IoT Hardware ...
David Fowler
 
PDF
Fullstack IoT Development
Andri Yadi
 
PDF
Presentation for IoT workshop at Sinhagad University (Feb 4, 2016) - 2/2
Bhavin Chandarana
 
PPTX
Embedded systems are specialized computing systems that perform dedicated fun...
harishraaghav3
 
PPTX
Null mumbai-iot-workshop
Nitesh Malviya
 
PPTX
IoT and embedded systems.pptx
DanishKhan894003
 
PPTX
A Globally controlled Embedded Switch node for Electrical Devices at Home by...
siddubathini
 
PPTX
A Globally controlled Embedded Switch node for Electrical Devices at Home by...
siddubathini
 
PDF
Practical Introduction to Internet of Things (IoT)
Suraj Kumar Jana
 
PDF
Industrial IoT in a Nutshell
Andri Yadi
 
PPTX
Introduction to Embedded Systems and IoT Embedded systems are specialized com...
harishraaghav3
 
PDF
Internet of Things Conference - Bogor city
Andri Yadi
 
PDF
IoT_IO1_2 Getting familiar with Hardware - Development Boards.pdf
DanishMahmood23
 
PPTX
Build WiFi gadgets using esp8266
Baoshi Zhu
 
PDF
Practical introduction to IoT
pekkanikander
 
Road to RIoT 2017 Medan
Albert Suwandhi
 
IoT Workshop in Macao
Shigeru Kobayashi
 
IoT Workshop in Macao
Shigeru Kobayashi
 
IoT and Its Application
Dun Automation Academy
 
iot-component-dimensioning
sadiqFakheraldian
 
IoT simple with the ESP8266 - presented at the July 2015 Austin IoT Hardware ...
David Fowler
 
Fullstack IoT Development
Andri Yadi
 
Presentation for IoT workshop at Sinhagad University (Feb 4, 2016) - 2/2
Bhavin Chandarana
 
Embedded systems are specialized computing systems that perform dedicated fun...
harishraaghav3
 
Null mumbai-iot-workshop
Nitesh Malviya
 
IoT and embedded systems.pptx
DanishKhan894003
 
A Globally controlled Embedded Switch node for Electrical Devices at Home by...
siddubathini
 
A Globally controlled Embedded Switch node for Electrical Devices at Home by...
siddubathini
 
Practical Introduction to Internet of Things (IoT)
Suraj Kumar Jana
 
Industrial IoT in a Nutshell
Andri Yadi
 
Introduction to Embedded Systems and IoT Embedded systems are specialized com...
harishraaghav3
 
Internet of Things Conference - Bogor city
Andri Yadi
 
IoT_IO1_2 Getting familiar with Hardware - Development Boards.pdf
DanishMahmood23
 
Build WiFi gadgets using esp8266
Baoshi Zhu
 
Practical introduction to IoT
pekkanikander
 
Ad

More from Albert Suwandhi (12)

PDF
Introduction to AWS (Amazon Web Services)
Albert Suwandhi
 
PDF
Infrastructure as Code
Albert Suwandhi
 
PDF
Intro - Cloud Native
Albert Suwandhi
 
PDF
Introduction to AWS (Amazon Web Services)
Albert Suwandhi
 
PDF
Intro to Network Automation
Albert Suwandhi
 
PDF
AWS UG Indonesia Meetup - AWS IoT Core
Albert Suwandhi
 
PDF
Lab - AWS Cross Account Access
Albert Suwandhi
 
PDF
Lab - AWS Lambda Resize Image
Albert Suwandhi
 
PDF
Lab - AWS Lambda Rekognition
Albert Suwandhi
 
PDF
Lab - Automatic Deployment Using AWS CodePipeline to EC2
Albert Suwandhi
 
PDF
Cloud Study Jam - 2019
Albert Suwandhi
 
PDF
Docker Mentor Week 2016 - Medan
Albert Suwandhi
 
Introduction to AWS (Amazon Web Services)
Albert Suwandhi
 
Infrastructure as Code
Albert Suwandhi
 
Intro - Cloud Native
Albert Suwandhi
 
Introduction to AWS (Amazon Web Services)
Albert Suwandhi
 
Intro to Network Automation
Albert Suwandhi
 
AWS UG Indonesia Meetup - AWS IoT Core
Albert Suwandhi
 
Lab - AWS Cross Account Access
Albert Suwandhi
 
Lab - AWS Lambda Resize Image
Albert Suwandhi
 
Lab - AWS Lambda Rekognition
Albert Suwandhi
 
Lab - Automatic Deployment Using AWS CodePipeline to EC2
Albert Suwandhi
 
Cloud Study Jam - 2019
Albert Suwandhi
 
Docker Mentor Week 2016 - Medan
Albert Suwandhi
 
Ad

Recently uploaded (20)

PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
PPTX
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
July Patch Tuesday
Ivanti
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
Biography of Daniel Podor.pdf
Daniel Podor
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
July Patch Tuesday
Ivanti
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Biography of Daniel Podor.pdf
Daniel Podor
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 

IoT Intro and Demo

  • 1. 
 
 Medan  IT  Meet  Up  #4
 Internet  of  Things  (IoT)
    Intro  &  Demo
 Universitas  Pelita  Harapan  -­‐  Medan   14  October  2017
  • 2. Allow  me  to  introduce  myself  and  talk  about  my   credentials  around  Embedded  System  and  IoT So  you  will  know  better  who  is  talking  in     front  of  you  ☺
  • 3. $whoami Albert Suwandhi Lecturer – STMIK IBBI Bachelor Degree in Electrical Engineering Master Degree in Information Technology https://id.linkedin.com/in/albertsuwandhi [email protected] 087868577265
  • 4. Past  experiences  on  Embedded  System • Intensively  worked  with  Atmel  MCS51  and  Microchip  PIC  (2003  –   2006)   • Used  to  code  using  assembly  language  on  RISC  based  MCU  -­‐  PIC   • Several  projects/research  during  my  undergraduate  course  :   ➢ iButton  Reader  :  Patrol  system  using  Microchip  PIC16F877  MCU   to  read  iButton  using  1  wire  protocol  and  store  its  ID  and  time   stamp  to  EEPROM  for  further  retrieval  and  processing.   ➢ RFID  Attendance  System  :  Attendance  system  using  Microchip   PIC16F877  MCU  to  read  RFID  card  and  time  stamp,  stored  in   EEPROM  for  further  retrieval  and  processing. ➢ Newspaper  counter  :  Counter  for  printer  newspaper  printer  on   a  machine.  Built  using  PIC16F84A  MCU. ➢ Maze  Robot  :  Simple  maze  solving  robot  using  PIC16F877. ➢ RS485   communication   protocol   :   Multidrop   network   using   RS485  and  Atmel  AT89S51  as  remote  nodes.
  • 5. IoT  is  a  broad  topic  –  Let  us  discuss  about  it  in  2.5  hours
  • 6. Internet  is  in  every  things  we  use! • Smartphones   • Children   • Animals   • TV   • Ovens   • Refrigerator   • etc
  • 10. So....What  is  IoT? “The Internet of Things (IoT) is the network of physical objects that contain embedded technology to communicate and sense or interact with their internal states or the external environment” - Gartner “The Internet of things (IoT) is the inter-networking of physical devices, vehicles (also referred to as "connected devices" and "smart devices"), buildings, and other items embedded with electronics, software, sensors, actuators, and network connectivity which enable these objects to collect and exchange data” - Wikipedia
  • 16. Today  we  will  focus  on  the  things!
  • 17. What  are  inside  the  Things  
  • 18. How  to  communicate  with  sensor? • Analog  Input   • Digital  input     • SPI  (Serial  Peripheral  Interface)   • I2C  (Inter  Integrated  Circuit)   • UART  (Universal  Asynchronous  Receiver  Trasnmitter)   • CAN  (Controller  Area  Network)   • LIN  (Local  Internetwork  Network)   • One  Wire   • etc
  • 19. How  about  energy  source? • Commonly   we   will   use   power   source   from   :   AC,   Battery   or   Super  Capacitors   • But  nowadays  we  can  use  “energy  harvesting”   • Energy  harvesting  is  the  process  of  capturing  ambient  energy   and  storing  as  electricity.   And  it  is  all  free  ☺
  • 20. System  on  a  Chip  (SoC) and a lot more ...
  • 25. Cloud  Platform and  a  lot  more  ...
  • 27. MQTT  Publish  –  Subscribe  Model
  • 28. MQTT  vs  HTTP *HiveMQ  MQTT  Introduction  Series  is  great  resources  to  deep  dive  into  MQTT
  • 29. Operating System Do we really need an OS?
  • 30. OS  Function • Microkernel  to  control  thread  execution   • Microkernel  provides  Inter  Process  Communication   • Data  structures:  hashtables,  queue,  semaphore,  mutual  exclusion,   signal.   • Memory  management   • IP  networking  stack   • Flash  file  system     • Cryptography  dan  security   • Hardware  Abstraction  Layer  (HAL),  consistent  and  cross  platform   API  for  timer,  interrupt,  I2C,  GPIO  and  etc   Usually  MPU  will  use  full  blown  OS,  for  example  Raspbian,  Windows  10  IoT   Core  on  Raspberry  Pi
  • 39. So  what  is  LoRa  and  LoRAWAN?
  • 41. https://www.thethingsnetwork.org/article/ground-breaking-world-record- lorawan-packet-received-at-702-km-436-miles-distance http://koppelting.ltcm.net/ A   distance   of   702.676km   was   reached   by   using   only   25mW   (14dBm)   of   transmitting  power,  roughly  40  times  smaller  than  a  mobile  phone  can  use.
  • 46. Sensor  Used  in  Smart  Farming  
  • 52. Nationwide  IoT  Deployment  -­‐  Singapore
  • 54. Should  we  learn  IoT? 8.5   years   old   kid   presents   his   projects  :  Automatic  Cat  Feeder. The   project   consists   of   a   MCU,   ultrasonic  sensor  and  servo  motor. Let  us  see  a  video  :   https://www.youtube.com/watch? v=aZWzNMVoFP8  
  • 55. How  to  get  started? • Learn basic electronics • Choose an MCU Platform • Use Development Boards • Select the suitable tools & IDE • Use cloud and explore real world technologies • and solve your own problems!
  • 58. Espressif  ESP8266 • SoC/MCU   that   integrates   TCP/IP   Stack   and   WiFi   to   enable   it   to   connect  to  the  network  and  communicate  with  other  devices • Made  by  Espressif  –  China • Have  many  modules,  eq  :  ESP-­‐01,  ESP-­‐02,  ESP-­‐12F,  ESP-­‐WROOM2 • It   was   sold   as   a   Serial-­‐WiFi   adapter   for   other   microcontrollers,   however  it  is  more  powerful  as  the  ESP8266  integrates  a  32  bits   microcontroller. • Feature  :            Microcontroller:  Tensilica  L106  (32  bits)          Clock  Frequency:  80  MHZ          WiFi:  802.11  b/g/n          Interfaces:  SPI,  I2C,  I2S,  UART,  PWM          GPIO:  17  pins  (12  mA  max  current)          ADC:  10  bits          Operating  voltage:  3.3  V
  • 59. Who  is  still  using  this  setup? While  nothing  wrong  with  that,  but  you  can  program  ESP8266  directly.   Without  the  Arduino  board  as  the  master
  • 61. Espressif  ESP32 • CPU:  Tensilica  Xtensa  32-­‐bit  dual  core,   up  to  240  MHz,  600  DMIPS.     • Operating  voltage:  3.3V   • Memory:  448  KB  ROM,  520  KB  SRAM   16  KB  SRAM  in  RTC,  1  Kbit  of  eFuse.   External  Flash:  512  KB  to  (4  x  16)  MiB   • WiFi  (802.11):  b/g/n/e/i   • Bluetooth:  v4.2  BR/EDR  &  BLE   • Peripherals:   GPIOs,   PWM,   ADC,   DAC,   I2S,   UART,   SPI,   I2C,   CAN,   RMII,   Cap   Touch
  • 67. ESP8266  vs  ESP32 ESP32 is more complex and advance than ESP8266 – let us keep discussion about ESP32 until next meetup!!
  • 68. ESPectro  Core   • ESP8266 ESP-12F as the brain • Breaking out all ESP-12F pins to get the most of it • Built-in USB to TTL • Auto-flashing, no need to keep pressing reset and flash button before uploading your sketches/firmware • Reset and flash button, are still provided • Built-in programmable LED and button • 3 RGB LED (WS2812 or also known as Neopixel), selectable to be driven either by GPIO using bit-banging method, or I2S method • I2C Grove connector • Pin header for directly plugging-in I2C OLED display • Power: LiPo battery via JST connector, or 5V~6V via Micro USB connector
  • 70. Demo  Scenario ❖IoT  Hello  World  –  Blink  ☺   ❖Blynk  Dashboard   ❖Makestro  Cloud  &  ThingSpeak   ❖Telegram  &  Google  Assistant  Integration   ❖Embedded  Web  Server   ❖MicroPython
  • 71. Hardware  and  tools  used  in  the  demo • ESPectro  ESP8266  Board   • BMP180  Sensor   • VS  Code  +  PlatformIO    
  • 72. Prepare  Arduino  IDE  (Optional) 1. Download  and  Install  Arduino  IDE  :  https://www.arduino.cc/en/Main/ Software   2. Open  the  preferences  from  File  >  Preferences.  Enter  this  url  into   Additional  Board  Manager  URLs:
 http://arduino.esp8266.com/stable/package_esp8266com_index.json   3. Open  Board  Manager  from  Tools  >  Board  >  Board  Manager.  Search  for   ESP8266  and  install  the  board  package:  esp8266  by  ESP8266  Community   4. Open  Library  Manager  from  Sketch  >  Include  Library  >  Manage  Libraries.   Search  for  Blynk  and  install  the  library:  Blynk  by  Volodymyr  Shymanskyy   5. Change  the  board  by  selecting:  Tools  >  Board  >  ESPectro  Core   6. Choose    the  correct  COM  Port    :  Tools  >  Port  >  Your  COM  Port  Number   7. We  are  ready  to  go
  • 73. LED  Blinking How  easy  it  is!!!  ☺
  • 74. Blynk  Architecture • Blynk App - Allow you to create interfaces for projects using various widgets.. • Blynk Server - Responsible for all the communications between the smartphone and hardware • Blynk Libraries - Enable communication with the server and process all the incoming and outcoming commands for all the popular hardware platforms
  • 76. Topics  we  haven’t  discussed  yet • SPIFFS  (SPI  Flash  File  System)   • Firmware  Over  The  Air  (OTA)  Update   • Details  of  WiFi  module  such  as  configuration  using  WiFi   Manager,  Dual  Mode,  etc   • Watchdog  Timer  (WDT)   • RTOS/Scheduler   • and  much  more  ........
  • 77. As  software  developer  what  do  you  learn/expect  when   developing  for  hardware?   • Better  IDE/Tools   • Implement  software  engineering  best  practices  :  library  and   OOP,  highly  readable  code,  maintanable  code,  reuseable  code,   software  design  pattern,  implement  software  based  solution,   leverages  cloud,  UI  design. • IoT  development  will  breed  a  new  type  of  engineer,expert  in   electronics  while  fluent  in  software  development
  • 78. Few  of  IoT  Trends • IoT  and  Blockchain  will  converge   • IoT  Data  Analyzed  by  Machine  Learning/AI   • Rise  of  security  related  concerns     • IoT  will  reshape  the  health  care   IoT  is  the  new  “ELECTRICITY”  and  unstructured  data   is  the  new  “GOLD”
  • 79. How  about  IoT  Vendors,  Communities,  Events   and  etc  in  Indonesia?
  • 81. Some  Communities and  more  unlisted  communities  ...
  • 82. IoT  Store and  many  more  on  Tokopedia,  Bukalapak  and  etc
  • 85. IoT  Event 3  Days  Seminar    &  2  Days  Hackathon   Collaboration  between  Indonesia  &  Malaysia
  • 87. Traditional  Internet  vs  IoT  Security Traditional*Internet Internet*of*Things Relatively)Safe)Environment Hostile)Environment Standardized Large)Variety Loss)of)money)or)reputation Loss)of)life,)money)or)reputation Relatively)Mature Relatively)New
  • 90. What  can  be  attacked?
  • 91. IoT  Vulnerability  Categories • Device  security  vulnerabilities   • Firmware  vulnerabilities   • Web,  mobile,  or  network  vulnerabilities   • Radio  communication  based  vulnerabilities
  • 94. Target  Scenario  of  Defense  and  Public  Safety
  • 95. AttifyOS  -­‐  Distro  for  pentesting  IoT  devices
 https://github.com/adi0x90/attifyos
  • 96. WiFi  DeAuther  based  on  ESP8266 https://github.com/spacehuhn/esp8266_deauther
  • 97. Learning  Resources • ESPRESSIF        https://github.com/espressif   • Kolban’s  Books      https://leanpub.com/ESP8266_ESP32   • ESP8266  Community  Forum      http://www.esp8266.com/   • HACKSTER      https://hackster.io   • Join  Community        http://t.me/kongkowITMedan
  • 98. Quiz  -­‐  Get  a  free  ESP8266  Board! • Sebutkan bahasa pemrograman yang bisa dipakai untuk pengembangan solusi IoT untuk Things, Cloud and Apps • Sebutkan 5 protokol komunikasi data yang bisa dipakai untuk IoT • Sebutkan minimal 3 cloud platform yang bisa dipakai untuk IoT 98