HomeMatic USB Konfigurations-Adapter (HM-CFG-USB) in Fhem nutzen

Begonnen von mgernoth, 30 Mai 2013, 17:06:32

Vorheriges Thema - Nächstes Thema

ItsMe57

#135
So, habe nun den Root Zugriff auf die 7390.

hmland startet ohne Fehler, aber:

HMLAN:
  hmusb                (disconnected)

--

2013.11.14 18:55:29 2: HMLAN_Parse: hmusb new condition disconnected
2013.11.14 18:55:29 3: Opening hmusb device 127.0.0.1:1234
2013.11.14 18:55:29 3: Can't connect to 127.0.0.1:1234: Connection refused
2013.11.14 18:55:56 1: usb scan starting
2013.11.14 18:55:57 1: usb scan end

--

Was muss ich noch tun, damit der HM-CFG-USB2 Stick gefunden wird?

Er steckt direkt an der 7390

Danke
Rolf

marc2

Hi !

Starte den hmland mal im Debug Modus. Ggf. sieht man dan mehr. Wenn das nicht hilft mal mit strace starten (müßtest
Du Dir besorgen, da auf einer "nackten" 7390 nicht vorhanden).

Gruß, Marc

marc2

Hi !

Anbei die Version 0.091 aus Michaels GIT für 5.52 und 6.00

Gruß, Marc

fiedel

#138
Zitat von: kud am 14 November 2013, 10:02:12
Wie starte und stoppe ich hmland auf einem RasbPi am elegantesten ?
In der /etc/init.d/fhem ? (Start/Stop-Parameter)

Hi,

das habe ich auf meinem Debian Squeeze probiert. Also Startscript für hmland erstellt, Abhängigkeiten gesetzt und dann das Startscript für FHEM neu erzeugen lassen, sodass hmland mit einer "01" startet und FHEM mit einer "02". Hat auch funktioniert, allerdings hat nun FHEM sehr lange zum starten gebraucht - auch bei einfachem "shutdown restart". Ich hatte dann noch ein wenig damit rumexperimentiert, ohne dass ich das Verhalten verbessern konnte.

Letztendlich rufe ich hmland aus FHEM auf mit folgendem Befehl:


define Func_Start_Init_W watchdog . 00:00:01 SAME {system("ps | grep hmland | grep -v -q grep || /opt/fhem/hmland -d -p 1234");;}


Das startet hmland beim Start von fhem, aber nur dann, wenn hmland noch nicht aktiv ist.


Zum ausprobieren hier noch der "offizielle" Weg:

Startscript (habe ich aus dem FHEM- Startscript umgestrickt):

#!/bin/sh
# Startup script for the HM-CFG-USB to HMLAN emulator
#
#
### BEGIN INIT INFO
# Provides:             hmland
# Required-Start:       $local_fs $remote_fs
# Required-Stop:        $local_fs $remote_fs
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    hmland daemon
### END INIT INFO

set -e
cd /opt/fhem


case "$1" in
'start')
        echo "Starting hmland..."
        /opt/fhem/hmland -d -p 2129
        RETVAL=$?
        ;;
'stop')
        echo "Stopping hmland..."
        killall hmland
        RETVAL=$?
        ;;
'status')
        cnt=`ps -ef | grep "hmland" | grep -v grep | wc -l`
        if [ "$cnt" -eq "0" ] ; then
                echo "hmland is not running"
        else
                echo "hmland is running"
        fi
        ;;
*)
        echo "Usage: $0 { start | stop | status }"
        RETVAL=1
        ;;
esac
exit $RETVAL


Vorgehen:

-Script in etc/init.d anlegen mit Name "hmland" und obigem Inhalt

-auf Konsole Start-/Stopscripte für hmland erzeugen lassen:

update-rc.d hmland defaults

-in etc/init.d/fhem Startabhängigkeit ändern (damit fhem erst startet, wenn hmland läuft):
# Required-Start:       $local_fs $remote_fs hmland

-auf Konsole Start-/Stopscripte für fhem neu erzeugen lassen:

update-rc.d -f fhem remove
update-rc.d fhem defaults


update-rc.d legt dadurch fhem mit Startnummer 02 an, hmland hat 01

-reboot des Rechners

Gruß

Frank

FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

ItsMe57

Aller Anfang ist schwer.

Mit der 0.091 läuft es nun.  ;D

Der Status lautet:

HMLAN:
  hmusb                (opened)

Muss da nicht initialized stehen?

Viele Fragen.

nun muss ich "nur" noch rauskriegen, wie ich die Aktoren anlerne, die Regeln erstelle und, und.

Muss ich suchen oder hat jemand eine Kurzanleitung für Linux Profis aber FHME Dummies wie mich?

Gruß
R.

ItsMe57

Erster Kandidat: Fensterkontakt.

Büroklammer in Resetloch, blinkt rot.

Weder hmPairForSec noch hmPairSerial führen zum Erfolg...

ItsMe57

#141
Pairing hat geklappt!

--

Rooms angelegt.

Hat jemand Lust mir heute telefonische Hilfe für Regeln zu geben?

Fensterkontakt und Thermostat?

Pls
Rolf

Icebear

Hallo,

hmlan auf raspberrypi auf anhieb compiliert und im Einsatz.

Alles sauber geklappt. Danke dem Autor..

Raspberry PI mod B (Wheezy), Fhem 5.4, CUL868, CUL433 , RfxTrx, HM-USB-CFG2, Wlan, HomeEasy, IT, FS20, TFA, HomeMatic, Oregon Scientific, HMLand auf Fritzbox
Raspberry PI mod B (RaspBMC)

volschin

Hallo zusammen,
nachdem ich jetzt einige Zeit die Stabilität des hmland mit 2 Sensoren im Auge hatte, möchte ich jetzt gern meine Konfiguration im Ganzen umstellen.

Gibt es da einen einfachen Weg oder muss ich jetzt wirklich alle CUL-Devices löschen und sie mit dem HM-CFG-USB neu pairen und danach die ganzen Konfigurationsanpassungen wieder einpflegen.

Problem scheint IODev zu sein. Da steht bisher CUL0, bei meinen neuen Devices aus dem Test hmusb.

Ich hoffe auf Euch.

Danke und Gruß
Veit
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

volschin

Ein ziemlich seltsamer Effekt. Es gibt aber neben dem Eintrag in Internals auch ein Attribut IODev. Wenn ich das für jedes Device setze scheint der Eintrag in Internals aktualisiert zu werden und ich kann die Devices danach wieder schalten.

Vielleicht hilft es ja jemand, der das auch noch vor sich hat.

Gruß,
Veit
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

marc2

Hallo Veit !

Wenn Du am HMUSB bislang nur zwei Aktoren zum Testen hast, dann würde ich bei denen die
Konfiguration zurücksetzen. Danach dem HMUSB die hmId Deines CULs geben und FHEM am besten
einmal neu starten.  Danach arbeiten CUL und HMUSB parallel. Wenn Du sichergehen willst, das alle
Befehle über den HMUSB rausgehen,  musst Du bei allen Deinen Devices das IODev umsetzen (am
besten einfach mit vi in in der fhem.cfg und danach neu starten).

Bei Dir sollte im Moment für Deinen CUL so etwas in der fhem.cfg stehen:

define <CUL> CUL /dev/ttyACM0@9600 5432

Wobei 5432 Deine FHTID ist. Die hmId lautet dann F15432 und muss
beim HMUSB wie folgt gesetzt werden

attr <HMUSB> hmId F15432

Gruß, Marc

P.S: Achja, Deine beiden Testaktoren mußt Du dann natürlich neu anlernen  und wenn Du willst den,
       den  CUL aus der Konfiguration entfernen

volschin

Hallo Marc,
Das mit der HMId hatte ich bereits vor meinem Test realisiert. Lediglich die Umschaltung funktionierte nach Abstecken des CUL leider nicht so einfach.

Läuft aber jetzt alles.

Danke und Gruß
Veit
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

volschin

Zitat von: marc2 am 27 Oktober 2013, 19:55:47
Wenn Du mit einem USB-Hub an der 7390 arbeiten solltest, würde mich Modell und Timings
des hmland interessieren.
Hallo Marc,
das Timing meines Hubs hatte ich Dir ja schon mitgeteilt. Ich habe jetzt den USB-Stick direkt an der Fritzbox laufen. Da gibt es das Timing-Problem nicht und alles läuft perfekt.

Ganz herzlichen Dank nochmal für Deine Unterstützung.

Gruß
Veit
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

Gandalv

Hallo,

habe da ein paar schwierigkeiten den HM USB zu integrieren.
Ich habe die hmland, hmsniff und die libusb-1.0.so0.1.0 vond der zip hmland-7390-0.091
in das standard lib verzeichnis kopiert, wie es in der startfhem angegeben ist

So sieht nun die startfhem aus:
Zitat
#!/bin/sh

home=/var/InternerSpeicher/fhem

cd $home

trap "" SIGHUP
modprobe cdc_acm
modprobe ftdi_sio
sleep 2

ln -sf $home/FHEM/fhemcmd.sh /var/fhemcmd

PATH=$home:$PATH
export PATH

export LD_LIBRARY_PATH=$home/lib
export PERL5LIB=$home/lib/perl5/site_perl/5.12.2/mips-linux:$home/lib/perl5/site_perl/5.12.2:$home/lib/perl5/5.12.2/mips-linux:$home/lib/perl5/5.12.2
ps | grep hmland | grep -v -q grep || $home/lib/hmland -l 127.0.0.1 -p 1000 -d
sleep 2

# add user fhem with uid of boxusr80/boxusr99 (== ftpuser)
# Comment/delete everything between START and END to run FHEM as root

## START:fhem-user
id fhem > /dev/null 2>&1
if test "$?" -ne "0"; then
  grep -q 1099 /etc/passwd;
  if test $? -eq "0"; then
    echo "fhem:any:1099:0:fhem:/home-not-used:/bin/sh" >>/var/tmp/passwd
  else
    echo "fhem:any:1080:0:fhem:/home-not-used:/bin/sh" >>/var/tmp/passwd
  fi
  chown -R fhem FHEM docs log www
  chown fhem . *
  chown root dfu-programmer     
  chmod u+s dfu-programmer
fi
## END:fhem-user

perl fhem.pl fhem.cfg

nach einem Neustart von FHEM habe ich dann folgendes im Log stehen
Zitat2013.11.20 21:23:08 1: Including fhem.cfg
2013.11.20 21:23:09 3: telnetPort: port 7072 opened
2013.11.20 21:23:11 3: WEB: port 8083 opened
2013.11.20 21:23:11 3: WEBphone: port 8084 opened
2013.11.20 21:23:11 3: WEBtablet: port 8085 opened
2013.11.20 21:23:13 3: Opening fbaha device localhost:2002
2013.11.20 21:23:13 3: Can't connect to localhost:2002: Connection refused
2013.11.20 21:23:13 3: Opening CUL_0 device /dev/ttyACM0
2013.11.20 21:23:14 3: Setting CUL_0 baudrate to 38400
2013.11.20 21:23:14 3: CUL_0 device opened
2013.11.20 21:23:14 3: CUL_0: Possible commands: BCFiAZEGMRTVWXefmltux
2013.11.20 21:23:14 1: HMLAN_Parse: hmusb new condition disconnected
2013.11.20 21:23:14 3: Opening hmusb device 127.0.0.1:1000
2013.11.20 21:23:14 3: Can't connect to 127.0.0.1:1000: Connection refused
2013.11.20 21:23:14 1: Including ./log/fhem.save
2013.11.20 21:23:15 1: usb create starting
2013.11.20 21:23:15 1: usb create end

Danke für eure Hilfe :-)

volschin

Ändere Deine Installation mal auf Port 1234 und Versuche es damit.

Gruß
Veit
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge