Häufige Fragen und Probleme (frequently asked questions, FAQ)

# Ich kann mich im Windows-CIP nicht anmelden!

- Dann ab in den Linux-CIP, dort anmelden, ein Terminalfenster starten und den Befehl `cip-set-windows-password` ausführen
- Du musst dir für den Windows-CIP ein neues Passwort ausdenken - Kriterien für ein gutes Passwort sind
  - Mindestens 8 Zeichen, besser 10
  - Mindestens 3 Zeichensorten, besser 4 (Groß-, Kleinbuchstaben, Zahlen, Sonderzeichen)
  - Keine Wörterbuchwörter, Namen, Login, etc.
- Tipp: Du kann dir auch mit Hilfe von `pwgen -s 12` in einem Terminal ein Passwort vorschlagen lassen!

# Ich habe überhaupt keinen Login für den CIP (oder Passwort vergessen)

- Da können dir die (G)SPiC-Betreuer leider nicht helfen, du brauchst einen Termin bei den CIP-Admins. (Ehrlich. Wir haben dafür nicht die erforderlichen Berechtigungen.)
- Sprechstundentermine sind auf der Webseite unter wwwcip.cs.fau.de vermerkt.
- Wenn du dein Passwort zum fünften Mal vergessen hast, bring am besten eine Club Mate als milde Gabe für die CIP-Admins mit.

# Ich hab mein Windows-CIP Passwort vergessen

- Hoffentlich weißt du noch dein Passwort für den Linux-CIP - denn dann verfahre wie bei Ich kann mich im Windows-CIP nicht anmelden!
- Falls du das Passwort auch nicht weißt, musst du zu den CIP-Admins, siehe Ich habe überhaupt keinen Login für den CIP (oder Passwort vergessen)

# Wie erstelle ich ein neues Projekt?

- Atmel Studio 7 starten, über File / New auf den Menüpunkt Project... navigieren
- Im nun erscheinenden Fenster New Project muss unsere `SPiCboard Projekt` Vorlage ausgewählt werden.
- Der Projektname kann für eigene Hobbyprojekte beliebig gewählt werden, für Abgaben muss es jedoch `aufgabe` und die jeweilige Aufgabennummer sein.
- Als Location muss im CIP-Pool das Laufwerk `Q:\` gewählt werden, am Heimrechner sollte das aktuelle Verzeichnis (oder ein Unterordner) gewählt werden, da die Projekte i.d.R. die "libspicboard" brauchen, und diese im dann Verzeichnis gesucht werden.
- Bei Create directory for solution sollte kein Haken sein.

# Wie ändere ich den Quelltext-Dateinamen?

- Falls nicht bereits vorhanden, blende den Solution Explorer über den Menüpunkt View ein.
- Rechtsklick auf die zu ändernde Datei (meist `main.c`) und Rename auswählen. Nun kann der Name geändert werden.

# Hilfe, ich bekomme eine "Launch Failed" Fehlermeldung

- Erstmal: Keine Panik, hinsetzen und ruhig durchatmen. Diese wenig hilfreiche Fehlermeldung weißt euch meist darauf hin, dass ihr in eurem Projekt kein SPiCboard ausgewählt habt.
- Stellt sicher, dass euer SPiCboard angeschlossen ist (und Windows die Treiber installiert hat). Zudem muss der Solution Explorer aktiviert sein (kann über das Menü View aktiviert werden).
- Klickt im Solution Explorer mit der rechten Maustaste auf euer Projekt (normalerweise aufgabeX) und wählt Properties (letzter Menüpunkt) aus.
- In der neuen Ansicht den Reiter Tool auswählen und in "Selected debugger/programmer" das SPiCboard mit der Bezeichnung "mEDBG ATML252304..." aktivieren (das Ende entspricht der Seriennummer, die auch auf der Rückseite des SPiCboards steht).
- Sollte hier nur Simulator und Custom Programming Tool stehen, so ist euer SPiCboard entweder nicht angeschlossen, oder ihr habt Verbindungs- bzw. Treiberprobleme. Im CIP-Pool bitte folgendermaßen vorgehen:
  - Zuerst einen anderen USB-Port am PC wählen und überprüfen, ob Windows beim einstecken eine neue Hardware erkennt (entsprechend etwas warten, Windows allein ist schon langsam, auf den CIP-Rechner dauerts erst recht lange).
  - Falls das nicht funktioniert, ein anderes USB-Kabel und anschließend ebenfalls ein anderes SPiCboard probieren (sollte das Problem nun gelöst sein, gebt bitte das defekte Kabel oder SPiCbaord den Betreuer, wir werden es nach Möglichkeit wieder reparieren)
  - Solltet ihr immer noch kein Glück gehabt haben, versucht einen anderen PC
  - Letzte Eskalationsstufe: Ihr dürft euch nun mit verzweifelten Gesicht an den nächsten Betreuer wenden.

# Wie kann ich eine Musterlösung auf mein SPiCboard übertragen?

- Im Verzeichnis `P:\` liegen zu jeder Aufgabe Lösungen.
- Verbindet das SPiCboard mit dem PC (und wartet ggf. die Treiberinstallation ab), führt im Anschluß `flash.bat` aus (Doppelklick)
- Sobald das Konsolenfenster wieder verschwindet sollte die Musterlösung übertragen sein.

# Der Compiler meckert "undefined reference to main()", obwohl du eine main()-Methode definiert hast.

- Verschiebe die Hauptquelldatei (z. B. `blink.c`) rechts im Solution Explorer direkt unter den Projektknoten (z. B. `aufgabe0`). Dann nochmal neu kompilieren.

# AVR Studio meckert, dass die Firmware des Debuggers nicht aktuell ist.

- Die Firmware durch den angebotenen Dialog des AVR Studio updaten lassen.

# Im Project-Menü erscheint kein Punkt "Add File".

- Vorher rechts den Solution Explorer auswählen.

# Das Laufwerk P: und/oder das Laufwerk Q: werden im Windows Explorer nicht angezeigt.

- Am einfachsten: ausloggen und nochmal einloggen
- Alternativ (für Fortgeschrittene): im Windows Explorer für...
  - ... GSPiC manuell die Freigabe `\\faui03\i4gspicpub` auf `P:\` mounten bzw. die Freigabe `\\faui03\i4gspichome` auf `Q:\` mounten
  - ... SPiC manuell die Freigabe `\\faui03\i4spicpub` auf `P:\` mounten bzw. die Freigabe `\\faui03\i4spichome` auf `Q:\` mounten

# Wie kann ich abgeben?

- Vorweg: Bei Zweiergruppen darf nur ein Partner abgeben!
- Die Abgabe geht unter einer Linux-Umgebung per Remote Login, dazu im Windows Startmenü auf Alle Programme und PuTTY, dort PuTTY starten.
  - zum Verbinden den Host Name: `faui0sr0` (bzw. von Zuhause `faui0sr0.cs.fau.de`) eingeben und auf Open klicken
  - ggf PuTTY Security Alert mit Ja bestätigen
  - Login mit Benutzername und Linux-Passwort
- Im erscheinenden Terminal-Fenster folgendes Kommando ausführen (aufgabeX natürlich entsprechend ersetzen): `/proj/i4gspic/bin/submit aufgabeX` bzw `/proj/i4spic/bin/submit aufgabeX`
- Wichtig: Grüner Text signalisiert erfolgreiche Abgabe, roter Text einen Fehler!

# Ich konnte nicht rechtzeitig abgeben...

- Pech?! Wenn du nicht einen wirklich guten Grund hast (z.B. nachweislich einen Krankenhausaufenthalt), dann solltest du dich mit 0 Punkte anfreunden.
- Sofern du Probleme mit dem Abgabesystem hast, die sich nicht durch diese FAQ lösen lassen, gib uns rechtzeitig Bescheid - nicht erst fünf Minuten vor Abgabeende.
- Dein PC/Internet zu Hause war schuld? Dafür können wir nichts. Sofern der CIP nicht in Flammen steht, ist dieser der einzige von uns offiziell unterstützte Ort für die Übungsaufgaben. Wenn er in Flammen steht, dann werden wir aber die Abgabezeitpunkte anpassen (Abgaben von Leute, die den Windows-CIP absichtlich oder fahrlässig in Flammen setzen werden ebenfalls nicht gewertet!)
- Tipp: Du kannst auch mehrmals abgeben. Z.B. das erste Mal, wenn die Aufgabe grob gelöst ist, und ein zweites Mal wenn du alle Fehler bereinigt hast. Wir bewerten nur die letzte Abgabe vor der Abgabefrist.

# Ich habe Probleme bei der Abgabe...

- Für das Skript ist der korrekte Pfad (/proj/i4spic vs /proj/i4gspic) und der korrekte Parameter (Groß-/Kleinschreibung!) nötig.
- Liegen die Dateien im richtigen Ordner? Schema `Q:\aufgabeX\datei.c` (aufgabeX mit kleinem "a"!)
- Entspricht der c-Dateiname der Vorgaben in der Aufgabe? (also nicht mehr `main.c`)

# Ich Probleme beim Setzen des Windows-CIP-Passworts (z. B. Permission Denied beim Versuch, das Profil ~/WINDOWS zu erstellen).

- Korrekte Rechte im Home-Verzeichnis des Studenten, z. B. durch `chmod 700 ~/`.