aboutsummaryrefslogtreecommitdiff
path: root/what-is-iot-slides.tex
diff options
context:
space:
mode:
Diffstat (limited to 'what-is-iot-slides.tex')
-rw-r--r--what-is-iot-slides.tex177
1 files changed, 171 insertions, 6 deletions
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}
@@ -226,9 +330,11 @@ The signaling does not specify any max data rate, very high rates
\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}