Schlagwort-Archiv: Infrarot

Sharp MZ 700 – MZ-SD2CMT

Bisher habe ich immer ein altes Android Smartphone genutzt, dazu musste ich aber immer die Dateien in WAV umwandeln und dann mit einem Player die Daten abspielen. Klappt leider nur bei mehreren Versuchen, weil mal die Lautstärke zu laut oder zu leise ist , Player stürzt bei manchen wav dateien ab, …

Jetzt habe ich auf github das Projekt MZ-SD2CMT gefunden und habe dies gleich mal nachgebaut und bin begeistert.
MZ-SD2CMT kann MZF/MZT/M12/LEP oder WAV von SD-Karte am Sharp MZ-700 wiedergeben. Auch die anderen Probleme sind damit weg, wie Lautstärke, Player, ….

Hier die Bauanleitung + Code:
https://github.com/SHARPENTIERS/MZ-SD2CMT

Die Tasten waren mir aber nichts, darum habe ich einen Infrarot-Empfänger hinzugefügt (man kann z.B. VS1838B nehmen). Nun lässt sich das Ganze mit Fernbedienung steuern. Die Tasten funktionieren ganz normal.

Angeschlossen wurde der Infrarot-Empfänger so:

Infrarot-Empfänger VS1838B | Arduino
5V -> 5V
GND -> GND
Signal/Data -> PIN 49

Ich habe bereits Kontakt mit dem Entwickler aufgenommen, sodass dies vielleicht ein Teil vom Projekt wird.
Auf jeden Fall muss das erweiterte Sketch von mir auf das Arduino geladen werden.
Dazu muss aber noch zusätzlich die Library „IRremote“ in der Bibliotheksverwaltung hinzugefügt werden.
Diese kann mit dem Suchbegriff „IRremote“ gefunden und installiert werden.

Sobald das neue Sketch auf dem Arduino läuft, kann man im Serial Monitor von (Arduino IDE) sich die IR-Codes anschauen.
Man nimmt dazu einfach seine gewünschte IR Fernbedienung und drückt die Tasten, die man verwenden möchte.
Es ist egal welche Fernbedienung man nimmt, es kann eine alte Radio/Fernsehr,Videorecorder/DVD -,… Fernbedienung sein.

Bei mir ist das z.B.
Links – CH-
Rechts – CH+
Select – >|| (play)
up – > Forward
down – < replay

Beim Drücken der Fernbedienung wird eine Zahl angezeigt (Fernbedienungscodes), die man sich notieren muss und im Sketch angeben muss.
z.B.:

#define IR_right_code -7651 //CH+ key
#define IR_left_code -23971 //CH-
#define IR_up_code 8925 //preview key (<<) #define IR_down_code 765 //forwards key (>>)
#define IR_select_code -15811 //play key (>||)

Hier noch der Anschluss vom Arduino zum Sharp 700:


MZ-SD2CMT-master

Raspberry Pi mit IR Remote

Ich habe noch eine alte Universal Fernbedienung (TCM 64745) und einen TSOP34136 Infared Receiver (datasheet). TSOP38238 und TSOP4838 sollten auch funktionieren, sind aber nicht von mir getestet. TSOP38238 wird auch in eBay angeboten, aber etwas teuer ; ). Hier erstmal der Schaltplan:

Raspberry_IR

1 = OUT, 2 = GND, 3 = VS

Um via GPIO Ports eine einzelne Infrarot Empfänger Diode anzusprechen, benötigt man noch LIRC. Bei Raspbian muss das noch eingerichtet werden, bei OpenELEC ist LIRC von Haus aus eingerichtet.


sudo apt-get install lirc liblircclient-dev

Damit das Modul beim Neustart automatisch geladen wird, muss /etc/modules bearbeitet werden.

sudo nano /etc/modules

Fügt folgende Zeilen am Ende der Datei ein:

lirc_dev
lirc_rpi gpio_in_pin=18

Jetzt die Config /etc/lirc/hardware.conf bearbeiten, so sollte das Ergebnis aussehen:

# /etc/lirc/hardware.conf
#
# Arguments which will be used when launching lircd
LIRCD_ARGS="--uinput"

# Don't start lircmd even if there seems to be a good config file
# START_LIRCMD=false

# Don't start irexec, even if a good config file seems to exist.
# START_IREXEC=false

# Try to load appropriate kernel modules
LOAD_MODULES=true

# Run "lircd --driver=help" for a list of supported drivers.
DRIVER="default"
# usually /dev/lirc0 is the correct setting for systems using udev
DEVICE="/dev/lirc0"
MODULES="lirc_rpi"

# Default configuration files for your hardware if any
LIRCD_CONF=""
LIRCMD_CONF=""

Jetzt sollte das System neugestartet werden.

sudo shutdown -r now

Ob alles geklappt hat, kann man wie folgt testen:


/etc/init.d/lirc stop
mode2 -d /dev/lirc0

Nach Eingabe einfach auf die Fernbedienung drücken. Ich habe auch 2 verschiedne Windows Media Center Edition (MCE) Fernbedienungen getestet, die haben bei mir nur schlecht bis garnicht funktioniert. Am besten ging es mit den normalen Fernbedienungen.