Skip to content

Software2

Nikolai Radke edited this page Apr 15, 2016 · 52 revisions

NOKOs Software 2 - optionale Erweiterungen

Soll NOKO Hörspiele und ein externes EEPROM für weitere Textausgaben bekommen, müssen diese Elemente vorbereitet werden.

Hinweis: Diese Schritte können auch zu einem späteren Zeitpunkt nachgeholt werden.

Hörspiele

Bis zu 95 Hörspiele können mit Titel- und Autorenbeschreibung sowie der Spieldauer individuell ausgewählt und eingebunden werden. Mehr Kapazität hat das AH24C32-EEPROM auf der Platine der Echtzeituhr nicht. Wem das nicht reicht, der kann weitere Hörspiele in den Ordner MP3 kopieren und unter Eigenes hören (siehe Anleitung) hören. Dabei muss auf die korrekte Beschreibung dieser Hörspiele verzichtet werden.

In diesem Repository sind die Texte für 40 vorgeschlagene Freeware-Hörspiele vorhanden, die, wie im Kapitel vorher vorgeschlagen, hier heruntergeladen werden können. Wer sich mit dieser ganz erlesenen Auswahl der Hörspiele zufrieden gibt, braucht nichts weiter zu verändern. Eine Liste der vorgeschlagenen Hörspiele befindet sich am Ende dieses Kapitels.

Die Angaben zu den Hörspielen sind als 2x20 Zeichen-Blöcke in der Datei Disk0 im Verzeichnis NOKO > write_eeprom untergebracht.

Disk0, NOKO_EEPROM_Disk0.ino und write_Disk0

Jedem Hörspiel stehen nun 20 Zeichen für den Titel und weitere 20 Zeichen für den Autoren zur Verfügung. Es müssen genau 20 sein, nicht benötigte Zeichen werden durch Leerzeichen ersetzt. Nach den 20 Zeichen folgt sogleich der nächste Eintrag, ohne Return. Die Datei ist sozusagen eine einzige lange Zeichenkette.

Die Datei kann nun mit weiteren Einträgen ergänzt oder auch komplett ersetzt werden. Dazu wird ein (vernünftiger!) Editor benötigt. Immer abwechselnd Titel und Autoren eintragen und die Anzahl der Hörspiele mitzählen. Speichern.

Disk0 ist somit vorbereitet. Um die Texte in das EEPROM zu brennen, muss zunächst der Sketch NOKO_EEPROM_Disk0.ino auf den Arduino geladen werden. Diese Datei muss, sofern die Anzahl der Hörspiele geändert wurde, in folgender Weise angepasst werden:

// Number of Stories
const byte geschichten=40; // Max 95

Darüber hinaus müssen die Spiellängen der einzelnen Hörspiele eingegeben werden:

// Length of stories - mm:ss
const byte laenge[]={53,6, 45,6, 53,23,...

Jeweils zwei Zahlen beschreiben die Spieldauer der Hörspiele. Die erste Zahl enthält die Minuten, die zweite die Sekunden. In der Datei sind bereits die Daten für die 40 vorausgewählten Hörspiele eingetragen.

Der Datentransfer erfolgt plattformabhängig. Die Hilfsprogramme wurden für x86_64-Systeme kompilliert. der Quellcode ist im selben Verzeichnis zu finden.

Linux (64Bit):

  1. Ein Terminal öffnen.

  2. Um mit dem Arduino über eine serielle USB-Verbindung zu kommunizieren, muss der Benutzer in der Gruppe Dialout sein. Das muss einmalig mit folgendem Befehl festgelegt werden:
    sudo usermod -aG dialout $(whoami)

  3. Für die Verbindung müssen noch Parameter wie folgt gesetzt werden:
    stty -F /dev/ttyUSB0 cs8 9600 ignbrk -brkint -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts
    Möglicherweise ist NOKO an einem anderen USB-Port verbunden. Das kann leicht unter Werkzeuge > Ports herausgefunden werden. Ggf. muss also /dev/ttyUSB0 durch /dev/ttyUSB1 o.ä. ersetzt werden.

  4. In das Verzeichnis /NOKO/write_eeprom wechseln.

  5. Die Datei Disk0 wird nun mit dem Kommando ./write_Disk0 > /dev/ttyUSB0 in das EEPROM geschrieben. Dabei sollten die RX- und TX-LED das Arduinos hektisch blinken. Nach einer kurzen Weile ist das Programm beendet und das EEPROM beschrieben.

Windows:

  1. Eine Kommandozeile öffnen. Dazu Start drücken und in das Textfeld cmd eingeben und mit Return bestätigen.

  2. In das Verzeichnis /NOKO/write_eeprom wechseln.

  3. Die Datei Disk0 nun mit dem Kommando
    write_Disk0 > COM1 schreiben lassen. Möglicherweise ist NOKO an einem anderen USB-Port verbunden. Das kann leicht unter Werkzeuge > Ports herausgefunden werden. Ggf. muss also COM1 durch COM2 o.ä. ersetzt werden. Wird das Programm nun gestartet, sollten die RX- und TX-LED das Arduinos hektisch blinken. Nach einer kurzen Weile ist das Programm beendet und das EEPROM beschrieben.

###SD-Karte

Das EEPROM ist jetzt vorbereitet. Die Hörspiele müssen sich im Verzeichnis 001 befinden und die Namen 112.mp3 bis maximal 207.mp3 tragen. Kopierreihenfolge beachten!

###NOKO.ino Zuletzt wird die eigentliche Software angepasst. Wurden die Hörspiele zuvor in der Zeile #define def_stories 1 // Stories on SD card?
mit // auskommentiert, müssen diese Schrägstriche nun wieder entfernt werden.

Externes EEPROM

Im 24LC256-EEPROM befinden sich Texte, die NOKO ab und an auf seinem Display ausgibt. Diese nehmen etwa 20kb von 32kb in Anspruch. Hier ist also noch Luft nach oben. NOKO kennst vier verschiedene Inhalte:

  • Schimpfwortgenerator mit 100 * 100 * 100 (männlich) + 100 (weiblich) = 2.000.000 Varianten.
  • 26 Alle Kinder...-Gedichte (von A-Z).
  • 100 Wusstest Du schon, dass...-Phrasen.
  • 100 Zitate. Leider ohne Quelle. Aus Platzgründen auf dem Display. Schande über mich.

Disk1, NOKO_Disk1.ino und write_Disk1

Analog zu den Hörspielen liegen die Daten in der Datei Disk1. Wer mag, kann meine Texte übernehmen oder einfach neue schreiben. Auch hier gilt: Disk1 ist eine einzige lange Zeichenkette, Leerzeichen müssen gesetzt werden, die Return-Taste ist tabu. Die einzelnen Blöcke befinden sich wie folgt in der Datei:

  • 0000-3999 für den Schimpfwortgenerator:
    0000-0999 10 Zeichen für ein Adjektiv. Ist es männlich, wird ein "r" angehängt.
    1000-1999 10 Zeichen für den ersten Teil des Nomens.
    2000-2999 10 Zeichen für ein männliches Nomen.
    3000-3999 10 Zeichen für ein weibliches Nomen.

  • 4000-9999 für die Phrasen:
    Da jede Phrase mit Wusstest Du schon, dass... beginnt, sind es hier 3x20 Zeichen.

  • 10000-17999 für die Zitate:
    NOKO tut intellektuell. Auf 4x20 Zeichen.

  • 18000-20079 für die Gedichte:
    Auch hier wieder 4x20 Zeichen. Seid lyrisch!

Wenn es weniger Elemente sein sollen, müssen entsprechend die Startadressen in NOKO.ino angepasst werden. Momentan benötigt der Schimpfwortgenerator 4000 Zeichen, daher ist die Phrasenadresse immer bei 4000. Die Adressen für Zitate und Gedichte müssen also in Zeile 95 und 96 angepasst werden.

Um die Texte auf das EEPROM zu brennen, wird analog zu den Hörspielen vorgegangen, siehe oben. Der passende Skech ist NOKO_Disk1.ino, Das Kommando für die Hilfsprogramme heißt entsprechend
./write_Disk1 > ttyUSB0 bzw. write_Disk1 > COM1.
Das Brennen dauert ca. 20 Minuten. Geduld. EEPROMs sind langsam.

###NOKO.ino Auch hier wird die eigentliche Software angepasst. Wurde das EEPROM zuvor in der Zeile
#define def_external_eeprom 1 // Using external EEPROM?
mit // auskommentiert, müssen diese Schrägstriche nun wieder entfernt werden.

##Die Software ist fertig Nun kann NOKO.ino auf den Arduino aufgespielt werden. Der Bau kann beginnen! Weiter geht es mit der Bauanleitung.

Liste der Hörspiele

Diese Hörspiele sind Freeware und können frei in meinem Google Drive heruntergeladen werden (1.7 GB).

Datei Autor Titel
112.mp3 Tatort 13
113.mp3 Tatort Anatomie des Todes
114.mp3 Tatort Autsystem
115.mp3 Tatort Calibra
116.mp3 Tatort Currykill
117.mp3 Tatort Dancing Queen
118.mp3 Tatort Das grüne Zimmer
119.mp3 Tatort Die Katze des Libanesen
120.mp3 Tatort Exit
121.mp3 Tatort Geisterstunde
122.mp3 Tatort Grauzone
123.mp3 Tatort Kurschatten
124.mp3 Tatort Malina
125.mp3 Tatort Stand der Dinge
126.mp3 Tatort Totentanz
127.mp3 Tatort Wallfahrt
128.mp3 Tatort Wasser bis zum Hals
129.mp3 Tatort Wilde Tiere
130.mp3 Tatort Winterliebe
131.mp3 Tobias Steinfeld 25
132.mp3 Cornelia Funke Herr der Diebe 1
133.mp3 Cornelia Funke Herr der Diebe 2
134.mp3 Cornelia Funke Herr der Diebe 3
135.mp3 Christoph Buggert Der blaue Vogel
136.mp3 Claudia Weber Der Schneekugelmacher
137.mp3 Die Fallers Junggesellenabschied
138.mp3 Eugen Egner Olga La Fong
139.mp3 Frederico Jeanmaire Leichter als Luft
140.mp3 Herbert Beckmann Kickback
141.mp3 Holger Boehme Der Kormoran
142.mp3 Jens Rachut Da oben ist es voll
143.mp3 Mariann Kaiser Ferienwohnungen für Vögel
144.mp3 Paul Barz Bombenrolle
145.mp3 Rainer Puchert Mondgelichter
146.mp3 Rainer Schildberger Ich bin Du
147.mp3 Rainer Schildberger Nervenkostüm
148.mp3 Richard Faber Dracula und der Nerd
149.mp3 Schröppel/Karau Conan Baby
150.mp3 Stefan Ripplinger Die Gräber leeren sich
151.mp3 Stuart Kummer 300% und die Scheiße mit dem Schulgarten