SlideShare a Scribd company logo
1 of 57
Download to read offline
Please  download  the  workshop  PDF  in  prior:  http://tiny.cc/iot-­2016
TECH  SUMMIT  2016
IoT Deep  Dive
〜Be  an  IoT developer  for  a  hour〜
Taisuke  "Tai"  Yamada, Advanced  Solution  Services
Please  download  the  PDF  in  prior:  http://tiny.cc/iot-­2016
© AKAMAI – TECH WEEK 2016
Call  for  Volunteers
・ This  session  contains  a  LIVE  DEMO  part  which
needs  attendee  participation.
・ Volunteer  will  receive  a  set  of  ESP8266  IoT
module  to  work  on  (and  take  it  home).
・ There  are  only  15  modules,  so  please  share  your
screen  with  your  neighbors  during  the  session!
Also,  please  download  the  PDF  → http://tiny.cc/iot-­2016
© AKAMAI – TECH WEEK 2016
So,  who  am  I?
・ Enterprise  Architect  in  APJ  A2S  Team
・ Provides  advanced  consulting  for  both
Akamaized and  non-­Akamaized part  of
customer  system.
・ Previously  a  software  developer  designing
high  performance  distributed  storage  and
bootstrap  system  for  a  cloud  platform.
© AKAMAI – TECH WEEK 2016
So,  who  am  I?
・ Enterprise  Architect  in  APJ  A2S  Team
・ Provides  advanced  consulting  for  both
Akamaized and  non-­Akamaized part  of
customer  system.
・ Previously  a  software  developer  designing
high  performance  distributed  storage  and
bootstrap  system  for  a  cloud  platform.
DISCLAIMER
I'm  not  in  an  IoT devteam of  Akamai.
It's  rather  I'm  doing  this  session  so  I  can  get  in  touch  
with  the  team,  and  exchange  the  idea  for  upcoming  
customers.
© AKAMAI – TECH WEEK 2016
Today's  Agenda
1. Quick  Overview  of  IoT
2. Walkthrough  of  DIY  IoT Setup
3. Live  Demonstration
4. Hands-­on  and  discussion  (if  time  permits)
© AKAMAI – TECH WEEK 2016
Internet  of  Things:  What  is  it?
Home  
Automation
© AKAMAI – TECH WEEK 2016
Home  
Automation
Connected  Cars
Internet  of  Things:  What  is  it?
© AKAMAI – TECH WEEK 2016
Home  
Automation
Connected  Cars
Sensor  Network
Internet  of  Things:  What  is  it?
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Major  aspects  of  IoT
・Connected  – on-­line  whenever  needed
・Sensors/controllers  embedded  in  real-­world,      
open  environment
・Vast  number  of  nodes,  vast  amount  of  data
Imagine  what  can  be  done  by  embedding  computer  intelligence  into  
our  society,  everywhere!
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Why  is  it  important?
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Why  is  it  important?
We  are  HERE  
NOW
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Why  is  it  important?
We  WANT  to  cover  
these  ALSO!
© AKAMAI – TECH WEEK 2016
What  we  do  in  this  session
© AKAMAI – TECH WEEK 2016
Be  an  IoT developer!
Feel  the  EXCITEMENT of  IoT!
What  we  do  in  this  session
© AKAMAI – TECH WEEK 2016
AND
Feel  the  PAIN of  IoT developer L
What  we  do  in  this  session
© AKAMAI – TECH WEEK 2016
Two  aspects  of  IoT
EXCITEMENT
and
PAIN
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Internet  of  Things:  Why  is  it  painful?
"Connected  – on-­line  whenever  needed"
→  Remember  the  recent  DDoS  attacks?
KrebsOnSecurity,  OVH,  Dyn,  ...
→  Mirai botnet  controlling  hundred  of  thousands  of      
insecure  IoT devices.
→  As  a  vendor,  you  MUST  secure/update  the  device
continuously,  long  after  the  product  release  L
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Internet  of  Things:  Why  is  it  painful?
"Sensors/controllers  embedded  in  real-­world,  
open  environment"
→  You  can't  control  where  they  get  deployed  
around  the  world.
→  You  can't  control  how  they  are  operated – never
expect  a  human  operation!
→  But  you  MUST  support  them  nevertheless  L
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Internet  of  Things:  Why  is  it  painful?
"Vast  number  of  nodes,  vast  amount  of  data"
→  25  BILLION nodes  in  2020
→  Each  node  generating  1Kbps  dataflow  turns  into  a
25  *  10^9  *  10^3  =  25Tbps  traffic!
(Our  record  up  to  now  is  7.6Tbps  @  EURO  2016)
→  If  controlling  a  device  takes  100ms,  it'll  take
25  *  10^9  *  10^-­1  =  79years  to  manage  these!
© AKAMAI – TECH WEEK 2016
Let's  feel  the  touch  of  it  in  the  field...
EXCITEMENT
and
PAIN
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
The  Demo/Workshop
You  will  be  developing^H^H^H^H
participating  a  LIVE  DEMO  of  an  
activity  monitor  IoT system.
Through  the  demo,  you  will  
experience  following  areas  of  an  IoT:
・Data  extraction  and  collection
・Data  analysis
・Application  development
・Upgradable  system  design
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
The  Setup
http://hackaday.com/2015/03/19/measuring-­heart-­rate-­with-­a-­piezo/
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
The  Data  Flow
+
+
+
+
Cloud  Service
Big  Data  comes  in...
...and  Social  Analysis  comes  out.
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Actual  Components
+
+
+
+
Cloud  Service
Big  Data  comes  in...
...and  Social  Analysis  comes  out.
IFTTT
GoogleDocs
Custom  UI
HTTP
WiFI
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Quick  Overview  on  Technologies
• vs  WiFi
Zigbee,  BlueTooth/BLE  has  low  power  consumption.
LTE(4G/5G)  has  advantage  in  coverage.
LPWAs  are  emerging  with  lower  power  and  wide  coverage.
• vs  HTTP
MQTT  is  emerging  with  "good  enough"  messaging.
CoAP is  also  emerging  with  HTTP-­on-­UDP  features.
Many  other  protocols  are  also  proposed.
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Quick  Overview  on  Technologies
• vs  IFTTT+GoogleDocs
AWS  IoT Platform,  Microsoft  Azure  IoT Suite,  Google,  ...
Primary  battlefield  for  "Big  Data  Storage  &  Analysis"
players.
• Others  (just  as  a  note  on  ongoing  effort)
-­ ARM  mbed Cloud,  offering  both  SDK  and  the
platform  for  IoT service  and  development
-­ Eclipse  IoT,  offering  an  open  middleware  for  IoT service.
-­ AllSeen Alliance  (former  AllJoyn  and  Open  Connect),
working  to  standardize  a  IoT framework.
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
The  Demo  -­ How  you  can  help
1.  Take  the  serial  console  of  the  module.
(Ask  Sunil  or  Dhruv if  you  need  support)
2.  Interrupt  the  app
3.  Customize  it  to  turn  off  the  "demo  mode"  and  actually
supply  your  name  and  generate  some  activity.
4.  Restart  the  app  (don't  power  reset,  just  call  a  function)
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Commands  (1/2)
$  kermit
C-­Kermit>  set  line  /dev/ttyUSB0
C-­Kermit>  set  speed  115200
C-­Kermit>  set  flow-­control  none
C-­Kermit>  set  carrier-­watch  off
C-­Kermit>  connect
...
connected  with  DEMOWIFI,  channel  6...Starting  the  app...  
Waiting  for  WiFi connection...
report:  sent
report:  sent
report:  sent
^C        ← interrupt  the  running  app
Type  in  as  shown  
in  orange.
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Commands  (2/2)
^C ← interruption  will  get  you  into  a  micropython shell
Type  "help()"  for  more  information.
>>>  app.username =  'tai'
>>>  app.testmode =  False
>>>  app.autostart()
report:  skipped
report:  skipped
...Play  with  the  sensor  to  generate  some  activity...
report:  sent            ← "sent"  indicates  success!
...
<CTRL-­ +  c>      ← key  sequence  to  return  to  kermit prompt
C-­Kermit>  exit
$
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.LIVE  DEMO!
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Just  in  case  the  demo  failed...
What  We  Should  See
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Analyze  by  Charts  and  Graphs
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Which  session  is  the  most  EXCITING?
Visual  Even  More
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Take-­Away
• Monitoring  a  single  person  is  only  a  on-­line  
activity  monitor.
• Monitoring  tens  of  thousand  of  people  gives  
you  insight  into  the  society you  live  in!
IoT =  Social  Monitoring
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.Feeling  the  PAIN
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Feeling  the  PAIN
COMPLEXITY
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Complexity  in  embedded  application
• Embedded  development  is  not  really  good  at  
"continuous  release"  model.
(historically/culturally,  apps  were  "set  in  stone")
• Both  social/business  aspects  and  HW/SW  limitation  
exists.
• Many  things  we  take  for  granted  in  PC-­level  
development  often  don't  exist.
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Example:  How  to  support  an  "upgrade"?
Boot  Loader Base  System
Application
User  Data
Primary  target
of upgrade
Is  not  usually  a  target,
but depends  on  design
Important,  but
out  of  scope
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Difficulty  of  upgrading  the  "lower  layer"
• Application
Fairly  safe  to  upgrade  as  long  as  the  base  system
itself  is  connected  and  stable.  Many  IoT "solution"
only  touches  this  part.
• Base  System
Hardness  begins  here.  Requires  careful  coodination of  ROM  
configuration  and  bootloader  design.  Also  involves  development
toolchain  setup.
• Boot  Loader  (on-­chip  and  off-­chip)
Usually  not  a  target  of  upgrade,  but  could  play  an  important
part  in  IoT if  multi-­stage  bootstrap  design  is  employed.
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Software  Stack  for  this  DEMO
ROM  functions  (on-­chip)
RBoot
(Boot Loader) MicroPython (System)
User  Data  (Flash,  RTC)
MicroPython Apps
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
(Relatively)  Easy  Part:  Application
>>>  dl('http://my.app.server/myapp.py')
>>>  ls()
['boot.py',  'myapp.py']
>>>  import  myapp
>>>  ...run  whatever  provided  by  "myapp"  module...
As  long  as  MicroPython platform  itself  is
running  stably,  you  can  download  and  upgrade
apps as  many  time  as  you  like!
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
SOTA  (Software  Over-­the-­Air)  Design
ROM  #3
ROM  #2
ROM  #1
ROM  #0
Basically,  the  idea  is  to  split
the flash  memory  region,
and load  firmware  to  upgrade
to each  region.
Flash  memory
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
SOTA  (Software  Over-­the-­Air)  by  Example
ROM  #3
ROM  #2
ROM  #1
ROM  #0
Flash  memory
RBoot
(Boot Loader)
During  bootup,  rboot maps
specified  ROM  region  to
processor  memory  map
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
SOTA  (Software  Over-­the-­Air)  by  Example
ROM  #3
ROM  #2
ROM  #1
ROM  #0
4MBSPI  Flash
ESP8266
processor
memory
map
1MB  Flash  ROM
mapped region
0x00000000
0x40200000
0x40300000
0xFFFFFFFF
1MB
1MB
1MB
1MB
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
SOTA  (Software  Over-­the-­Air)  by  Example
ROM  #3
ROM  #2
ROM  #1
ROM  #0
2MBSPI  Flash
ESP8266
processor
memory
map
1MB  Flash  ROM
mapped region
0x00000000
0x40200000
0x40300000
0xFFFFFFFF
512KB
512KB
512KB
512KB
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
SOTA  (Software  Over-­the-­Air)  by  Example
ROM  #3
ROM  #2
ROM  #1
ROM  #0
2MBSPI  Flash
ESP8266
processor
memory
map
ROM#3
0x00000000
0x40200000
0x40300000
0xFFFFFFFF
512KB
512KB
512KB
512KB
ROM#2
0x40280000
Now,  ROM#2  and  ROM#3  has different  
memory  layout  during  execution,  so  
needs  different  toolchain  setup  for  
development.
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
SOTA  (Software  Over-­the-­Air)  by  Example
ROM  #3
ROM  #2
ROM  #1
ROM  #0
2MBSPI  Flash
ESP8266
processor
memory
map
ROM#3
0x00000000
0x40200000
0x40300000
0xFFFFFFFF
512KB
512KB
512KB
512KB
ROM#2
0x40280000
...meaning,  ROM  image  for  #0/#2  
MUST  NOT  be  flashed to  ROM  #1/#3.
Every  little  difference builds  up  into
complexity.
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Other  Design  Points  (feasible,  but  complex)
• How  to  recover  from  "bad"  firmware?
With  unmanaged  IoT,  how  do  you  rollback?
• How  do  you  know  the  firmware  is  "good"?
With  valid  checksum?  After  it  got  a  reachable  IP  address?
You  will  actually  need  app-­level  information,  meaning  that
you  now  have  interactions  between  bootloader,  system  and  
application  to  consider.
• Should  you  manage  each  device  separately?
What  if  you  are  asked  to  deploy  "branched  version"  firmware
for  some  specific  customer  3years  later?
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
IoT Developer  Frustrations
• They  have  to  manage  all  these  complexity.
• IoT has  posed  a  new  challenge:
1. In  order  to  obtain  various  information  in  real  world,  
large  scale  deployment  is  needed.
2. In  order  to  handle  continuous  improvements,  frequent  
release  (=  upgrade)  is  needed.
3. These  must  be  accomplished  under  unmanaged  and  
unmanned  operation.
"Rock-­solidness"  is  a  key  factor
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Takeaway
• IoT developers  are  facing  so  many  problems.
• In  addition  to  traditional  embedded  development  
complexities,  IoT has  brought  in  totally  new  issues,  mainly  
in  management  and  scalability  area.
• While  big  data  is  the  "hot"  side  of  the  IoT industry,  they  
can  only  enjoy  it  after  all  these  issues  are  solved.
• People  only  buy  from  you  when  they  believe  you  
understand  them.  So,  let's  discuss  how  we  can  help  them!
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Thank  you,  and  enjoy  the  
IoT development!
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
NOTE
Some  features  in  this  slide  are  not  (yet)  
publically  available  as  these enchancements
were  done  just  for  this  TechSummit demo.
MicroPython feature  to  handle  RBoot,  SOTA  
upgrade,  and  associated  WiFi AP  info  are
major  examples  of  such  features.
Backup  Slides
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Backup  Slide:  DEMO  firmware  cheat  sheet
function functionality
>>> ls() List  upgradable  micropython app/module  files.
>>>  dl(<URL>) Download  micropython app/module  from  the  URL.
>>>  cat(<file>) Show content  of  a  file.
>>>  mv(<old>,<new>) Rename  a  file.
>>>  rm(<file>) Remove  a  file.
>>>  get(<URL>) Send  a  GET  to  the  URL.  Response is  discarded.
>>>  ifup(<SSID>,  <KEY>) Associate  to  a  WiFi AP.
>>>  ifdown() Shuts  down a  WiFi connection.
>>>  ifconfig() Show  current  IP  configuration (read-­only)
>>>  whoami() Show  MAC  address  of  its  own.
>>>  whereami() Show  BSSID  (MAC address)  of  associated  WiFi AP.
For  common  information,  consult  https://docs.micropython.org/  
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Backup  Slide:  RBoot setup  sample  (1/2)
>>>  import  rboot
>>>  #  By  default,  std rom  boots  from  ROM#0  region,  located
>>>  #  at  address  8192  (0x2000)  on  Flash  Memory.
>>>  rboot.boot_config()
{0:  8192,  'rom-­gpio':  0,  1:  1056768,  'rom-­std':  0,  2:  2105344,  3:  
3153920,  'mode':  0,  'roms':  4}
>>>  #  Reconfigure it  to use ROM#2  region
>>>  rboot.boot_config(std=2)
{0:  8192,  'rom-­gpio':  0,  1:  1056768,  'rom-­std':  2,  2:  2105344,  3:  
3153920,  'mode':  0,  'roms':  4}
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Backup  Slide:  RBoot setup  sample  (2/2)
>>>  import  rboot
>>>  #  Shows  that  last  (current)  ROM  used  to  boot  was  ROM#0
>>>  rboot.boot_mode()
{'last_rom':  0,  'temp_rom':  0,  'next_mode':  0,  'last_mode':  0}
>>>  #  Reconfigure to use ROM#3  temporary just for next boot
>>>  rboot.boot_mode(2,  3)
{'last_rom':  0,  'temp_rom':  3,  'next_mode':  2,  'last_mode':  0}
© AKAMAI – TECH WEEK 2016
Grow  revenue  opportunities  with  fast,  personalized  
web  experiences  and  manage  complexity  from  peak  
demand,  mobile  devices  and  data  collection.
Backup  Slide:  SOTA  upgrade  sample
>>>  import  sota,  rboot
>>>  sota.upgrade('http://dl.lab.test/fw.bin',  rom=3)
>>>  rboot.boot_mode(next_mode=2,  temp_rom=3)
>>>  import  sota,  rboot
>>>  sota.upgrade('http://dl.lab.test/fw.bin',  rom=3)
>>>  rboot.boot_config(std=3)
OR

More Related Content

What's hot

Aruba_Mobile_Engagement for Developer Partners
Aruba_Mobile_Engagement for Developer PartnersAruba_Mobile_Engagement for Developer Partners
Aruba_Mobile_Engagement for Developer PartnersDiana Laboy-Rush
 
The Path to BYOD in Financial Enterprise
The Path to BYOD in Financial EnterpriseThe Path to BYOD in Financial Enterprise
The Path to BYOD in Financial EnterpriseJason Boud
 
Great Expectations - Dr. Tom Leighton, Akamai
Great Expectations - Dr. Tom Leighton, AkamaiGreat Expectations - Dr. Tom Leighton, Akamai
Great Expectations - Dr. Tom Leighton, AkamaiAkamai Technologies
 
Business Processes in Microsoft Dynamics CRM - Nicu Aleman
Business Processes in Microsoft Dynamics CRM - Nicu AlemanBusiness Processes in Microsoft Dynamics CRM - Nicu Aleman
Business Processes in Microsoft Dynamics CRM - Nicu AlemanITCamp
 
AWS re:Invent 2016: Cloud agility and faster connectivity with AT&T NetBond a...
AWS re:Invent 2016: Cloud agility and faster connectivity with AT&T NetBond a...AWS re:Invent 2016: Cloud agility and faster connectivity with AT&T NetBond a...
AWS re:Invent 2016: Cloud agility and faster connectivity with AT&T NetBond a...Amazon Web Services
 
IoT Connectivity & IoT Analytics
IoT Connectivity & IoT AnalyticsIoT Connectivity & IoT Analytics
IoT Connectivity & IoT AnalyticsSarah Takforyan
 
Creating Web and Mobile Apps with Angular 2 - George Saadeh
Creating Web and Mobile Apps with Angular 2 - George SaadehCreating Web and Mobile Apps with Angular 2 - George Saadeh
Creating Web and Mobile Apps with Angular 2 - George SaadehITCamp
 
Keynote Ouverture Plénière - Sébastien Verger
Keynote Ouverture Plénière - Sébastien VergerKeynote Ouverture Plénière - Sébastien Verger
Keynote Ouverture Plénière - Sébastien VergerRSD
 
TADSummit Welcome Address, Alan Quayle
TADSummit Welcome Address, Alan QuayleTADSummit Welcome Address, Alan Quayle
TADSummit Welcome Address, Alan QuayleAlan Quayle
 
How Industry 4.0 Drives the Requirement for a Hybrid Cloud and Edge Architecture
How Industry 4.0 Drives the Requirement for a Hybrid Cloud and Edge ArchitectureHow Industry 4.0 Drives the Requirement for a Hybrid Cloud and Edge Architecture
How Industry 4.0 Drives the Requirement for a Hybrid Cloud and Edge ArchitectureM2M Alliance e.V.
 
Unified Access from Application Chaos to Application Fluency
Unified Access from Application Chaos to Application FluencyUnified Access from Application Chaos to Application Fluency
Unified Access from Application Chaos to Application FluencyAlcatel-Lucent Enterprise
 
Suddenly Reality - Peter Leeson
Suddenly Reality - Peter LeesonSuddenly Reality - Peter Leeson
Suddenly Reality - Peter LeesonITCamp
 
Digital Journey Oracle
Digital Journey OracleDigital Journey Oracle
Digital Journey OracleCarlos Vicens
 
SAAOne Case Study: Private cloud for data clearway
SAAOne Case Study: Private cloud for data clearwaySAAOne Case Study: Private cloud for data clearway
SAAOne Case Study: Private cloud for data clearwayCisco Case Studies
 
Solving the Internet of Things - AWS IoT Web Day
Solving the Internet of Things - AWS IoT Web Day Solving the Internet of Things - AWS IoT Web Day
Solving the Internet of Things - AWS IoT Web Day AWS Germany
 

What's hot (20)

Aruba_Mobile_Engagement for Developer Partners
Aruba_Mobile_Engagement for Developer PartnersAruba_Mobile_Engagement for Developer Partners
Aruba_Mobile_Engagement for Developer Partners
 
The Path to BYOD in Financial Enterprise
The Path to BYOD in Financial EnterpriseThe Path to BYOD in Financial Enterprise
The Path to BYOD in Financial Enterprise
 
Campaign Presentation
Campaign PresentationCampaign Presentation
Campaign Presentation
 
Great Expectations - Dr. Tom Leighton, Akamai
Great Expectations - Dr. Tom Leighton, AkamaiGreat Expectations - Dr. Tom Leighton, Akamai
Great Expectations - Dr. Tom Leighton, Akamai
 
Business Processes in Microsoft Dynamics CRM - Nicu Aleman
Business Processes in Microsoft Dynamics CRM - Nicu AlemanBusiness Processes in Microsoft Dynamics CRM - Nicu Aleman
Business Processes in Microsoft Dynamics CRM - Nicu Aleman
 
Connected Healthcare
Connected HealthcareConnected Healthcare
Connected Healthcare
 
AWS re:Invent 2016: Cloud agility and faster connectivity with AT&T NetBond a...
AWS re:Invent 2016: Cloud agility and faster connectivity with AT&T NetBond a...AWS re:Invent 2016: Cloud agility and faster connectivity with AT&T NetBond a...
AWS re:Invent 2016: Cloud agility and faster connectivity with AT&T NetBond a...
 
IoT Connectivity & IoT Analytics
IoT Connectivity & IoT AnalyticsIoT Connectivity & IoT Analytics
IoT Connectivity & IoT Analytics
 
Capital FM Arena
Capital FM ArenaCapital FM Arena
Capital FM Arena
 
Creating Web and Mobile Apps with Angular 2 - George Saadeh
Creating Web and Mobile Apps with Angular 2 - George SaadehCreating Web and Mobile Apps with Angular 2 - George Saadeh
Creating Web and Mobile Apps with Angular 2 - George Saadeh
 
Week10
Week10Week10
Week10
 
Keynote Ouverture Plénière - Sébastien Verger
Keynote Ouverture Plénière - Sébastien VergerKeynote Ouverture Plénière - Sébastien Verger
Keynote Ouverture Plénière - Sébastien Verger
 
TADSummit Welcome Address, Alan Quayle
TADSummit Welcome Address, Alan QuayleTADSummit Welcome Address, Alan Quayle
TADSummit Welcome Address, Alan Quayle
 
Advantech smart factory products
Advantech smart factory products Advantech smart factory products
Advantech smart factory products
 
How Industry 4.0 Drives the Requirement for a Hybrid Cloud and Edge Architecture
How Industry 4.0 Drives the Requirement for a Hybrid Cloud and Edge ArchitectureHow Industry 4.0 Drives the Requirement for a Hybrid Cloud and Edge Architecture
How Industry 4.0 Drives the Requirement for a Hybrid Cloud and Edge Architecture
 
Unified Access from Application Chaos to Application Fluency
Unified Access from Application Chaos to Application FluencyUnified Access from Application Chaos to Application Fluency
Unified Access from Application Chaos to Application Fluency
 
Suddenly Reality - Peter Leeson
Suddenly Reality - Peter LeesonSuddenly Reality - Peter Leeson
Suddenly Reality - Peter Leeson
 
Digital Journey Oracle
Digital Journey OracleDigital Journey Oracle
Digital Journey Oracle
 
SAAOne Case Study: Private cloud for data clearway
SAAOne Case Study: Private cloud for data clearwaySAAOne Case Study: Private cloud for data clearway
SAAOne Case Study: Private cloud for data clearway
 
Solving the Internet of Things - AWS IoT Web Day
Solving the Internet of Things - AWS IoT Web Day Solving the Internet of Things - AWS IoT Web Day
Solving the Internet of Things - AWS IoT Web Day
 

Similar to IoT Deep Dive - Be an IoT Developer for an Hour

How Schneider Electric Assures Its Salesforce Lightning Migration with Thousa...
How Schneider Electric Assures Its Salesforce Lightning Migration with Thousa...How Schneider Electric Assures Its Salesforce Lightning Migration with Thousa...
How Schneider Electric Assures Its Salesforce Lightning Migration with Thousa...ThousandEyes
 
Akamai: From Theory to Practice
Akamai: From Theory to PracticeAkamai: From Theory to Practice
Akamai: From Theory to PracticeLiz Bradley
 
Hey IT, Meet OT with Hima Mukkamala
Hey IT, Meet OT with Hima MukkamalaHey IT, Meet OT with Hima Mukkamala
Hey IT, Meet OT with Hima Mukkamalagogo6
 
Tom uk soti_final_without video.4.21.15
Tom uk soti_final_without video.4.21.15Tom uk soti_final_without video.4.21.15
Tom uk soti_final_without video.4.21.15Liz Bradley
 
The Future of Infrastructure: Key Trends to consider
The Future of Infrastructure: Key Trends to considerThe Future of Infrastructure: Key Trends to consider
The Future of Infrastructure: Key Trends to considerCapgemini
 
FiSH 2017 (Fukuoka International Startup Hub)| SORACOM The secure, scalable, ...
FiSH 2017 (Fukuoka International Startup Hub)| SORACOM The secure, scalable, ...FiSH 2017 (Fukuoka International Startup Hub)| SORACOM The secure, scalable, ...
FiSH 2017 (Fukuoka International Startup Hub)| SORACOM The secure, scalable, ...SORACOM,INC
 
Velocity EU 2014: Recycling the Web (why it's slowing your mobile app)
Velocity EU 2014: Recycling the Web (why it's slowing your mobile app)Velocity EU 2014: Recycling the Web (why it's slowing your mobile app)
Velocity EU 2014: Recycling the Web (why it's slowing your mobile app)Colin Bendell
 
IoT - Software Updates Via Akamai Over the Air Services
IoT - Software Updates Via Akamai Over the Air ServicesIoT - Software Updates Via Akamai Over the Air Services
IoT - Software Updates Via Akamai Over the Air ServicesAkamai Developers & Admins
 
Managing the IoT OTA via the Akamai OPEN APIs and Google Sheets
Managing the IoT OTA via the Akamai OPEN APIs and Google SheetsManaging the IoT OTA via the Akamai OPEN APIs and Google Sheets
Managing the IoT OTA via the Akamai OPEN APIs and Google SheetsAkamai Developers & Admins
 
Arguments for a Unified IoT Architecture
Arguments for a Unified IoT ArchitectureArguments for a Unified IoT Architecture
Arguments for a Unified IoT ArchitectureVoltDB
 
Akamai 2016 Investor Relations Summit Presentation
Akamai 2016 Investor Relations Summit PresentationAkamai 2016 Investor Relations Summit Presentation
Akamai 2016 Investor Relations Summit PresentationLiz Bradley
 
Cisco connect montreal 2018 - Network Slicing: Horizontal Virtualization
Cisco connect montreal 2018 - Network Slicing: Horizontal VirtualizationCisco connect montreal 2018 - Network Slicing: Horizontal Virtualization
Cisco connect montreal 2018 - Network Slicing: Horizontal VirtualizationCisco Canada
 
Internet of things basics
Internet of things basicsInternet of things basics
Internet of things basicscumulocity
 
Networks, Networks Everywhere, And Not A Packet To Drink
Networks, Networks Everywhere, And Not A Packet To DrinkNetworks, Networks Everywhere, And Not A Packet To Drink
Networks, Networks Everywhere, And Not A Packet To DrinkReadWrite
 
Cloud Delivery: The Path from Simple to Sophisticated
Cloud Delivery: The Path from Simple to SophisticatedCloud Delivery: The Path from Simple to Sophisticated
Cloud Delivery: The Path from Simple to SophisticatedAkamai Developers & Admins
 
What is ThousandEyes Webinar
What is ThousandEyes WebinarWhat is ThousandEyes Webinar
What is ThousandEyes WebinarThousandEyes
 
Cloud Computing - Everything you wanted to know!
Cloud Computing - Everything you wanted to know!Cloud Computing - Everything you wanted to know!
Cloud Computing - Everything you wanted to know!Debasish Patra
 
SP Virtual Managed Services (VMS) for Intelligent WAN (IWAN)
SP Virtual Managed Services (VMS) for Intelligent WAN (IWAN)SP Virtual Managed Services (VMS) for Intelligent WAN (IWAN)
SP Virtual Managed Services (VMS) for Intelligent WAN (IWAN)Cisco Canada
 
Smart Cities are the Internet of Things
Smart Cities are the Internet of ThingsSmart Cities are the Internet of Things
Smart Cities are the Internet of Thingszdshelby
 
DWS15 - TV & Video Forum - Challenges to delivering a successful future for o...
DWS15 - TV & Video Forum - Challenges to delivering a successful future for o...DWS15 - TV & Video Forum - Challenges to delivering a successful future for o...
DWS15 - TV & Video Forum - Challenges to delivering a successful future for o...IDATE DigiWorld
 

Similar to IoT Deep Dive - Be an IoT Developer for an Hour (20)

How Schneider Electric Assures Its Salesforce Lightning Migration with Thousa...
How Schneider Electric Assures Its Salesforce Lightning Migration with Thousa...How Schneider Electric Assures Its Salesforce Lightning Migration with Thousa...
How Schneider Electric Assures Its Salesforce Lightning Migration with Thousa...
 
Akamai: From Theory to Practice
Akamai: From Theory to PracticeAkamai: From Theory to Practice
Akamai: From Theory to Practice
 
Hey IT, Meet OT with Hima Mukkamala
Hey IT, Meet OT with Hima MukkamalaHey IT, Meet OT with Hima Mukkamala
Hey IT, Meet OT with Hima Mukkamala
 
Tom uk soti_final_without video.4.21.15
Tom uk soti_final_without video.4.21.15Tom uk soti_final_without video.4.21.15
Tom uk soti_final_without video.4.21.15
 
The Future of Infrastructure: Key Trends to consider
The Future of Infrastructure: Key Trends to considerThe Future of Infrastructure: Key Trends to consider
The Future of Infrastructure: Key Trends to consider
 
FiSH 2017 (Fukuoka International Startup Hub)| SORACOM The secure, scalable, ...
FiSH 2017 (Fukuoka International Startup Hub)| SORACOM The secure, scalable, ...FiSH 2017 (Fukuoka International Startup Hub)| SORACOM The secure, scalable, ...
FiSH 2017 (Fukuoka International Startup Hub)| SORACOM The secure, scalable, ...
 
Velocity EU 2014: Recycling the Web (why it's slowing your mobile app)
Velocity EU 2014: Recycling the Web (why it's slowing your mobile app)Velocity EU 2014: Recycling the Web (why it's slowing your mobile app)
Velocity EU 2014: Recycling the Web (why it's slowing your mobile app)
 
IoT - Software Updates Via Akamai Over the Air Services
IoT - Software Updates Via Akamai Over the Air ServicesIoT - Software Updates Via Akamai Over the Air Services
IoT - Software Updates Via Akamai Over the Air Services
 
Managing the IoT OTA via the Akamai OPEN APIs and Google Sheets
Managing the IoT OTA via the Akamai OPEN APIs and Google SheetsManaging the IoT OTA via the Akamai OPEN APIs and Google Sheets
Managing the IoT OTA via the Akamai OPEN APIs and Google Sheets
 
Arguments for a Unified IoT Architecture
Arguments for a Unified IoT ArchitectureArguments for a Unified IoT Architecture
Arguments for a Unified IoT Architecture
 
Akamai 2016 Investor Relations Summit Presentation
Akamai 2016 Investor Relations Summit PresentationAkamai 2016 Investor Relations Summit Presentation
Akamai 2016 Investor Relations Summit Presentation
 
Cisco connect montreal 2018 - Network Slicing: Horizontal Virtualization
Cisco connect montreal 2018 - Network Slicing: Horizontal VirtualizationCisco connect montreal 2018 - Network Slicing: Horizontal Virtualization
Cisco connect montreal 2018 - Network Slicing: Horizontal Virtualization
 
Internet of things basics
Internet of things basicsInternet of things basics
Internet of things basics
 
Networks, Networks Everywhere, And Not A Packet To Drink
Networks, Networks Everywhere, And Not A Packet To DrinkNetworks, Networks Everywhere, And Not A Packet To Drink
Networks, Networks Everywhere, And Not A Packet To Drink
 
Cloud Delivery: The Path from Simple to Sophisticated
Cloud Delivery: The Path from Simple to SophisticatedCloud Delivery: The Path from Simple to Sophisticated
Cloud Delivery: The Path from Simple to Sophisticated
 
What is ThousandEyes Webinar
What is ThousandEyes WebinarWhat is ThousandEyes Webinar
What is ThousandEyes Webinar
 
Cloud Computing - Everything you wanted to know!
Cloud Computing - Everything you wanted to know!Cloud Computing - Everything you wanted to know!
Cloud Computing - Everything you wanted to know!
 
SP Virtual Managed Services (VMS) for Intelligent WAN (IWAN)
SP Virtual Managed Services (VMS) for Intelligent WAN (IWAN)SP Virtual Managed Services (VMS) for Intelligent WAN (IWAN)
SP Virtual Managed Services (VMS) for Intelligent WAN (IWAN)
 
Smart Cities are the Internet of Things
Smart Cities are the Internet of ThingsSmart Cities are the Internet of Things
Smart Cities are the Internet of Things
 
DWS15 - TV & Video Forum - Challenges to delivering a successful future for o...
DWS15 - TV & Video Forum - Challenges to delivering a successful future for o...DWS15 - TV & Video Forum - Challenges to delivering a successful future for o...
DWS15 - TV & Video Forum - Challenges to delivering a successful future for o...
 

More from Taisuke Yamada

ウェブパフォーマンス計測の落とし穴
ウェブパフォーマンス計測の落とし穴ウェブパフォーマンス計測の落とし穴
ウェブパフォーマンス計測の落とし穴Taisuke Yamada
 
DIY Akamai Globe in 50 Minutes
DIY Akamai Globe in 50 MinutesDIY Akamai Globe in 50 Minutes
DIY Akamai Globe in 50 MinutesTaisuke Yamada
 
ウェブサイト最適化101 - 正しく測ろうあなたのサイト -
ウェブサイト最適化101 - 正しく測ろうあなたのサイト -ウェブサイト最適化101 - 正しく測ろうあなたのサイト -
ウェブサイト最適化101 - 正しく測ろうあなたのサイト -Taisuke Yamada
 
Quick QUIC Technical Update (2017)
Quick QUIC Technical Update (2017)Quick QUIC Technical Update (2017)
Quick QUIC Technical Update (2017)Taisuke Yamada
 
Pythonではじめるソフトウェア無線
Pythonではじめるソフトウェア無線Pythonではじめるソフトウェア無線
Pythonではじめるソフトウェア無線Taisuke Yamada
 
Getting Started with SDR in Python
Getting Started with SDR in PythonGetting Started with SDR in Python
Getting Started with SDR in PythonTaisuke Yamada
 
VSCode Remoteでも画像コピペがしたいです!
VSCode Remoteでも画像コピペがしたいです!VSCode Remoteでも画像コピペがしたいです!
VSCode Remoteでも画像コピペがしたいです!Taisuke Yamada
 
Infinite Debian - Platform for mass-producing system every second
Infinite Debian - Platform for mass-producing system every secondInfinite Debian - Platform for mass-producing system every second
Infinite Debian - Platform for mass-producing system every secondTaisuke Yamada
 
Hacking Ruby with Python
Hacking Ruby with PythonHacking Ruby with Python
Hacking Ruby with PythonTaisuke Yamada
 
Invitation to Kernel Parameter and Code Exploration
Invitation to Kernel Parameter and Code ExplorationInvitation to Kernel Parameter and Code Exploration
Invitation to Kernel Parameter and Code ExplorationTaisuke Yamada
 
Charity Items from Debian JP Project
Charity Items from Debian JP ProjectCharity Items from Debian JP Project
Charity Items from Debian JP ProjectTaisuke Yamada
 
mod_auth_ticket - Bringing Single-Sign-On to lighttpd
mod_auth_ticket - Bringing Single-Sign-On to lighttpdmod_auth_ticket - Bringing Single-Sign-On to lighttpd
mod_auth_ticket - Bringing Single-Sign-On to lighttpdTaisuke Yamada
 
Introduction to Initramfs - Initramfs-tools and Dracut
Introduction to Initramfs - Initramfs-tools and DracutIntroduction to Initramfs - Initramfs-tools and Dracut
Introduction to Initramfs - Initramfs-tools and DracutTaisuke Yamada
 
Hadoop book-2nd-ch3-update
Hadoop book-2nd-ch3-updateHadoop book-2nd-ch3-update
Hadoop book-2nd-ch3-updateTaisuke Yamada
 
The CAcert Project - An Invitation to CAcert ATE in OSC/Tokyo 2011 (EN)
The CAcert Project - An Invitation to CAcert ATE in OSC/Tokyo 2011 (EN)The CAcert Project - An Invitation to CAcert ATE in OSC/Tokyo 2011 (EN)
The CAcert Project - An Invitation to CAcert ATE in OSC/Tokyo 2011 (EN)Taisuke Yamada
 
The CAcert Project - An Invitation to CAcert ATE at OSC/Tokyo 2011 (JP)
The CAcert Project - An Invitation to CAcert ATE at OSC/Tokyo 2011 (JP)The CAcert Project - An Invitation to CAcert ATE at OSC/Tokyo 2011 (JP)
The CAcert Project - An Invitation to CAcert ATE at OSC/Tokyo 2011 (JP)Taisuke Yamada
 
201012 cacert-at-tokyodebian
201012 cacert-at-tokyodebian201012 cacert-at-tokyodebian
201012 cacert-at-tokyodebianTaisuke Yamada
 
Nilfs usage-report-and-comparison-at-tokyodebian
Nilfs usage-report-and-comparison-at-tokyodebianNilfs usage-report-and-comparison-at-tokyodebian
Nilfs usage-report-and-comparison-at-tokyodebianTaisuke Yamada
 
Casual Web-browsing with gPXE and SYSLINUX
Casual Web-browsing with gPXE and SYSLINUXCasual Web-browsing with gPXE and SYSLINUX
Casual Web-browsing with gPXE and SYSLINUXTaisuke Yamada
 

More from Taisuke Yamada (20)

ウェブパフォーマンス計測の落とし穴
ウェブパフォーマンス計測の落とし穴ウェブパフォーマンス計測の落とし穴
ウェブパフォーマンス計測の落とし穴
 
DIY Akamai Globe in 50 Minutes
DIY Akamai Globe in 50 MinutesDIY Akamai Globe in 50 Minutes
DIY Akamai Globe in 50 Minutes
 
ウェブサイト最適化101 - 正しく測ろうあなたのサイト -
ウェブサイト最適化101 - 正しく測ろうあなたのサイト -ウェブサイト最適化101 - 正しく測ろうあなたのサイト -
ウェブサイト最適化101 - 正しく測ろうあなたのサイト -
 
Quick QUIC Technical Update (2017)
Quick QUIC Technical Update (2017)Quick QUIC Technical Update (2017)
Quick QUIC Technical Update (2017)
 
Pythonではじめるソフトウェア無線
Pythonではじめるソフトウェア無線Pythonではじめるソフトウェア無線
Pythonではじめるソフトウェア無線
 
Getting Started with SDR in Python
Getting Started with SDR in PythonGetting Started with SDR in Python
Getting Started with SDR in Python
 
VSCode Remoteでも画像コピペがしたいです!
VSCode Remoteでも画像コピペがしたいです!VSCode Remoteでも画像コピペがしたいです!
VSCode Remoteでも画像コピペがしたいです!
 
InfiniBand on Debian
InfiniBand on DebianInfiniBand on Debian
InfiniBand on Debian
 
Infinite Debian - Platform for mass-producing system every second
Infinite Debian - Platform for mass-producing system every secondInfinite Debian - Platform for mass-producing system every second
Infinite Debian - Platform for mass-producing system every second
 
Hacking Ruby with Python
Hacking Ruby with PythonHacking Ruby with Python
Hacking Ruby with Python
 
Invitation to Kernel Parameter and Code Exploration
Invitation to Kernel Parameter and Code ExplorationInvitation to Kernel Parameter and Code Exploration
Invitation to Kernel Parameter and Code Exploration
 
Charity Items from Debian JP Project
Charity Items from Debian JP ProjectCharity Items from Debian JP Project
Charity Items from Debian JP Project
 
mod_auth_ticket - Bringing Single-Sign-On to lighttpd
mod_auth_ticket - Bringing Single-Sign-On to lighttpdmod_auth_ticket - Bringing Single-Sign-On to lighttpd
mod_auth_ticket - Bringing Single-Sign-On to lighttpd
 
Introduction to Initramfs - Initramfs-tools and Dracut
Introduction to Initramfs - Initramfs-tools and DracutIntroduction to Initramfs - Initramfs-tools and Dracut
Introduction to Initramfs - Initramfs-tools and Dracut
 
Hadoop book-2nd-ch3-update
Hadoop book-2nd-ch3-updateHadoop book-2nd-ch3-update
Hadoop book-2nd-ch3-update
 
The CAcert Project - An Invitation to CAcert ATE in OSC/Tokyo 2011 (EN)
The CAcert Project - An Invitation to CAcert ATE in OSC/Tokyo 2011 (EN)The CAcert Project - An Invitation to CAcert ATE in OSC/Tokyo 2011 (EN)
The CAcert Project - An Invitation to CAcert ATE in OSC/Tokyo 2011 (EN)
 
The CAcert Project - An Invitation to CAcert ATE at OSC/Tokyo 2011 (JP)
The CAcert Project - An Invitation to CAcert ATE at OSC/Tokyo 2011 (JP)The CAcert Project - An Invitation to CAcert ATE at OSC/Tokyo 2011 (JP)
The CAcert Project - An Invitation to CAcert ATE at OSC/Tokyo 2011 (JP)
 
201012 cacert-at-tokyodebian
201012 cacert-at-tokyodebian201012 cacert-at-tokyodebian
201012 cacert-at-tokyodebian
 
Nilfs usage-report-and-comparison-at-tokyodebian
Nilfs usage-report-and-comparison-at-tokyodebianNilfs usage-report-and-comparison-at-tokyodebian
Nilfs usage-report-and-comparison-at-tokyodebian
 
Casual Web-browsing with gPXE and SYSLINUX
Casual Web-browsing with gPXE and SYSLINUXCasual Web-browsing with gPXE and SYSLINUX
Casual Web-browsing with gPXE and SYSLINUX
 

Recently uploaded

Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 

Recently uploaded (20)

Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 

IoT Deep Dive - Be an IoT Developer for an Hour

  • 1. Please  download  the  workshop  PDF  in  prior:  http://tiny.cc/iot-­2016
  • 2. TECH  SUMMIT  2016 IoT Deep  Dive 〜Be  an  IoT developer  for  a  hour〜 Taisuke  "Tai"  Yamada, Advanced  Solution  Services Please  download  the  PDF  in  prior:  http://tiny.cc/iot-­2016
  • 3. © AKAMAI – TECH WEEK 2016 Call  for  Volunteers ・ This  session  contains  a  LIVE  DEMO  part  which needs  attendee  participation. ・ Volunteer  will  receive  a  set  of  ESP8266  IoT module  to  work  on  (and  take  it  home). ・ There  are  only  15  modules,  so  please  share  your screen  with  your  neighbors  during  the  session! Also,  please  download  the  PDF  → http://tiny.cc/iot-­2016
  • 4. © AKAMAI – TECH WEEK 2016 So,  who  am  I? ・ Enterprise  Architect  in  APJ  A2S  Team ・ Provides  advanced  consulting  for  both Akamaized and  non-­Akamaized part  of customer  system. ・ Previously  a  software  developer  designing high  performance  distributed  storage  and bootstrap  system  for  a  cloud  platform.
  • 5. © AKAMAI – TECH WEEK 2016 So,  who  am  I? ・ Enterprise  Architect  in  APJ  A2S  Team ・ Provides  advanced  consulting  for  both Akamaized and  non-­Akamaized part  of customer  system. ・ Previously  a  software  developer  designing high  performance  distributed  storage  and bootstrap  system  for  a  cloud  platform. DISCLAIMER I'm  not  in  an  IoT devteam of  Akamai. It's  rather  I'm  doing  this  session  so  I  can  get  in  touch   with  the  team,  and  exchange  the  idea  for  upcoming   customers.
  • 6. © AKAMAI – TECH WEEK 2016 Today's  Agenda 1. Quick  Overview  of  IoT 2. Walkthrough  of  DIY  IoT Setup 3. Live  Demonstration 4. Hands-­on  and  discussion  (if  time  permits)
  • 7. © AKAMAI – TECH WEEK 2016 Internet  of  Things:  What  is  it? Home   Automation
  • 8. © AKAMAI – TECH WEEK 2016 Home   Automation Connected  Cars Internet  of  Things:  What  is  it?
  • 9. © AKAMAI – TECH WEEK 2016 Home   Automation Connected  Cars Sensor  Network Internet  of  Things:  What  is  it?
  • 10. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Major  aspects  of  IoT ・Connected  – on-­line  whenever  needed ・Sensors/controllers  embedded  in  real-­world,       open  environment ・Vast  number  of  nodes,  vast  amount  of  data Imagine  what  can  be  done  by  embedding  computer  intelligence  into   our  society,  everywhere!
  • 11. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Why  is  it  important?
  • 12. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Why  is  it  important? We  are  HERE   NOW
  • 13. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Why  is  it  important? We  WANT  to  cover   these  ALSO!
  • 14. © AKAMAI – TECH WEEK 2016 What  we  do  in  this  session
  • 15. © AKAMAI – TECH WEEK 2016 Be  an  IoT developer! Feel  the  EXCITEMENT of  IoT! What  we  do  in  this  session
  • 16. © AKAMAI – TECH WEEK 2016 AND Feel  the  PAIN of  IoT developer L What  we  do  in  this  session
  • 17. © AKAMAI – TECH WEEK 2016 Two  aspects  of  IoT EXCITEMENT and PAIN
  • 18. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Internet  of  Things:  Why  is  it  painful? "Connected  – on-­line  whenever  needed" →  Remember  the  recent  DDoS  attacks? KrebsOnSecurity,  OVH,  Dyn,  ... →  Mirai botnet  controlling  hundred  of  thousands  of       insecure  IoT devices. →  As  a  vendor,  you  MUST  secure/update  the  device continuously,  long  after  the  product  release  L
  • 19. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Internet  of  Things:  Why  is  it  painful? "Sensors/controllers  embedded  in  real-­world,   open  environment" →  You  can't  control  where  they  get  deployed   around  the  world. →  You  can't  control  how  they  are  operated – never expect  a  human  operation! →  But  you  MUST  support  them  nevertheless  L
  • 20. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Internet  of  Things:  Why  is  it  painful? "Vast  number  of  nodes,  vast  amount  of  data" →  25  BILLION nodes  in  2020 →  Each  node  generating  1Kbps  dataflow  turns  into  a 25  *  10^9  *  10^3  =  25Tbps  traffic! (Our  record  up  to  now  is  7.6Tbps  @  EURO  2016) →  If  controlling  a  device  takes  100ms,  it'll  take 25  *  10^9  *  10^-­1  =  79years  to  manage  these!
  • 21. © AKAMAI – TECH WEEK 2016 Let's  feel  the  touch  of  it  in  the  field... EXCITEMENT and PAIN
  • 22. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. The  Demo/Workshop You  will  be  developing^H^H^H^H participating  a  LIVE  DEMO  of  an   activity  monitor  IoT system. Through  the  demo,  you  will   experience  following  areas  of  an  IoT: ・Data  extraction  and  collection ・Data  analysis ・Application  development ・Upgradable  system  design
  • 23. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. The  Setup http://hackaday.com/2015/03/19/measuring-­heart-­rate-­with-­a-­piezo/
  • 24. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. The  Data  Flow + + + + Cloud  Service Big  Data  comes  in... ...and  Social  Analysis  comes  out.
  • 25. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Actual  Components + + + + Cloud  Service Big  Data  comes  in... ...and  Social  Analysis  comes  out. IFTTT GoogleDocs Custom  UI HTTP WiFI
  • 26. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Quick  Overview  on  Technologies • vs  WiFi Zigbee,  BlueTooth/BLE  has  low  power  consumption. LTE(4G/5G)  has  advantage  in  coverage. LPWAs  are  emerging  with  lower  power  and  wide  coverage. • vs  HTTP MQTT  is  emerging  with  "good  enough"  messaging. CoAP is  also  emerging  with  HTTP-­on-­UDP  features. Many  other  protocols  are  also  proposed.
  • 27. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Quick  Overview  on  Technologies • vs  IFTTT+GoogleDocs AWS  IoT Platform,  Microsoft  Azure  IoT Suite,  Google,  ... Primary  battlefield  for  "Big  Data  Storage  &  Analysis" players. • Others  (just  as  a  note  on  ongoing  effort) -­ ARM  mbed Cloud,  offering  both  SDK  and  the platform  for  IoT service  and  development -­ Eclipse  IoT,  offering  an  open  middleware  for  IoT service. -­ AllSeen Alliance  (former  AllJoyn  and  Open  Connect), working  to  standardize  a  IoT framework.
  • 28. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. The  Demo  -­ How  you  can  help 1.  Take  the  serial  console  of  the  module. (Ask  Sunil  or  Dhruv if  you  need  support) 2.  Interrupt  the  app 3.  Customize  it  to  turn  off  the  "demo  mode"  and  actually supply  your  name  and  generate  some  activity. 4.  Restart  the  app  (don't  power  reset,  just  call  a  function)
  • 29. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Commands  (1/2) $  kermit C-­Kermit>  set  line  /dev/ttyUSB0 C-­Kermit>  set  speed  115200 C-­Kermit>  set  flow-­control  none C-­Kermit>  set  carrier-­watch  off C-­Kermit>  connect ... connected  with  DEMOWIFI,  channel  6...Starting  the  app...   Waiting  for  WiFi connection... report:  sent report:  sent report:  sent ^C        ← interrupt  the  running  app Type  in  as  shown   in  orange.
  • 30. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Commands  (2/2) ^C ← interruption  will  get  you  into  a  micropython shell Type  "help()"  for  more  information. >>>  app.username =  'tai' >>>  app.testmode =  False >>>  app.autostart() report:  skipped report:  skipped ...Play  with  the  sensor  to  generate  some  activity... report:  sent            ← "sent"  indicates  success! ... <CTRL-­ +  c>      ← key  sequence  to  return  to  kermit prompt C-­Kermit>  exit $
  • 31. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection.LIVE  DEMO!
  • 32. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Just  in  case  the  demo  failed... What  We  Should  See
  • 33. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Analyze  by  Charts  and  Graphs
  • 34. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Which  session  is  the  most  EXCITING? Visual  Even  More
  • 35. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Take-­Away • Monitoring  a  single  person  is  only  a  on-­line   activity  monitor. • Monitoring  tens  of  thousand  of  people  gives   you  insight  into  the  society you  live  in! IoT =  Social  Monitoring
  • 36. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection.Feeling  the  PAIN
  • 37. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Feeling  the  PAIN COMPLEXITY
  • 38. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Complexity  in  embedded  application • Embedded  development  is  not  really  good  at   "continuous  release"  model. (historically/culturally,  apps  were  "set  in  stone") • Both  social/business  aspects  and  HW/SW  limitation   exists. • Many  things  we  take  for  granted  in  PC-­level   development  often  don't  exist.
  • 39. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Example:  How  to  support  an  "upgrade"? Boot  Loader Base  System Application User  Data Primary  target of upgrade Is  not  usually  a  target, but depends  on  design Important,  but out  of  scope
  • 40. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Difficulty  of  upgrading  the  "lower  layer" • Application Fairly  safe  to  upgrade  as  long  as  the  base  system itself  is  connected  and  stable.  Many  IoT "solution" only  touches  this  part. • Base  System Hardness  begins  here.  Requires  careful  coodination of  ROM   configuration  and  bootloader  design.  Also  involves  development toolchain  setup. • Boot  Loader  (on-­chip  and  off-­chip) Usually  not  a  target  of  upgrade,  but  could  play  an  important part  in  IoT if  multi-­stage  bootstrap  design  is  employed.
  • 41. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Software  Stack  for  this  DEMO ROM  functions  (on-­chip) RBoot (Boot Loader) MicroPython (System) User  Data  (Flash,  RTC) MicroPython Apps
  • 42. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. (Relatively)  Easy  Part:  Application >>>  dl('http://my.app.server/myapp.py') >>>  ls() ['boot.py',  'myapp.py'] >>>  import  myapp >>>  ...run  whatever  provided  by  "myapp"  module... As  long  as  MicroPython platform  itself  is running  stably,  you  can  download  and  upgrade apps as  many  time  as  you  like!
  • 43. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. SOTA  (Software  Over-­the-­Air)  Design ROM  #3 ROM  #2 ROM  #1 ROM  #0 Basically,  the  idea  is  to  split the flash  memory  region, and load  firmware  to  upgrade to each  region. Flash  memory
  • 44. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. SOTA  (Software  Over-­the-­Air)  by  Example ROM  #3 ROM  #2 ROM  #1 ROM  #0 Flash  memory RBoot (Boot Loader) During  bootup,  rboot maps specified  ROM  region  to processor  memory  map
  • 45. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. SOTA  (Software  Over-­the-­Air)  by  Example ROM  #3 ROM  #2 ROM  #1 ROM  #0 4MBSPI  Flash ESP8266 processor memory map 1MB  Flash  ROM mapped region 0x00000000 0x40200000 0x40300000 0xFFFFFFFF 1MB 1MB 1MB 1MB
  • 46. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. SOTA  (Software  Over-­the-­Air)  by  Example ROM  #3 ROM  #2 ROM  #1 ROM  #0 2MBSPI  Flash ESP8266 processor memory map 1MB  Flash  ROM mapped region 0x00000000 0x40200000 0x40300000 0xFFFFFFFF 512KB 512KB 512KB 512KB
  • 47. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. SOTA  (Software  Over-­the-­Air)  by  Example ROM  #3 ROM  #2 ROM  #1 ROM  #0 2MBSPI  Flash ESP8266 processor memory map ROM#3 0x00000000 0x40200000 0x40300000 0xFFFFFFFF 512KB 512KB 512KB 512KB ROM#2 0x40280000 Now,  ROM#2  and  ROM#3  has different   memory  layout  during  execution,  so   needs  different  toolchain  setup  for   development.
  • 48. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. SOTA  (Software  Over-­the-­Air)  by  Example ROM  #3 ROM  #2 ROM  #1 ROM  #0 2MBSPI  Flash ESP8266 processor memory map ROM#3 0x00000000 0x40200000 0x40300000 0xFFFFFFFF 512KB 512KB 512KB 512KB ROM#2 0x40280000 ...meaning,  ROM  image  for  #0/#2   MUST  NOT  be  flashed to  ROM  #1/#3. Every  little  difference builds  up  into complexity.
  • 49. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Other  Design  Points  (feasible,  but  complex) • How  to  recover  from  "bad"  firmware? With  unmanaged  IoT,  how  do  you  rollback? • How  do  you  know  the  firmware  is  "good"? With  valid  checksum?  After  it  got  a  reachable  IP  address? You  will  actually  need  app-­level  information,  meaning  that you  now  have  interactions  between  bootloader,  system  and   application  to  consider. • Should  you  manage  each  device  separately? What  if  you  are  asked  to  deploy  "branched  version"  firmware for  some  specific  customer  3years  later?
  • 50. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. IoT Developer  Frustrations • They  have  to  manage  all  these  complexity. • IoT has  posed  a  new  challenge: 1. In  order  to  obtain  various  information  in  real  world,   large  scale  deployment  is  needed. 2. In  order  to  handle  continuous  improvements,  frequent   release  (=  upgrade)  is  needed. 3. These  must  be  accomplished  under  unmanaged  and   unmanned  operation. "Rock-­solidness"  is  a  key  factor
  • 51. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Takeaway • IoT developers  are  facing  so  many  problems. • In  addition  to  traditional  embedded  development   complexities,  IoT has  brought  in  totally  new  issues,  mainly   in  management  and  scalability  area. • While  big  data  is  the  "hot"  side  of  the  IoT industry,  they   can  only  enjoy  it  after  all  these  issues  are  solved. • People  only  buy  from  you  when  they  believe  you   understand  them.  So,  let's  discuss  how  we  can  help  them!
  • 52. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Thank  you,  and  enjoy  the   IoT development!
  • 53. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. NOTE Some  features  in  this  slide  are  not  (yet)   publically  available  as  these enchancements were  done  just  for  this  TechSummit demo. MicroPython feature  to  handle  RBoot,  SOTA   upgrade,  and  associated  WiFi AP  info  are major  examples  of  such  features. Backup  Slides
  • 54. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Backup  Slide:  DEMO  firmware  cheat  sheet function functionality >>> ls() List  upgradable  micropython app/module  files. >>>  dl(<URL>) Download  micropython app/module  from  the  URL. >>>  cat(<file>) Show content  of  a  file. >>>  mv(<old>,<new>) Rename  a  file. >>>  rm(<file>) Remove  a  file. >>>  get(<URL>) Send  a  GET  to  the  URL.  Response is  discarded. >>>  ifup(<SSID>,  <KEY>) Associate  to  a  WiFi AP. >>>  ifdown() Shuts  down a  WiFi connection. >>>  ifconfig() Show  current  IP  configuration (read-­only) >>>  whoami() Show  MAC  address  of  its  own. >>>  whereami() Show  BSSID  (MAC address)  of  associated  WiFi AP. For  common  information,  consult  https://docs.micropython.org/  
  • 55. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Backup  Slide:  RBoot setup  sample  (1/2) >>>  import  rboot >>>  #  By  default,  std rom  boots  from  ROM#0  region,  located >>>  #  at  address  8192  (0x2000)  on  Flash  Memory. >>>  rboot.boot_config() {0:  8192,  'rom-­gpio':  0,  1:  1056768,  'rom-­std':  0,  2:  2105344,  3:   3153920,  'mode':  0,  'roms':  4} >>>  #  Reconfigure it  to use ROM#2  region >>>  rboot.boot_config(std=2) {0:  8192,  'rom-­gpio':  0,  1:  1056768,  'rom-­std':  2,  2:  2105344,  3:   3153920,  'mode':  0,  'roms':  4}
  • 56. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Backup  Slide:  RBoot setup  sample  (2/2) >>>  import  rboot >>>  #  Shows  that  last  (current)  ROM  used  to  boot  was  ROM#0 >>>  rboot.boot_mode() {'last_rom':  0,  'temp_rom':  0,  'next_mode':  0,  'last_mode':  0} >>>  #  Reconfigure to use ROM#3  temporary just for next boot >>>  rboot.boot_mode(2,  3) {'last_rom':  0,  'temp_rom':  3,  'next_mode':  2,  'last_mode':  0}
  • 57. © AKAMAI – TECH WEEK 2016 Grow  revenue  opportunities  with  fast,  personalized   web  experiences  and  manage  complexity  from  peak   demand,  mobile  devices  and  data  collection. Backup  Slide:  SOTA  upgrade  sample >>>  import  sota,  rboot >>>  sota.upgrade('http://dl.lab.test/fw.bin',  rom=3) >>>  rboot.boot_mode(next_mode=2,  temp_rom=3) >>>  import  sota,  rboot >>>  sota.upgrade('http://dl.lab.test/fw.bin',  rom=3) >>>  rboot.boot_config(std=3) OR