diff --git a/Praesentationen/folien_vorstellung/img/abloese_1_1.png b/Praesentationen/folien_vorstellung/img/abloese_1_1.png
new file mode 100644
index 0000000000000000000000000000000000000000..5a3298995617e8f30f9e50b6b2e0d8d36ce3520c
Binary files /dev/null and b/Praesentationen/folien_vorstellung/img/abloese_1_1.png differ
diff --git a/Praesentationen/folien_vorstellung/img/abloese_1_2.png b/Praesentationen/folien_vorstellung/img/abloese_1_2.png
new file mode 100644
index 0000000000000000000000000000000000000000..4ee9a4acfc7dd9eeee737e3b350eb4997ba8c238
Binary files /dev/null and b/Praesentationen/folien_vorstellung/img/abloese_1_2.png differ
diff --git a/Praesentationen/folien_vorstellung/img/abloese_1_3.png b/Praesentationen/folien_vorstellung/img/abloese_1_3.png
new file mode 100644
index 0000000000000000000000000000000000000000..445ba64cfb3512a7dde8ab12a96c2338696b6d72
Binary files /dev/null and b/Praesentationen/folien_vorstellung/img/abloese_1_3.png differ
diff --git a/Praesentationen/folien_vorstellung/img/abloese_2_1.png b/Praesentationen/folien_vorstellung/img/abloese_2_1.png
new file mode 100644
index 0000000000000000000000000000000000000000..bcb89cd180d55f50d4fce41baab820c00c3140f3
Binary files /dev/null and b/Praesentationen/folien_vorstellung/img/abloese_2_1.png differ
diff --git a/Praesentationen/folien_vorstellung/img/abloese_2_2.png b/Praesentationen/folien_vorstellung/img/abloese_2_2.png
new file mode 100644
index 0000000000000000000000000000000000000000..0f96aa5557b3c2185ea5a1a1e43823ea5b6a83e0
Binary files /dev/null and b/Praesentationen/folien_vorstellung/img/abloese_2_2.png differ
diff --git a/Praesentationen/folien_vorstellung/img/abloese_2_3.png b/Praesentationen/folien_vorstellung/img/abloese_2_3.png
new file mode 100644
index 0000000000000000000000000000000000000000..2fcb4d5e7cb0accdb2b146f4a95ca5fbbdf5448d
Binary files /dev/null and b/Praesentationen/folien_vorstellung/img/abloese_2_3.png differ
diff --git a/Praesentationen/folien_vorstellung/slides.pdf b/Praesentationen/folien_vorstellung/slides.pdf
index bd07fc03c81d426f94e10d114e6c93af4b82e282..2376a0e2ef9956c534887baacf6eb244757a582e 100644
Binary files a/Praesentationen/folien_vorstellung/slides.pdf and b/Praesentationen/folien_vorstellung/slides.pdf differ
diff --git a/Praesentationen/folien_vorstellung/slides/slides.tex b/Praesentationen/folien_vorstellung/slides/slides.tex
index 23b03ac8d99d2c144e916c2398f9c2348b9f57ee..f6d0d9212c5babc6917607f94e51bd01ee96a67f 100644
--- a/Praesentationen/folien_vorstellung/slides/slides.tex
+++ b/Praesentationen/folien_vorstellung/slides/slides.tex
@@ -211,10 +211,6 @@
 \begin{frame}\frametitle{Firmware}
 	\begin{itemize}
 		\item Eigene Firmware f\"ur den Drucker geschrieben
-		\begin{itemize}
-			\item Hinzuf\"ugen weiterer Funltionen einfacher
-			\item ...und der Programmierer hat auch Spa{\ss} :)
-		\end{itemize}
 		\item Viele Implementierungen aus den \"Ubungen wiederverwendet
 		\item G-Codes nach RepRapFirmware
 		\item Kompatibel mit 3D-Druck-Software wie Pronterface oder Octoprint
@@ -223,6 +219,22 @@
 \begin{frame}\frametitle{Firmware}
 	\center{\includegraphics[width=0.8\textwidth]{img/system_small.pdf}}
 \end{frame}
+\begin{frame}\frametitle{Achsen und Motoren}
+	\begin{itemize}
+		\item Motoren als Struct beschrieben, nur Pins und Schrittanzahl
+		\item Achsen-Modul \"ubernimmt Umrechnung und Positionierung
+		\item Je nach Art der Achse andere Formel f\"ur Schritte pro Millimeter
+		\item Nicht 100\% exakt - ben\"otigt Nachkalibrierung
+	\end{itemize}
+\end{frame}
+\begin{frame}\frametitle{G-Codes}
+	\begin{itemize}
+		\item G-Code-Implementierung nach Definition auf dem RepRap-Wiki
+		\item Menge klein gehalten (18 G-Codes), nur das n\"otigste
+		\item Ringbuffer zum Einlesen der Befehle
+		\item Kommunikation mit dem PC, Status und Anforderung des n\"achsten G-Code... falls die Software sich darum k\"ummert
+	\end{itemize}
+\end{frame}
 
 
 \section{Fertiger Drucker}
@@ -265,7 +277,7 @@
 	\end{itemize}
  %Kurz auf jede einzelne Idee eingehen und sagen warum wir uns gegen sie entschieden bzw. für die Kamera entschieden haben, später als Note hinzufügen bitte!
 \end{frame}
-\begin{frame}\frametitle{Demonstration}
+\begin{frame}\frametitle{Der Plan...}
 	\begin{itemize}
 		\item Erstens: Ansteuerung einer Kamera \"uber das Board
 		\begin{itemize}
@@ -277,17 +289,59 @@
 		\begin{itemize}
 			\item Prototypisch implementiert, abseits vom Board
 			\item Analyse von Bildern der Board-Kamera
-			\item Drei m\"ogliche Ans\"atze zur Erkennung von Abl\"osen
+			\item Mehrere m\"ogliche Ans\"atze zur Erkennung von Abl\"osen
 		\end{itemize}
 	\end{itemize}
 \end{frame}
+\begin{frame}\frametitle{Die Realit\"at...}
+	\begin{itemize}
+		\item Sehr viel Zeit mit Problemen des eigentlichen Druckers verloren
+		\item Kamera nur fast fertig implementiert... sehr knapp am Ziel
+		\item Theoretische \"Uberlegungen f\"ur Ans\"atze zur Erkennung, aber keine M\"oglichkeit sie auszuprobieren
+	\end{itemize}
+	$\Rightarrow$ Daher hier nur eine \"Ubersicht \"uber die m\"ogliche Implementierung der Abl\"oseerkennung...
+\end{frame}
 \begin{frame}\frametitle{Ansteuern}
 	\begin{itemize}
 		\item Board als Taktgeber, Pixel Clock zur\"uck
-		\item Bytes parallel auf 8 Pins ablesbar (optimal direkt vom Register)
+		\item Bytes parallel auf 8 Pins ablesbar
 		\item Konfiguration \"uber SCCB, Aufl\"osung und Pixelrate einstellbar
 	\end{itemize}
 \end{frame}
+\begin{frame}\frametitle{Implementierung}
+	\begin{itemize}
+		\item Interrupt Handler auf Pin der Pixel Clock
+		\item Hardware-Register f\"ur Port D auslesen, Bitmaske und Shiften
+		\item Direkt in Buffer schreiben (176 x 144 x 2 Bytes gro{\ss})
+		\item Bei VSync-Signal: zur\"uck an erste Position, Flag setzen
+		\item Lese-Thread kann gesamten Buffer auf dem seriellen Port ausgeben
+	\end{itemize}
+	$\Rightarrow$ Wir haben eine Zeile des Bildes gelesen!
+\end{frame}
+\begin{frame}\frametitle{Abl\"oseerkennung 1: Von oben}
+	\center{\includegraphics[width=0.3\textwidth]{img/abloese_1_1.png}\includegraphics[width=0.3\textwidth]{img/abloese_1_2.png}\includegraphics[width=0.3\textwidth]{img/abloese_1_3.png}}
+	\begin{itemize}
+		\item Pr\"ufen der unteren Kante des Druckobjekts
+		\item Mit G-Code: Bewegungen der ersten Schicht auslesen, transformieren, entlang dieser Verbindungen pr\"ufen (innere Verbindungen k\"onnen entfernt werden)
+		\item Ohne G-Code: Unterste Pixel jeder Spalte erkennen, in denen Filament liegt, und periodisch pr\"ufen
+	\end{itemize}
+\end{frame}
+\begin{frame}\frametitle{Abl\"oseerkennung 2: Von unten}
+	\center{\includegraphics[width=0.3\textwidth]{img/abloese_2_1.png}\includegraphics[width=0.3\textwidth]{img/abloese_2_2.png}\includegraphics[width=0.3\textwidth]{img/abloese_2_3.png}}
+	\begin{itemize}
+		\item Je nach Lichtdurchl\"assigkeit des Materials -- Lichtquelle \"uber Druckobjekt beleuchtet die Buildarea, das Licht sollte nicht dort zur Kamera durchdringen wo Filament liegen soll
+		\item Mit G-Code: Fl\"ache der ersten Schicht auslesen, hier muss Filament liegen -- kein direktes Licht
+		\item Ohne G-Code: Nach der ersten Schicht bedruckte Fl\"ache erkennen, erkannte Pixel d\"urfen nur noch dunkler werden
+	\end{itemize}
+\end{frame}
+\begin{frame}\frametitle{// TODO: Abl\"oseerkennung}
+	Einige Probleme noch nicht behandelt:
+	\begin{itemize}
+		\item Wie wird Filament erkannt? Farbe einstellen?
+		\item Wo muss die Kamera montiert werden? Beeinflusst das Wackeln die Bildanalyse?
+		\item Auf dem Board? Extern \"uber das Hostsystem?
+	\end{itemize}
+\end{frame}
 
 
 \section{Budget}
@@ -329,12 +383,11 @@ Ein kurzer Auszug aus unserem Budgetplan...
 \section{R\"uckblick}
 \begin{frame}\frametitle{R\"uckblick und Erkenntnisse}
 	\begin{itemize}
-		\item Fr\"uher Anfangen!
-		\item Bauteile aus China sind nicht immer zuverl\"assig!
+		\item Die Teile fr\"uher zusammen testen
+		\item Bauteile aus China sind nicht immer zuverl\"assig
 		\item Firmware kann man selber schreiben
 		\item Sehr zeitaufw\"andig
 		\item L\"osung eines Problems f\"uhrt zu einem neuen Problem
-		\item Implementierung der Kamera war keine gute Idee, lieber Lichtschranke, da simpler (oder bessere Kamera)
 	\end{itemize}
 \end{frame}
 \begin{frame}\frametitle{Was haben wir gelernt in dieser Veranstaltung?}