Hallo zusammen,
in einem anderen Forum wurde ich noch mal nach der Anleitung gefragt.
Desshalb kann ich sie auch gleich hier posten.
Als Erstes benötigt ihr eine Buildumgebung für freetz.
Das sollte für die Leute in diesem Forum kein Problem sein
Wenn Ihr keine habt, dann würde ich den VMWARE Player, WinSCP und Putty installieren.
Das VMWAre image bekommt ihr hier.
Download freetz-linux from SourceForge.net
Die Passwörter der Umgebung stehen hier
Buildumgebung: freetz-linux
Wie ihr euch simple die Umgebung einrichtet ist hier beschrieben.
help/howtos/common/first_trunk
Ich würde jedoch nicht trunk sonder die letzte stable Version auschecken.
Code:
svn co http://svn.freetz.org/branches/freetz-stable-1.2 freetz-1.2
Ok, wenn die Umgebung erfolgreich funktioniert, dann könnt Ihr loslegen.
Für eure Box müsst ihr nun die Kernelmodule(Treiber) auswählen und kompilieren.
Folgende Module nutze ich. evtl. werden aber nicht alle benötigt.
evdev
usbcore.ko
usbhid.ko
mousedev.ko
input-core.ko
ati_remote.ko
Um diese in das freetz zu integrieren, müssen folgende Schritte durchgeführt werden.
freetz@freetz-linux:~/freetz-1.2$ make kernel-menuconfig
Device Drivers ---> Input device support --->
<M> Generic input layer (needed for keyboard, mouse, ...)
<M> Event interface
Device Drivers ---> USB support --->
<M> USB Human Interface Device (full HID) support
<M> ATI / X10 USB RF remote control
freetz@freetz-linux:~/freetz-1.2$ make kernel-precompiled
Danach sind die Treiber kompiliert
freetz@freetz-linux:~/freetz-1.2/kernel/modules-ur8-16mb-7270_04.86/drivers$ find . | grep "evdev\|usbcore\|usbhid\|mousedev\|input-core\|ati_remote"
./usb/core/usbcore.ko
./usb/input/ati_remote.ko
./usb/input/usbhid.ko
./input/evdev.ko
./input/mousedev.ko
./input/input-core.ko
Ich integriere sie nun in mein Image.
Evtl. kann man die Treiber auch mit insmod laden und dann den absoluten Pfad angeben. Aber das hat bei mir nicht geklappt.
Leider kann man die Module auch nicht automatisch bei menuconfig auswählen,
deshalb muss man noch die Datei ~/freetz-1.2/kernel/Confing.in anpassen
unter den Eintrag menu “drivers“ müssen folgende einträge hinzugefügt werden
config FREETZ_MODULE_ati_remote
bool "ati_remote.ko"
default y
config FREETZ_MODULE_usbhid
bool "usbhid.ko"
default y
config FREETZ_MODULE_evdev
bool "evdev.ko"
default y
config FREETZ_MODULE_mousedev
bool "mousedev.ko"
default y
config FREETZ_MODULE_input_core
bool "input-core.ko"
default y
Nun starten wir
freetz@freetz-linux:~/freetz-1.2$ make menuconfig
Dort setzten wir den hacken bei
[*] Show advanced options
Und dann bei Replace kernel
Unter Advanced options ---> Kernel modules ---> drivers --->
Überprüfen ob die Module vorhanden und mit * oder X gekennzeichnet sind.
Nun raus aus dem Menü und make starten.
Bei Modify kamen bei mir zwei Meldung
./fwmod: Zeile 412: ./patches/7270_v2/de/*.sh: No such file or directory
./fwmod: Zeile 412: ./patches/7270_v2/*.sh: No such file or directory
Die können ignoriert werden.
Nun ist das Image mit den Treibern fertig.
Bevor ihr es auf der Box aufspielt, solltet ihr die Einstellungen der Fritzbox sichern und das Recoverery Image runterladen.
Danach könnnt ihr es auf die Box aufspielen.
Wenn alles funktioniert, dann meldet euch per putty auf der Box an und ladet die Module.
modprobe evdev
modprobe usbcore.ko
modprobe usbhid.ko
modprobe mousedev.ko
modprobe input-core.ko
modprobe ati_remote.ko
Danach schließt den Empfänger an und überprüft, ob das Device erkannt wurde.
(Die Zahl 64 kann abweichen)
/dev # /dev # cat /sys/class/input/event*/dev
13:64
/dev # cat /sys/class/input/event0/device/manufacturer
X10 WTI
Nun must Ihr das device zuordnen
/dev # mknod /dev/event0 c 13 64
Wenn das geklappt hat, dann könnt ihr ein cat auf dem event machen und überpüfen, ob die Tastaturbefehler ankommen.
/dev # cat /dev/event0
¤£Lr¤
Wenn das alles funktionert hat, dann muss nur noch das kleine C-Programm cross-Kompiliert werden.
Die Anleitung kommt später.