From 7fe4e05705b4df82e8d710e432cb8f5fb79222bf Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Fri, 27 Apr 2018 01:46:46 +0200 Subject: wip --- slides/what-is-iot-reveal.html | 241 ++++++++++++++++++++++------------------- 1 file changed, 128 insertions(+), 113 deletions(-) (limited to 'slides/what-is-iot-reveal.html') diff --git a/slides/what-is-iot-reveal.html b/slides/what-is-iot-reveal.html index b63657a..2990fce 100644 --- a/slides/what-is-iot-reveal.html +++ b/slides/what-is-iot-reveal.html @@ -105,6 +105,107 @@ code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warni

Trygve Laugstøl <trygvis@trygvis.io>

+

NodeMCU

+

NodeMCU hardware

+

+
+

NodeMCU hardware

+ +
+

ESP8266 software layers

+ +
+

ESP8266 + Arduino

+
    +
  • Standard Arduino IDE
  • +
  • ESP8266 Arduino core +
      +
    • https://github.com/esp8266/Arduino
    • +
  • +
+
+

Arduino IDE

+

+
+

Arduino code structure

+ + +
+

Arduino file structure

+
foo/
+  foo.ino
+  config.h
+ +
+

Generic Arduino APIs

+ +
+

ESP Arduino APIs

+ +
+

ESP Arduino APIs

+ + +

What is IoT

What is IoT

    @@ -455,108 +556,6 @@ code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warni

Details: UDP

-

TODO: add payload to “ip packets”

-
-

Lecture: ESP8266

-

NodeMCU hardware

-

-
-

NodeMCU hardware

- -
-

ESP8266 software layers

- -
-

ESP8266 + Arduino

-
    -
  • Standard Arduino IDE
  • -
  • ESP8266 Arduino core -
      -
    • https://github.com/esp8266/Arduino
    • -
  • -
-
-

Arduino IDE

-

-
-

Arduino code structure

- - -
-

Arduino file structure

-
foo/
-  foo.ino
-  config.h
- -
-

Generic Arduino APIs

- -
-

ESP Arduino APIs

- -
-

ESP Arduino APIs

- -

Lecture: MQTT

MQTT

@@ -570,6 +569,9 @@ code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warni

Has UDP-like semantics with “fire and forget” but on a higher level (the message always have to be delivered and ACKed by the broker, not it’s final recipient.

Version 3.1.1 er den som gjelder, V 3.1 er rar, de andre finnes ikke (før standardisering).

+
+

Device and application architecture with MQTT

+

MQTT - Implementations

    @@ -647,9 +649,25 @@ code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warni

    Only packet type + flags (1 byte) is required, everything else is optional.

    The size field is variable length encoded, 0-127 bytes is 1 byte, 128-16383 use 2 bytes etc, up to 4 bytes for 256MB payload.

    -
-

MQTT - The protocol - Keep alive

-

TODO

+
+

MQTT Connect

+
    +
  • CONNECT +
      +
    • clientId
    • +
    • username
    • +
    • password
    • +
    • keepAlive
    • +
  • +
+ +
    +
  • Keep alive +
      +
    • PINGREQ
    • +
    • PINGRESP
    • +
  • +

MQTT - The protocol - MQTT Topic

    @@ -713,12 +731,6 @@ code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warni
  • 0
-
-

MQTT - The protocol - Client id

-

TODO

-
-

Device and application architecture with MQTT

-

MQTT Topic

The temperature sensor:

@@ -806,9 +818,12 @@ code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warni
  • myapp/$device-id/command
  • -
    +

    MQTT topic architecture

    + +
    +

    MQTT topic architecture

    -

    MQTT - Patterns

      -- cgit v1.2.3