Browse Source

Presentation added

master
Dustin Frisch 8 years ago
parent
commit
65d4eb6a35
No known key found for this signature in database GPG Key ID: B4C3BF012D9B26BE
  1. 1
      .gitignore
  2. BIN
      esp-01s.jpg
  3. BIN
      index.pdf
  4. BIN
      maglab.png
  5. BIN
      presentation.pdf
  6. 95
      presentation.tex

1
.gitignore

@ -10,3 +10,4 @@
*.nav
*.snm
*.toc
*.vrb

BIN
esp-01s.jpg

After

Width: 2683  |  Height: 1562  |  Size: 459 KiB

BIN
index.pdf

BIN
maglab.png

After

Width: 6000  |  Height: 4698  |  Size: 1.1 MiB

BIN
presentation.pdf

95
presentation.tex

@ -1,12 +1,24 @@
\documentclass[11pt,ngerman]{beamer}
\usetheme{AnnArbor}
%\usetheme{Antibes}
\usetheme{Bergen}
\usecolortheme{seagull}
\usepackage{listings}
\usepackage{color}
\lstset{
language=c++,
columns=flexible,
basicstyle={\small\ttfamily},
keepspaces=true,
breaklines=true,
breakatwhitespace=true,
}
\begin{document}
\begin{frame}
\title{Implement Updates \textit{Over the Air} for ESP8266 microcontrollers}
\title{Implement Updates \textit{Over the Air} for \textit{ESP8266} microcontrollers}
\author{Dustin Frisch\\ C/C++ for Embedded Systems and Physical Computing\\ Angewandte Informatik\\ University of Applied Sciences Fulda\\ \texttt{dustin.frisch@informatik.hs-fulda.de}}
\date{\today}
\titlepage
@ -15,41 +27,108 @@
\begin{frame}
\frametitle{About the Project}
\framesubtitle{ESPer}
\centering{\includegraphics[width=\columnwidth]{esp-01s.jpg}}
\end{frame}
\begin{frame}
\frametitle{Why Updates?}
\frametitle{About the Project}
\framesubtitle{Magrathea Laboratories e.V.}
\centering{\includegraphics[scale=0.04]{maglab.png}}
\end{frame}
\begin{frame}
\frametitle{Why \textit{Over the Air}?}
\frametitle{Updates}
\begin{itemize}
\item Changed requirement or environment
\item Closing security issues
\item Fixing bugs
\item New Features
\end{itemize}
\centering{Often possible without hardware changes.}
\end{frame}
\begin{frame}
\frametitle{Implementation - Update mechanism}
\frametitle{\textit{Over the Air (OTA)}}
\centering{Reduces maintenance cost.}
\end{frame}
\begin{frame}
\frametitle{Implementation - Supporting multiple devices}
\frametitle{Requirements}
\begin{itemize}
\item Automatic updates \textit{OTA} without administrative interaction
\item Insusceptible to errors of any kind
\item Downloading side-by-side with payload traffic
\item Maximal uptime and minimal network load
\item Maintenance and monitoring
\item Categorizing devices by task-specific hardware
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Implementation - Automatic deployment and roll-out}
\frametitle{Implementation}
\framesubtitle{Update mechanism}
\begin{columns}
\begin{column}{0.6\textwidth}
\begin{enumerate}
\item Download \texttt{.version} file and compare
\item Download firmware binary for \emph{other} slot
\item Reconfigure \textit{rBoot} bootloader
\item Restart
\end{enumerate}
\end{column}
\begin{column}{0.4\textwidth}
\centering{\includegraphics[height=0.75\textheight]{flash_layout.pdf}}
\end{column}
\end{columns}
\end{frame}
\begin{frame}
\begin{frame}[fragile]
\frametitle{Implementation}
\framesubtitle{Supporting multiple devices}
\begin{lstlisting}
#include "Device.h"
#include "features/Socket.h"
Device device:
constexpr const char SOCKET_NAME[] = "socket";
constexpr const uint16_t SOCKET_GPIO = 12;
OnOffFeature<SOCKET_NAME, SOCKET_GPIO, false, 1> socket(&device);
Device* getDevice() { return &device; }
\end{lstlisting}
\end{frame}
\begin{frame}
\frametitle{Implementation}
\framesubtitle{Supporting multiple devices}
\centering{\texttt{make socket/flash} \\ to build and flash.}
\end{frame}
\begin{frame}
\frametitle{Implementation}
\framesubtitle{Automatic deployment and roll-out}
\begin{itemize}
\item \texttt{git commit}
\item \textit{drone} builds it
\item \texttt{scp *.version *.rom\{0,1\}} to deployment server
\item Served by \textit{nginx}
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Conclusion}
\centering{It works!}
\end{frame}
\begin{frame}
\centering{\url{https://git.maglab.space/esper/esper}}
\vspace{20mm}
\centering{\large{Thank you for your attention.}}
\end{frame}
\end{document}}
Loading…
Cancel
Save