easyVDR - >VARforumsname - >Serielle Schnittstellenkarte Logilink PCIe > 2x RS232 (Moschip MCS9922)
rad 30.Jan.2016 17:07:40 |
Hi Leute, ich möchte die Schnittstellenkarte ans Laufen bringen, in Verbindung mit dem Wakeup Modul von K-Data (Software von Frank J.) [url=http://www.logilink.org/Produkte_LogiLink/Interface_Karten/Express_Karten/PCI_Express_Karte-2x_Seriell.htm]http://www.logilink.org/Produkte_LogiLink/Interface_Karten/Express_Karten/PCI_Express_Karte-2x_Seriell.htm Die Karte habe ich nur gesteckt und gehofft, das sie ootb funktioniert!: 03:00.0 Serial controller : MosChip Semiconductor Technology Ltd. MCS9922 PCIe Multi-I/O Controller [9710:9922] 03:00.1 Serial controller : MosChip Semiconductor Technology Ltd. MCS9922 PCIe Multi-I/O Controller [9710:9922] 0.538106] 0000:03:00.0: ttyS4 at I/O 0xd010 (irq = 17, base_baud = 115200) is a ST16650V2 0.559505] 0000:03:00.1: ttyS5 at I/O 0xd000 (irq = 18, base_baud = 115200) is a ST16650V2 Auf Versuche, ttyS4 mit setserial zu initialisieren und (manuell) Befehle zum testen der Verbindung zu übertragen, reagiert das Modul gar nicht: stopvdr killall lircd modprobe 8250 setserial /dev/ttyS4 uart 16550A echo RTS1501240507041 > /dev/ttyS4 (setzt die Uhrzeit/Wochentag) Ich habe ich schon im Internet umgeguckt, Infos zu Schnittstellenkarten in Verbindung mit VDR/Easyvdr findet man praktisch keine... Ich frage mich gerade, ob der Ansatz an sich, eine serielle Schnittstelle nachzurüsten vielleicht der falsche Weg ist. Auch weil meine Linux kentnisse dürftig sind. Das Wakeup-Modul würde ich auf jeden Fall nur ungerne aufgeben, über Kommentare und einen möglichen Ansatz, die Karte ans Laufen zu bekommen freue ich mich! easyinfo.zip MB: Asus H81M-Plus RAM: 8 GB HDD: 750 GB S-ATA - DVB: CineS2 v6.5 - EasyVDR 2.5 |
zzzözzz 30.Jan.2016 17:55:33 |
Laut kernel läuft deine Schnittstellenkarte doch? |
rad 31.Jan.2016 16:42:57 |
Das Übertragen von Befehlen zum Wakeupmodul klappt jetzt! es lag an einem IRQ-Konflikt, wie ich in den logs gelesen habe: Jan 30 15:54:48 easyVDR2 kernel: [ 27.346219] genirq: Flags mismatch irq 17. 00000000 (lirc_serial) vs. 00000080 (snd_hda_intel) Jan 30 15:54:48 easyVDR2 kernel: [ 27.346222] lirc_serial lirc_serial.0: IRQ 17 busy Nach umstecken der Karte (IRQ 19) hat der "Modemmanager", den ich mittlerweile deaktiviert habe, auch die korrekte Funktion verhindert. Da die Übertragung jetzt klappt würde ich im zum HW-Wakeup passenden Skipt gern die neue Schnittstelle (ttyS4 anstatt ttyS0 ) angeben ...nur finde ich unter etc/vdr/shutdown-hooks die Passage nicht. ############################################################################################## "JepsenHWWakeup") if [ -e /etc/vdr/vdr-addon-hw-wakeup.conf ]; then . /etc/vdr/vdr-addon-hw-wakeup.conf fi #set >/jplog/log.txt export LANG=C # Defaults: [ -z "$ENABLED" ] && export ENABLED="no" [ -z "$WAKEUP_PORT" ] && export WAKEUP_PORT="/dev/ttyS0" [ -z "$KILL_LIRC" ] && export KILL_LIRC="no" [ -z "$KILL_LCDD" ] && export KILL_LCDD="yes" [ -z "$MIN_PRE_TIMER" ] && export MIN_PRE_TIMER=5 [ -z "$MAX_POWEROFF_TIME" ] && export MAX_POWEROFF_TIME=0 [ -z "$MAX_TRY_AGAIN" ] && export MAX_TRY_AGAIN=0 # Const NEVER=2147483647 if [ $MAX_TRY_AGAIN -gt 0 ]; then # another script wants to retry shutdown later ERR_MSG="Shutdown abgebrochen" $SVDRPCMD MESG "$ERR_MSG" & $LOGGERCMD "$ERR_MSG - Sutdown abgebrochen" EXITCODE=0 else if [ $ENABLED = "no" ]; then # vdr-addon-hw-wakeup is disabled, so just exit ERR_MSG="hw-wakeup functionality is disabled" $SVDRPCMD MESG "$ERR_MSG - Shutdown abgebrochen" & $LOGGERCMD "$ERR_MSG - Sutdown abgebrochen" $LOGGERCMD "hw-wakeup functionality is disabled" EXITCODE=0 else # calculate, at what time the machine should be powered on # VDR-Timer NOW=$((`date +%s`)) echo "NOW " `date -d "1970-01-01 $NOW seconds UTC" "+%H:%M %d.%m.%Y"` $NOW if [ -z $TIMER ] || [ $TIMER -eq 0 ]; then NEXTTIMER=$NEVER else NEXTTIMER=`expr $TIMER - $MIN_PRE_TIMER \* 60` fi echo "TIMER " `date -d "1970-01-01 $NEXTTIMER seconds UTC" "+%H:%M %d.%m.%Y"` $NEXTTIMER # Daily Timer if [ -z $DAILY_TIMER_STD ] || [ -z $DAILY_TIMER_MIN ]; then NEXTDAILYTIMER=$NEVER else NEXTDAILYTIMER=`date +"%d %b %Y"` NEXTDAILYTIMER=`date -d "$NEXTDAILYTIMER $DAILY_TIMER_STD:$DAILY_TIMER_MIN" +%s` if [ $NOW -gt $NEXTDAILYTIMER ]; then NEXTDAILYTIMER=`expr $NEXTDAILYTIMER + 86400` fi fi echo "DAILYTIMER " `date -d "1970-01-01 $NEXTDAILYTIMER seconds UTC" "+%H:%M %d.%m.%Y"` $NEXTDAILYTIMER # MaxPowerOff Time if [ $MAX_POWEROFF_TIME -eq 0 ]; then WAKEUPTIME=$NEVER else WAKEUPTIME=`expr $NOW + $MAX_POWEROFF_TIME \* 60` fi echo "MAXPOWEROFF " `date -d "1970-01-01 $WAKEUPTIME seconds UTC" "+%H:%M %d.%m.%Y"` $WAKEUPTIME # Who comes first? if [ $WAKEUPTIME -gt $NEXTTIMER ] && [ $NEXTDAILYTIMER -gt $NEXTTIMER ]; then WAKEUPTIME=$NEXTTIMER else if [ $WAKEUPTIME -gt $NEXTDAILYTIMER ]; then WAKEUPTIME=$NEXTDAILYTIMER fi fi echo "WAKEUPTIME " `date -d "1970-01-01 $WAKEUPTIME seconds UTC" "+%H:%M %d.%m.%Y"` $WAKEUPTIME if [ $WAKEUPTIME -eq $NEVER ]; then WAKEUPSTR="" else WAKEUPSTR=`date -d "1970-01-01 $WAKEUPTIME seconds UTC" +%H%M%d%m` fi TIMESTR=`date +%H%M%S%d%m%y%w` # Kill LIRC if [ $KILL_LIRC = "yes" ]; then $LOGGERCMD "Starting Module 8250" killall lircd sleep 4 modprobe -r lirc_serial sleep 8 modprobe 8250 setserial $WAKEUP_PORT uart 16550A sleep 8 fi # Kill LCDd if [ $KILL_LCDD = "yes" ]; then killall LCDd sleep 1 echo -n -e "\317" > $WAKEUP_PORT fi $LOGGERCMD "echo ATS$WAKEUPSTR > $WAKEUP_PORT" echo ATS$WAKEUPSTR > $WAKEUP_PORT $LOGGERCMD "echo RTS$TIMESTR > $WAKEUP_PORT" echo RTS$TIMESTR > $WAKEUP_PORT EXITCODE=0 poweroff fi fi ;; ############################################################################################## MB: Asus H81M-Plus RAM: 8 GB HDD: 750 GB S-ATA - DVB: CineS2 v6.5 - EasyVDR 2.5 |