Anleitung für den Bau eines leistungsstarken Generators für echte Zufallszahlen aus RaspBerry Pi 2 und Raspicam 1
Diese Bauanleitung ist noch im Beta-Stadium. Feedback ist sehr willkommen.
mechanische Vorbereitung
- Raspicam anschliessen
- Ein altes 40 poliges IDE-Kabel auf die Gpio-Schnittstelle stecken.
- Einen 100 Ohm Widerstand an die Kathode einer weißen LED löten. Mit 100 Ohm ist man auf der sicheren Seite. Und man kann am Spannungsabfall am Widerstand einfach den Strom ermitteln. 350 mV Spannungsabfall übersetzt sich zu 3,5 mA
- Um versehentliche Kurzschlüsse zu vermeiden die Kathode mit Isolierschlauch schützen.
- LED so in das offene Ende des 40 poligen IDE-Kabels aufstecken, dass die Anode in Nr. 12 steckt, und der Widerstand in Nr. 14 (siehe Foto unten) Bitte den Markierungspfeil links oben auf der Steckerleiste beachten, der Pin 1 markiert. Die untere Kontaktreihe beginnt also mit Pin 2,4,6 etc.)
- Aus einem Styroporrest einen Diffusor so schnitzen, dass hinter dem Loch für die LED noch eine Stärke von ca. 4 mm verbleibt. (siehe Foto unten)
Software
- RaspBerry Pi aufsetzen (oder aktualisieren). Diese Anleitung bezieht sich auf die Revision 2. Mit Revision 1 geht das grundsätzlich auch, habe ich allerdings schon länger nicht getestet. Mit Revision 3 geht es leider nicht mehr. (RASPBIAN JESSIE, Release date: 2016-02-09 https://www.raspberrypi.org/downloads/raspbian/ https://www.raspberrypi.org/documentation/installation/installing-images/mac.md (Befehls-Beispiel um das image auf die SD-Karte zu bringen: sudo dd bs=1m if=2016-02-09-raspbian-jessie.img of=/dev/rdisk3)
- unter der graphischen Oberfläche unter Einstellungen/Raspberry Pi Configuration/Interfaces die Kamera aktivieren und unter Einstellungen/Raspberry Pi Configuration/Localisation passende Werte für Sprache, Zeitzone und Tastatur eingeben Rechts oben das Netzwerksymbol anklicken, WLAN auswählen und den Key eingeben
- „dtparam=i2c_vc=on“ zu /boot/config.txt hinzufügen, um Kanal 0 des I2C-Bus, an dem die Kamera hängt, zugreifbar zu machen (Befehls-Beispiel um den Editor zu starten: sudo nano /boot/config.txt )
- Kommandozeilenaufruf (im homeverzeichnis):
wget -q -O – http://intere55ant3szeug.felixluebeck.de/zufallszahlen.tar.gz | tar xvzf –
Das bewirkt Download und Entpacken (ins homeverzeichnis) von „http://intere55ant3szeug.felixluebeck.de/zufallszahlen.tar.gz“ - Einmalig zur Installation „zufallszahlen/installationsskript“ ausführen.
- Nach jedem Booten „zufallszahlen/einschaltskript“ ausführen. Unter anderem schaltet das die weiße LED an. Diese sollte jetzt durch den Diffusor auf die Kamera zielen (siehe Foto http://intere55ant3szeug.felixluebeck.de/zufallszahlen/beleuchtung_laeuft.jpg)
- Optional: USB-Stick mit einigen freien Gigabyte einstecken und mounten. Für den Fall, dass das Mounten eine Hürde darstellt: mit startx den Desktop starten, dann den USB-Stick einstecken. Dann poppt ein Fenster auf, das das Einbinden anbietet. Beim Verlassen des Desktop bleibt der Stick eingebunden. Dann im Skript „runskript“ den Pfad für den USB-Stick anpassen und „-mb -mb“ durch „-gb -gb“ ersetzen
- „zufallszahlen/runskript“ ausführen. Gut 20 Sekunden warten, dann kommt eine Statistik, die zeigt, ob die Beleuchtung passt. (Beispiel siehe http://intere55ant3szeug.felixluebeck.de/zufallszahlen/testlauf_kurz.txt)
- unter /media/ramdisk/zufallszahlen_kurz liegt das Ergebnis, im gleichen Verzeichnis liegen ein paar weitere Statistiken, und stderr.txt die Sammlung aller Fehler/Warn/Hinweismeldungen.