Autor Thema: Synology DS215j und DUOFERNSTICK  (Gelesen 140 mal)

Offline Lippie

  • New Member
  • *
  • Beiträge: 3
Synology DS215j und DUOFERNSTICK
« am: 02 Dezember 2018, 13:23:31 »
Hallo,

auf der Suche, einen DUOFERNSTICK auf meiner DS zum Laufen zu bekommen, habe ich einiges erstellen/einstellen müssen.
Da ich alles aus unterschiedlichen Quellen zusammensuchen musste, hier eine Zusammenfassung:

erforderliches Perl-Modul "Device::SerialPort":
- hier hat mir der Weg über https://wiki.fhem.de/wiki/Synology_Diskstation mittels iPKGui und anschließendem kopieren der relevanten Dateien in die eigentliche Perl-Installation am besten geholfen.

weitere erforderliche Module:

   /lib/modules/usbserial.ko
   /lib/modules/ftdi_sio.ko

diese sind bereits auf dem NAS unter /lib/modules/ abgelegt.

ich lasse sie mittels folgendem Start-Script, abgelegt unter "/volume1/@optware/etc/init.d/S99startupUsbserialftdi.sh", laden:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          Startup-Script
# Required-Start:   
# Required-Stop:     
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: includes modules usbserial.ko and ftdi_sio.ko
# Description:       includes modules usbserial.ko and ftdi_sio.ko and changes rights
### END INIT INFO
# Author: no

# Aktionen
case "$1" in
    start)
       
        insmod /lib/modules/usbserial.ko
insmod /lib/modules/ftdi_sio.ko
chmod 777 /lib/modules/usbserial.ko
chmod 777 /lib/modules/ftdi_sio.ko
        ;;
    stop)

        ;;
    restart)
       
        ;;
esac

exit 0

Damit wird beim Anschluss des USB-Sticks zum Beispiel "/dev/ttyUSB0" angelegt, was DUOFERNSTICK zur Steuerung benötigt.
Hier ist nun noch wichtig, dass der user fhem ausreichende Rechte auf "/dev/ttyUSB0" hat. Das kann man bestimmt irgendwo einstellen,
da meine Linux-Kenntnisse recht mager sind, habe ich einen CronJob "/volume1/FHEM/Scripts/ttyUSBxy.sh" angelegt, der die Rechte setzt, falls notwendig:

#!/bin/bash
#
#
nfile='/dev/ttyUSB0'
#nfile='/dev/ttyS1'
srights='crw-rw-rw-'
nrights='666'

if erg="$(ls -l $nfile)" # existiert etwas mit dem Namen von $file?
then
  echo "$nfile existiert"
  rights=${erg:0:10}
  echo "folgende Rechte: $rights"
  if [ "$rights" == "$srights" ]
  then
    echo "Rechte passen bereits"
  else
    chmod $nrights $nfile
    erg2="$(ls -l $nfile)"
    echo "Rechte geändert in: $erg2"
  fi
fi

exit 0;

Über eine SSH-Konsole kann man mit folgenden Befehlen alle relevanten Informationen zur Konfiguration des DUOFERNSTICK-Moduls herausfinden:

dmesgSystemlog beinhaltet die Zuweisung des ttyUSBxy zum USB-Port des NAS
lsusbListe der USB-Ports mit Info zu den angeschlossenen Geräten
"ls -l /dev/*" oder  "ls -l /dev/ttyUSB0"Abfrage der verfügbaren Schnittstellen und der gesetzten Berechtigungen

vielleicht hilf es ja dem einen oder anderen Suchenden weiter :-)

Folgende offene Punkte habe ich noch:

- nach einem "shutdown restart" sagt der DUOFERNSTICK zwar noch, dass er eine Verbindung hat, jedoch gehen keine Befehle mehr raus und es wird auch nichts mehr empfangen. Es hilft nur noch ein Neustart des NAS.
- Ersetzen des CronJobs durch eine generelle Berechtigungs-Einstellung für user auf "/dev/ttyUSBxy"

Beste Grüße
Lippie

 

decade-submarginal