Archiv für den Monat: August 2014

DS1307 RTC am Raspberry Pi

Heute will ich euch zeigen, wie man das Real-Time-Clock-Module „Tiny RTC – DS1307“ am Raspberry Pi betreiben kann. Raspberry Pi hat keine RTC und holt sich die aktuelle Uhrzeit über das Internet via ntp. Damit die Uhrzeit auch ohne Internet zur Verfügung steht, ist das Modul eine kostengünstige Lösung.

Als erstes wird i2c-tools benötigt:

apt-get install i2c-tools

Ich benutze lieber vim und nicht nano. Wer also lieber nano als Editor nimmt, muss vim durch nano ersetzen.

Raspberry hat in der neuen Version keine raspi-blacklist.conf mehr.

cd /etc/modprobe.d/

Liegt keine raspi-blacklist.conf im Verzeichnis, solltet ihr raspi-config verwenden.

raspi-config

Im Fenster auf „advance options“ gehen und da:

A6 SPI Enable/Disable automatic loading │
A7 I2C Enable/Disable automatic loading

beide Module aktivieren. Jetzt noch neustarten!

Wer die raspi-blacklist.conf noch hat, geht so vor:

vim /etc/modprobe.d/raspi-blacklist.conf

sucht diese Zeilen:
#blacklist spi-bcm2708
#blacklist i2c-bcm2708

und entfernt die „#“ am Anfang, so sollten die Zeilen aussehen:

blacklist spi-bcm2708
blacklist i2c-bcm2708

Damit die Module bei jedem Neustart wieder geladen werden, muss man die /etc/modules anpassen.
vim /etc/modules

Meine config sieht nun so aus:

/etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.

snd-bcm2835
spi-bcm2708
i2c-bcm2708
i2c-dev
rtc-ds1307

Um die Module zu aktivieren, müsst Ihr Raspberry Pi neu starten:

sudo reboot

Nach dem Neustart muss die RTC getestet werden:

i2cdetect -y 1

Sollte so aussehen:

0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

Jetzt setzen wir erstmal die richtige Zeitzone:
sudo raspi-config
“Internationalization Options” -> “Time Zone”

Es sollte diese Meldung kommen:
Current default time zone: 'Europe/Berlin'
Local time is now: Thu Aug 27 15:53:11 CEST 2014.
Universal Time is now: Thu Aug 27 13:53:11 UTC 2014.

Die RTC bei jedem Neustart verwenden:

vim /etc/rc.local

Sucht nach der Zeile „exit 0“ am Schluss und ändert das so ab:
#RTC
echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
sudo hwclock -s
#RTC END

exit 0

Die RTC Zeit einstellen:
Gebt erstmal date ein, für die aktuelle Systemzeit.

root@home:/home/pi# date
Thu Aug 27 16:13:23 CEST 2014

Nun hwclock -r um die Zeit von der RTC zu lesen:

root@home:/home/pi# hwclock -r
Thu 27 Aug 2014 16:13:29 CEST -0.676218 seconds

Stimmt die Zeit nicht, gebt hwclock -w ein.

sollte der Fehler „Cannot access the Hardware Clock“ kommen:

root@home:/home/pi# hwclock -r
hwclock: Cannot access the Hardware Clock via any known method.
hwclock: Use the --debug option to see the details of our search for an access method.

Startet mal neu und gebt sudo bash ein und echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
Dann sollte der Befehl hwclock -r funktionieren.

Mach aus deinem C64 eine Jukebox!

.Sid Dateien sind gerippte Musikstücke vom C64. Diese Dateien können am PC mit sogenannten SIDPLAYER wiedergeben werden. Der Emulator VICE hat einen sidplayer dabei. Wer aber einen C64 hat, will dies nicht am PC hören oder ??? Der C64 kann so mit SID-Datein nicht umgehen, darum verwende ich hier Sidplay64. Sidplay64 unterstützt sogar SD2IEC, ob es auch mit IEC-ATA-Interface läuft, kann ich noch nicht sagen. Aber sobald ich das Teil fertig habe : ). Wenn Ihr den Sidplayer runtergeladen habt, braucht Ihr noch dirmaster, ein Tool zum editieren/erstellen von Disketten-images (.d64). Was darf nicht fehlen? Richtig, die SID Datein selber : ).
Die könnt Ihr z.B. hier saugen: HVSC collection

Startet nun das Programm Dirmaster und öffnet damit „SP64_TESTDISK.D64“ (in der Sidplay64.zip). Drückt nun auf „File“ -> „Import“ um eure SID zu importieren. Das macht Ihr bis die Diskette voll ist.
Nicht vergessen zu speichern!!!

Ich habe hier mal ein fertiges Diskettenimage erstellt:

sid

Runterladen könnt hier es hier:
SID.ZIP

Die SID.d64 kann am Emulator wie Vice verwendet werden oder ihr übertragt das Image auf eine Diskette via X1541-Kabel an das Floppylaufwerk.

Was ist den X1541 Kabel ist? Kann man hier nachlesen:
http://www.c64-wiki.de/index.php/X1541

Ich habe das xu1541-Kabel, da ich nur USB verwenden kann. Als Software verwende ich gerade OpenCBM, CBMXfer. Habt Ihr die Diskette im C64, gebt ihr nur LOAD“*“,8,1 ein und RUN.
Meine Final Cartridge III mag Sidplay64 nicht aber ohne gehts super : ).

Die Bedienungsanleitung ist auch in der Sidplayer64 ZIP, readme.txt.
Ich nutze immer die Taste „N“ für Next und stelle den Timer ein mit „<“ oder „>“, so wird nach Ablauf der Zeit die nächste sid geladen.

FM Radio am C64

Ich habe heute mal ein FM Radio für den C64 nach dieser Anleitung gebaut:

FM Radio for C64 Anleitung

Der Aufbau ist sehr leicht und die Kosten für das Modul betragen ca. 5€. Der Klang ist nicht schlecht, mit dem Empfang hatte ich etwas zu kämpfen. Hier 2 Bilder vom Modul:

IMG_0805fm-radio-rda-5807

Insgesamt muss ich sagen, dass ich davon sehr begeistert bin.