Nach dem Flashen kann man die eMMC vom Computer trennen und an das ODROID anschließen.
Dann wählt man das Ubuntu Image und die eMMC aus. Dann führt Etcher den Flashvorgang inklusive Validierung durch. Dann ist es möglich, vom Computer aus auf das Dateisystem auf der eMMC zuzugreifen. Skripte oder andere Dateien, die man zur Einrichtung des ODROIDs benötigt oder die die Einrichtung erleichtern, kann man also schon an dieser Stelle auf die eMMC übertragen.
Anschließend kann man die eMMC vom Computer trennen und an das ODROID anschließen.
Dann sollte es booten.
Standardmäßig kann man sich mit dem Nutzernamen \textit{root} und dem Passwort \textit{odroid} anmelden.
Um das Passwort zu ändern, führt man den folgenden Befehl aus: \lstinline{sudo passwd}.
Um das Passwort zu ändern, führt man den folgenden Befehl aus: \lstinline{sudo passwd}. Für das Semesterprojekt lautet das Passwort bei jedem fertig eingerichteten ODROID \glqq autonom1718\grqq.
\subsection{WLAN (eduroam)}
Um eine WLAN-Verbindung herzustellen, benötigt man einen WLAN-Stickn oder ein WLAN-Modul. Wir gehen an dieser Stelle davon aus, dass diese nach dem Plug-and-Play-Prinzip funktionieren und hier keine Einrichtung nötig ist.
Um eine WLAN-Verbindung herzustellen, benötigt man einen WLAN-Stick oder ein WLAN-Modul. Wir gehen an dieser Stelle davon aus, dass diese nach dem Plug-and-Play-Prinzip funktionieren und hier keine Einrichtung nötig ist.
Man kann mittels \lstinline{ifconfig} und \lstinline{iwconfig} überprüfen, ob die WLAN-Schnittstelle vorhanden ist und wie sie heißt. Wir gehen von nun an davon aus, dass die Schnittstelle \textit{wlan0} heißt. Andernfalls muss man den Namen der Schnittstelle im Folgenden immer anpassen.
Der herkömmliche Weg, wie man sich mit einem WLAN-Netzwerk verbindet:
\begin{enumerate}
\item Mittels \lstinline{ifconfig wlan0} die WLAN-Karte anschalten.
\item Mittels \lstinline{ifconfig wlan0 up} die WLAN-Karte anschalten.
\item Mit \lstinline{iwconfig wlan0 essid name key password} mit dem Netzwerk verbinden. Ersetze \textit{name} dem Namen des Netzwerks, \textit{password} mit dem Sicherheitsschlüssel des Netzwerks.
\item Mit \lstinline{dhclient wlan0} eine IP Adresse erhalten und mit dem WLAN- Netzwerk verbinden.
\end{enumerate}
Die WLAN-Verbindung kann man mittels \lstinline{iwconfig}oder\lstinline{ping www.hu-berlin.de} überprüfen.
Die WLAN-Verbindung kann man mittels \lstinline{iwconfig}und\lstinline{ping www.hu-berlin.de} überprüfen.
Um sich mit dem eduroam zu verbinden, sind andere Schritte nötigt. Die Einrichtung wird in der folgenden Anleitung ausführlich beschrieben:
...
...
@@ -73,24 +74,23 @@ Für die Einrichtung sind zwei Dateien nötig:
Am besten lädt man diese mittels \lstinline{curl} oder \lstinline{wget} vorher mit einer WLAN-Verbindung zu Hause oder via Hotspot herunter. Z.B.:
Am besten lädt man diese Dateien mit einem anderen Computer herunter und kopiert diese (z.B. nach dem Flashvorgang) auf das ODROID. Ansonsten kann man die Dateien auf einen USB-Stick kopieren und diese auf das ODROID übertragen. Um auf den USB-Stick zuzugreifen, führt man folgende Schritte durch:
\begin{enumerate}
\item Mit \lstinline{lsblk} herausfinden, wie der USB-Stick heißt. Die Partition sollte in etwa so aussehen wie \lstinline{/dev/sdb1}.
\item Mit \lstinline{sudo mkdir /media/usb} einen Mount Point (Einhängepunkt) erstellen.
\item Mit \lstinline{sudo mount /dev/sdb1 /media/usb} mounten. Über den Ordner \lstinline{/media/usb} kann man nun auf die Dateien im USB-Stick zugreifen.
\item Mit \lstinline{sudo umount /media/usb} unmounten, wenn man nicht mehr länger auf den USB-Stick zugreifen will.
\end{enumerate}
Alternativ lädt man die Dateien mittels \lstinline{curl} oder \lstinline{wget} vorher mit einer WLAN-Verbindung zu Hause oder via Hotspot herunter. Z.B.:
Alternativ lädt man diese Dateien mit einem anderen Computer herunter und kopiert diese (z.B. nach dem Flashvorgang) auf das ODROID. Ansonsten kann man die Dateien auf einen USB-Stick kopieren und diese auf das ODROID übertragen. Dazu führt man folgende Schritte durch:
\begin{enumerate}
\item Mit \lstinline{lsblk} herausfinden, wie der USB-Stick heißt. Die Partition sollte in etwa so aussehen wie \lstinline{/dev/sdb1}.
\item Mit \lstinline{sudo mkdir /media/usb} einen Mount Point (Einhängepunkt) erstellen.
\item Mit \lstinline{sudo mount /dev/sdb1 /media/usb} mounten.
\item Mit
In jedem Fall muss man die zwei Dateien in den \lstinline{/etc/wpa_supplicant} Ordner bewegen (oder mit \lstinline{cp} kopieren). Dabei muss \lstinline{/path/to} durch den entsprechenden Pfad zu den Dateien ersetzt werden.
die beiden Dateien in den \lstinline{/etc/wpa_supplicant} Ordner bewegen (oder mit \lstinline{cp} kopieren). Dabei muss \lstinline{/path/to} durch den entsprechenden Pfad zu den Dateien ersetzt werden.
\item Mit \lstinline{sudo umount /media/usb} unmounten.
\end{enumerate}
Nun muss man \lstinline{wpa_supplicant.conf} bearbeiten. Am einfachsten ist es, diese Datei schon vorher auf einem Computer zu bearbeiten. Ansonsten muss man \lstinline{vi /etc/wpa_supplicant/wpa_supplicant.conf} ausführen. Außer \lstinline{vi} ist standardmäßig kein anderer Editor auf dem ODROID installiert. Ansonsten kann man sich schon vorher via Hotspot oder zu Hause mittels \lstinline{sudo apt install vim} den Editor \lstinline{vim} installieren. Hier ist eine Anleitung, wie man \lstinline{vi} verwendet: \url{https://www.suse.com/de-de/documentation/sles10/book_sle_reference/data/sec.suse.vim.html}.
In der \lstinline{wpa_supplicant.conf} muss man \textit{YourNameHere} durch die HU E-Mail Adresse ersetzen, also etwas wie \textit{foobar@informatik.hu-berlin.de}. \textit{YourPasswordHere} kann man durch das entsprechende Passwort ersetzen. Allerdings steht das Passwort in der Datei als Klartext und ist für jeden sichtbar, der auf die Datei als root User zugreifen kann. Alternativ kann man die Passwortzeile löschen oder auskommentieren. Dann muss man das Passwort jedes Mal eingeben, wenn man sich mit eduroam verbinden will.
Beim nächsten Hochfahren des ODROIDs muss man, falls die Passwortzeile gelöscht wurde, den Befehl \lstinline{sudo wpa_cli} ausführen und wie zuvor beschrieben das Passwort eingeben, um sich mit dem eduroam zu verbinden.
Nun ist es möglich, das ODROID per \lstinline{ssh} zu steuern. Die IP-Adresse des ODROIDs erfährt man mit \lstinline{ifconfig wlan0}. Anschließend kann man sich mit \lstinline{ssh root@10.42.43.1} verbinden. Die IP-Adresse muss hier entsprechend angepasst werden. Mit \lstinline{scp} ist es außerdem möglich, Daten zu übertragen.
Nun da das ODROID eine Internetverbindung hat, sollte man es updaten: \lstinline{sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade}
...
...
@@ -128,10 +131,9 @@ Beim Klonen, Pullen, Pushen usw. wird jedes Mal der Nutzername und das Passwort
\subsection{ROS}
Für das Semesterprojekt wird ROS (Robot Operating System) verwendet. Konkret wird die ROS Version Lunar Loggerhead verwendet. Eine ausführliche Anleitung zur Installation gibt es hier: \url{http://wiki.ros.org/lunar/Installation/Ubuntu}
Um sich die Arbeit etwas einfacher zu machen, sollte man das ODROID mit dem eduroam verbinden und diesen dann mit einem normalen Computer (mit GUI und eduroam-Verbindung) per \lstinline{ssh} steuern. Dann ist es möglich, die Befehle der Anleitung zu kopieren und einzufügen, statt diese manuell einzutippen. Die IP-Adresse des ODROIDs erfährt man mit \lstinline{ifconfig wlan0}. Anschließend kann man sich mit \lstinline{ssh root@10.42.43.1} verbinden. Die IP-Adresse muss hier entsprechend angepasst werden. Mit \lstinline{scp} ist es außerdem möglich, Daten zu übertragen.
Es empfiehlt sich, vorher auf einem Computer (mit GUI und Browser) ein Skript mit den folgenden Befehlen vorzubereiten und dieses Skript auf auf das ODROID zu kopieren, damit man dieses nur noch ausführen muss. Ansonsten muss man die Befehle manuell eintippen.
\begin{enumerate}
\item Den ODROID so einstellen, dass er Software von packags.ros.org akzeptiert:\\
\item Das ODROID so einstellen, dass er Software von packags.ros.org akzeptiert:\\
@@ -171,7 +173,7 @@ Mit \lstinline{iwconfig} kann man überprüfen, ob alles funktioniert hat.
Mit dem Skript wird ein AdHoc Netzwerk mit dem Namen \textit{SPHAF} (SemesterProjekt HochAutonomes Fahren) auf dem Kanal 5 erstellt und das ODROID erhält die IP-Adresse 10.42.43.1. Für jeden Teilnehmer führt man das Skript durch. Dabei sollte jeder Teilnehmer am AdHoc Netzwerk eine eigene IP-Adresse erhalten. Die letzte Zeile sollte also für jeden Teilnehmer angepasst werden.
Nun kann man mit \lstinline{crontab} (\url{https://wiki.ubuntuusers.de/Cron/}) einstellen, dass das Skript jedes Mal direkt beim Neustart (vor dem Login-Vorgang) ausgeführt wird. Dies ist insbesondere dann hilfreich, wenn das ODROID auf dem Auto montiert ist und keine Tastatur angeschlossen ist.
Dazu muss man nun \lstinline{crontab -e} ausführen und die folgende Zeile einfügen: \lstinline{@reboot /root/connectAdHoc}.
Dazu muss man nun \lstinline{crontab -e} ausführen und die folgende Zeile einfügen: \lstinline{@reboot /root/connectAdHoc.sh}. Eventuell ist noch folgender Schritt nötig, um crond automatisch beim Hochfahren zu starten: \lstinline{update-rc.d cron defaults}.
Falls das AdHoc Netzwerk steht, kann man sich mittels \lstinline{ssh root@10.42.43.1} mit dem ODROID verbinden.