From eb0cfce8013d4bfcd45cc1162cce865e655ac459 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Thu, 19 Apr 2018 08:49:17 +0200 Subject: wip --- what-is-iot-slides.tex | 177 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 171 insertions(+), 6 deletions(-) (limited to 'what-is-iot-slides.tex') diff --git a/what-is-iot-slides.tex b/what-is-iot-slides.tex index cfe6a53..ea08852 100644 --- a/what-is-iot-slides.tex +++ b/what-is-iot-slides.tex @@ -52,6 +52,15 @@ \begin{frame}{What is an IoT Device?} \protect\hypertarget{what-is-an-iot-device}{} +\note{As for their definition. + +What differentiates a computer from an IoT device?} + +\end{frame} + +\begin{frame}{What is an IoT Device?} +\protect\hypertarget{what-is-an-iot-device-1}{} + \begin{itemize} \tightlist \item @@ -70,7 +79,102 @@ \end{itemize} \end{itemize} -\note{What differentiates a computer from an IoT device?} +\end{frame} + +\begin{frame}{Typical IoT chips - Bluetooth 4/5} +\protect\hypertarget{typical-iot-chips---bluetooth-45}{} + +\begin{longtable}[]{@{}llllll@{}} +\toprule +Chip & CPU & Freq & RAM & Flash & Price\tabularnewline +\midrule +\endhead +nRF52810 & Cortex-M4 & 64 M & Hz 24k & 192k & \$1.88\tabularnewline +High perf & ormance, & entry & -level Bl & uetooth & 4/ANT/2.4GHz +SoC\tabularnewline +\bottomrule +\end{longtable} + +nRF52832 Cortex-M4F 32k 256k \$2.54 64k 512k \$2.59 High performance +Bluetooth 4/ANT/2.4GHz SoC + +nRF52840 Cortex-M4F 256k 1024k \$3.85 Advanced multi-protocol +System-on-Chip Supporting: Bluetooth 5, ANT/ANT+, 802.15.4 and 2.4GHz +proprietary + +\note{All quantities are 1000 pieces + +nRF51: +https://www.digikey.no/products/en/rf-if-and-rfid/rf-transceiver-ics/879?k=nrf51822 + +nRF52832: these have different packagings, not only difference price + +https://www.digikey.no/products/en/rf-if-and-rfid/rf-transceiver-ics/879?FV=1c0001\%2Cffe0036f\&quantity=3000\&ColumnSort=1000011\&page=1\&k=nrf52832\&pageSize=500\&pkeyword=nrf52810} + +\end{frame} + +\begin{frame}{Typical IoT chips - Wi-Fi} +\protect\hypertarget{typical-iot-chips---wi-fi}{} + +\begin{longtable}[]{@{}llllll@{}} +\toprule +Chip & CPU & Freq & ROM & RAM & Price\tabularnewline +\midrule +\endhead +ESP8266 & Tensilica L106 & 160 MHz & N/A & \textasciitilde{}50 kB & +\textless{} \$1\tabularnewline +\bottomrule +\end{longtable} + +ESP32 - dual cpu, Wi-Fi, Bluetooth 4 ESP32-D0WDQ6 2x Xtensa @ 160MHz \$ +4.53 @ 10 + +\note{The ESP8266’s RAM depends on which firmware stack is used. +Physical is probably 128k or most likely 64k.} + +\end{frame} + +\begin{frame}{ESP8266 details - Power usage} +\protect\hypertarget{esp8266-details---power-usage}{} + +\begin{longtable}[]{@{}lr@{}} +\toprule +\begin{minipage}[b]{0.35\columnwidth}\raggedright +State\strut +\end{minipage} & \begin{minipage}[b]{0.22\columnwidth}\raggedleft +Current usage\strut +\end{minipage}\tabularnewline +\midrule +\endhead +\begin{minipage}[t]{0.35\columnwidth}\raggedright +Off\strut +\end{minipage} & \begin{minipage}[t]{0.22\columnwidth}\raggedleft +0.5 µA\strut +\end{minipage}\tabularnewline +\begin{minipage}[t]{0.35\columnwidth}\raggedright +Deep sleep with RTC\strut +\end{minipage} & \begin{minipage}[t]{0.22\columnwidth}\raggedleft +20 µA\strut +\end{minipage}\tabularnewline +\begin{minipage}[t]{0.35\columnwidth}\raggedright +Light sleep (with Wi-Fi)\strut +\end{minipage} & \begin{minipage}[t]{0.22\columnwidth}\raggedleft +1 mA\strut +\end{minipage}\tabularnewline +\begin{minipage}[t]{0.35\columnwidth}\raggedright +Sleep with peripherials\strut +\end{minipage} & \begin{minipage}[t]{0.22\columnwidth}\raggedleft +15 mA\strut +\end{minipage}\tabularnewline +\begin{minipage}[t]{0.35\columnwidth}\raggedright +TX\strut +\end{minipage} & \begin{minipage}[t]{0.22\columnwidth}\raggedleft +170 mA\strut +\end{minipage}\tabularnewline +\bottomrule +\end{longtable} + +\note{Datasheet page 18} \end{frame} @@ -225,10 +329,12 @@ The signaling does not specify any max data rate, very high rates \tightlist \item HTTP +\item + DNS \item MQTT \item - DNS + CoAP \item (everything else..) \end{itemize} @@ -238,8 +344,6 @@ The signaling does not specify any max data rate, very high rates \begin{frame}{Details: IP} \protect\hypertarget{details-ip}{} -\includegraphics{images/ip-header.pdf} - \note{Note that the “total length” field is 16 bits, 2 bytes, it’s maximum value is 64k, 65536.} @@ -248,7 +352,67 @@ maximum value is 64k, 65536.} \begin{frame}{Details: IP} \protect\hypertarget{details-ip-1}{} -\includegraphics{images/IP-Header_eng.pdf} +\end{frame} + +\hypertarget{lecture-mqtt}{% +\section{Lecture: MQTT}\label{lecture-mqtt}} + +\begin{frame}{MQTT} +\protect\hypertarget{mqtt}{} + +\begin{itemize} +\tightlist +\item + \emph{Message Queuing Telemetry Transport} +\item + \href{https://en.wikipedia.org/wiki/MQTT}{Wikipedia: MQTT} +\end{itemize} + +\end{frame} + +\begin{frame}{MQTT Implementations} +\protect\hypertarget{mqtt-implementations}{} + +\begin{itemize} +\tightlist +\item + Mosquitto +\item + Eclipse Paho +\end{itemize} + +\end{frame} + +\begin{frame}{MQTT Cloud Connectors} +\protect\hypertarget{mqtt-cloud-connectors}{} + +\begin{itemize} +\tightlist +\item + Cloud + + \begin{itemize} + \tightlist + \item + Amazon IoT + \item + Google Cloud IoT + \item + Microsoft Azure IoT + \item + CloudMQTT + \end{itemize} +\item + DIY + + \begin{itemize} + \tightlist + \item + ThingMQ + \item + HiveMQ + \end{itemize} +\end{itemize} \end{frame} @@ -259,10 +423,11 @@ maximum value is 64k, 65536.} \protect\hypertarget{assignments}{} \begin{itemize} -\tightlist \item Measure round trip time/latency. Measure UDP, TCP. Measure when the packet size is greater than the MTU +\item + Measure ISR timing \end{itemize} \end{frame} -- cgit v1.2.3