Wechsel von FVS zu fhem?

Begonnen von Rainer S., 03 Oktober 2013, 21:38:30

Vorheriges Thema - Nächstes Thema

Rainer S.

Hallo, nachdem ich im Forum nicht gefunden habe, stelle ich die Frage einfach einmal hier.

Ich arbeite momentan mit der Eltako FVS Software, welche leider so einige "Problemchen" hat, oder ich mit ihr.

Deswegen möchte ich gerne auf fhem umsteigen. Habe auch schon die Software zum Laufen gebracht. Allerdings wird mein FAM-USB, wie es bei Eltako heißt, nicht erkannt.

Jetzt habe ich schon alle möglichen TCM defined, allerdings ohne Erfolg.


Kann ich dieses "FAM-USB" überhaupt mit fhem verwenden?

Wenn ich richtig gelesen habe, sollte fhem doch das angeschlossene USB-Device automatisch erkennen. Tut es aber nicht. Habe es auch schon an unterschiedlichen USB-Ports versucht.

Habe es auch schon mit diesen Befehlen in der fhem.cfg versucht:
define BscBor TCM 120 /dev/ttyACM0@9600
define TCM310 TCM 310 /dev/ttyACM0@57600
Auch kein Erfolg. Außer, dass beide dann unter Everything angezeigt werden. Beide sind aber disconnected.

Kann mir jemand ein paar hilfreiche Tipps geben, wie ich dieses "FAM-USB" zum Laufen bekomme?

Danke schon einmal im Voraus.

Ach ja, ich verwende die fhem Version 5.5. Habe auch ein Update gemacht. Das hat alles geklappt.
Konfiguration:
- Raspberry Pi (3) mit EnOcean Pi
- komplette Hausinstallation von Eltako (EnOcean)
- 1-Wire Temperatursensoren
- mehrere Shelly 1

rudolfkoenig

Laut http://forum.fhem.de/index.php?t=rview&goto=92148 sollte FAM-USB funktionieren.

Ich vermute Du hast nicht die benoetigten USB-Treiber installiert.
Nein, ich weiss nicht, welche benotigt werden, ich habe kein FAM-USB.

Rainer S.

Danke für die schnelle Antwort.

Obwohl ich gestern schon den USB-Treiber für das FAM USB installiert habe, hab ich jetzt aufgrund deiner Antwort noch einmal den Treiber deinstalliert und den Treiber, den ich mir von der Eltako-Homepage runter gezogen habe, installiert.

Dann habe ich auch nochmals die win32::serialport.pm und die commonport.pm installiert.

In die fhem.cfg habe ich dann noch folgende Zeilen eingefügt:

define TCM120_1 TCM 120 /dev/ttyUSB1@9600

define BscBor TCM 120 /dev/ttyACM0@9600

define TCM310 TCM 310 /dev/ttyACM0@57600

Alle drei, da ich ja nicht weiß, welche Variante sich in dem FAM-USB befindet.

Leider erkennt fhem mein FAM USB immer noch nicht.

Irgend jemand noch eine Idee?

Danke im Voraus.



Konfiguration:
- Raspberry Pi (3) mit EnOcean Pi
- komplette Hausinstallation von Eltako (EnOcean)
- 1-Wire Temperatursensoren
- mehrere Shelly 1

rudolfkoenig

> win32::serialport.pm

Windows? Dann muss es irgendwie als COM: Port eingerichtet werden, und das statt /dev/ttyACM0 verwendet werden. Am besten einen mit Windows-Ahnung Fragen.

Rainer S.

#4
Gut, dann stelle ich hier mal die ursprüngliche Frage an alle User mit Windows-Ahnung:

Wie muss ich die fhem.cfg konfigurieren, damit ich das FAM-USB von Eltako auf einem Win7-Rechner mit fhem ansprechen kann?

define ?????

Bei meiner versuchsweisen Definition:

define TCM120_1 TCM 120 /dev/ttyUSB1@9600

erscheint folgende Fehlermeldung:

Das System kann den angegebenen Pfad nicht finden
can#t open device /dev/ttyUSB1
at .FHEM/DEVIO.pm at line 188

Irgend jemand eine Idee woran das liegen kann? Fehlt da eine Pfadangabe?

Vielen Dank im Voraus!


Konfiguration:
- Raspberry Pi (3) mit EnOcean Pi
- komplette Hausinstallation von Eltako (EnOcean)
- 1-Wire Temperatursensoren
- mehrere Shelly 1

Joachim

#5
Moin Rainer,
obs wirklich hilft, weiß ich nicht, aber aus meinen Anfängen mit FHEM, Windows und OWX folgender Lösungsvorschlag:
Es sollte im Modul am Anfang
use Win32::SerialPort stehen, und das Perl-Modul win32::serialPort muss auch installiert sein, ggf. muß das Modul analog zu 00_OWX.pm angepasst werden
http://forum.fhem.de/index.php/topic,8367.msg43685.html#msg43685
Der Aufruf wäre dann:
define TCM120_1 TCM 120 /com/1@9600 # Anpassen auf den richtigen com-Port.

Gruß Joachim

Edith: Falschen Link korrigiert
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Rainer S.

#6
Hallo Joachim,

zunächst vielen Dank für Deine schnelle Antwort.

Natürlich habe ich das sofort ausprobiert.

Allerdings konnte ich die zweite Änderung nicht einarbeiten. Ich habe den Eintrag in der 00_TCM.pm nicht gefunden, den ich ändern soll.

Mit der einen Änderung diese Fehlermeldung:

Das System kann den angegebenen Pfad nicht finden
can#t open com/10
at .FHEM/DEVIO.pm at line 188

(COM10, da auf der FVS-Software das FAM-USB auf Com 10 läuft)

Ich habe dann alle erdenklichen Schreibweisen ausprobiert. Habe die Datei SerialPort.pm auch in mehrere Verzeichnisse kopiert.

Aber keine Chance.

Momentan weiß ich nicht mehr weiter.

Ich scheue mich noch davor, mir einen Raspberry Pi zu kaufen, da die Eltako Hard- und Software schon genug gekostet hat.

Hast Du noch eine Idee? Oder irgend ein anderer User?

Gruß

Rainer

Konfiguration:
- Raspberry Pi (3) mit EnOcean Pi
- komplette Hausinstallation von Eltako (EnOcean)
- 1-Wire Temperatursensoren
- mehrere Shelly 1

Joachim

Moin Rainer,
da ich selber kein Eltacko habe, und ich mittlerweile kein Windows mehr nutze, kann ich nur versuchen meine alten Kenntnisse auszugraben, Außerdem ist mein Perl grottenschlecht.
Gib  mal bitte ein bisschen mehr von Deine Konfiguration preis.
Betriebssysten (Win XP; Win7; Win8)
Welches Perl (Active Perl; Strawberry Perl; Cygwin)
und weitere wichtige Informationen. Am besten in der Signatur.
ZitatIch habe den Eintrag in der 00_TCM.pm nicht gefunden, den ich ändern soll.
Das ist nicht ein Eintrag, sondern hier muss mehr gemacht werden. Die 00_TCM.pm muss umgearbeitet werden, denn der Autor hat Windows nicht wirklich vergesehen.
Zitatsub
TCM_Initialize($)
{
my ($hash) = @_;
#require "$attr{global}{modpath}/FHEM/DevIo.pm";           # originaleintrag
require "$attr{global}{modpath}/FHEM/Win32::SerialPort"; # änderung

eventuell klappt das schon, ansonsten schoneinmal über eine virtuelle Maschine nachgedacht?

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Rainer S.

Hallo Joachim,

vielen Dank schon einmal für Deine Geduld mit mir und meinen Problemen.


Habe jetzt die 00-TCM.pm gemäß Deinen Vorschlägen umgeändert.

Nun bekomme ich wenn  FHEM läuft folgende Meldung (direkt unterhalb der Eingabezeile in FHEM)

Unknown command use, try help. Cannot load module TCM

Nein, über eine virtuelle Maschine habe ich noch nicht nachgedacht. Um ehrlich zu sein, ich weiß nicht was das in Zusammenhang mit Hausautomation ist. Muss ich erst mal ein wenig "googlen". Ich möchte Dich ja nicht überstrapazieren. ;-)

Gruß

Rainer


Konfiguration:
- Raspberry Pi (3) mit EnOcean Pi
- komplette Hausinstallation von Eltako (EnOcean)
- 1-Wire Temperatursensoren
- mehrere Shelly 1

Joachim

Moin Rainer,

die Fragen sind noch nicht beantwortet:
ZitatGib  mal bitte ein bisschen mehr von Deine Konfiguration preis.
Betriebssysten (Win XP; Win7; Win8)
Welches Perl (Active Perl; Strawberry Perl; Cygwin)
und weitere wichtige Informationen. Am besten in der Signatur.
und Information über Deine Perl-Wissen/Linux-Kenntnisse.

Virtuelle Maschine: http://de.wikipedia.org/wiki/Hypervisor
Läuft auf Deinem Windows als Gastsystem
Stellt nahezu alle Linuxfunktionalitäten bereit.

Und keine Angst, ich melde mich einfach nicht mehr, wenn ich überstrapaziert werde.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Rainer S.

Hallo Joachim,

habe meine Konfiguration in die Signatur.

Aber gerne hier noch mal:

Konfiguration:
- Win7
- ActivePerl
- komplette Hausinstallation von Eltako (EnOcean)

Meine Kenntnisse von Perl bzw. Linux sind eher gering. Habe zwar eine gewisse Affinität zur Elektronik und Computer, aber mit Perl und Linux hatte ich bisher nichts am Hut. Bin auf der Suche nach Alternativen zur Automationssoftware von Eltako auf FHEM gestoßen. Scheint mir das flexibelste System zu sein.

Im Anhang übrigens ein Bild von dem, was ich von Eltako alles daheim rumstehen hab und womit ich absolut unzufrieden bin. Wenn ich das nicht schon hätte, würde ich mir (glaube ich) ein Raspberry kaufen.

Solltest Du noch weitere Fragen haben oder Empfehlungen, nur raus damit.

Gruß

Rainer
Konfiguration:
- Raspberry Pi (3) mit EnOcean Pi
- komplette Hausinstallation von Eltako (EnOcean)
- 1-Wire Temperatursensoren
- mehrere Shelly 1

Joachim

So Rainer,

versuche mal die angehängte 00_TCM.pm.
mit folgender Definition:
define TCM120_1 TCM 120 com10@9600

wenns läuft, alles gut, dann Zeile 77 Log 1, "logausgabe Devicename $a[3]"; auskommentieren, sonst das fhem.log mitschicken.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Rainer S.

Hallo Joachim,

Bingo!

Habe Deine Anweisungen befolgt und es läuft.

Das TCM hat schon die ersten Signale empfangen. Aktuell wurden schon 13 Sensoren gefunden, ohne das auch nur ein Schalter gedrückt wurde.

Da muss ich mich jetzt erst mal weiter belesen, wie es jetzt weiter geht.

Dir möchte ich meinen besonderen Dank aussprechen.

Sollten wir das Ergebnis eventuell ins FHEM-Wiki stellen? Du bist schon länger dabei, macht das Sinn? Wenn ja, soll das nicht heißen, dass Du das machen sollst. Ich sehe das dann schon bei mir, damit ich der FHEM-Gemeinde auch etwas zurück geben kann.

Also, noch einmal vielen Dank. Du hast was gut bei mir.

Gruß

Rainer




Konfiguration:
- Raspberry Pi (3) mit EnOcean Pi
- komplette Hausinstallation von Eltako (EnOcean)
- 1-Wire Temperatursensoren
- mehrere Shelly 1

klaus.schauer

#13
Bitte ein Wiki zu dem Thema erstellen.

Ich kann das Modul 00_TCM ergänzen und einchecken. Die Zeile

use Win32::SerialPort;

führt aber bei Linux-Systemen zu Fehlermeldungen, da die Modul dort nicht vorhanden ist; jedenfalls auf einer FRITZ!box 7390 ist das ohne weiteres nicht lauffähig.

Joachim

#14
Moin Rainer,
super, dass es rennt.
Dann kann ich jetzt das ganze so umarbeiten, dass es unter Linux und Windows rennt, und dem Modulautor den entsprechenden Patch zukommen lassen.
@ Klaus:
Wenn Du das 00_TCM ergänzen kannst, das wäre super.
Die Ergänzung müsste in Zeile 21 sein, und zwar:

if( $^O =~ /Win/ ) {
require Win32::SerialPort;
} else {
require Device::SerialPort;
}

ist jetzt zwar aus der Hüfte geschossen und muß getestet werden.
Bein Wiki würde ich mich gerne heraushalten.
Ich glaube es reicht, wenn in der commandref folgendes stehen würde:
Define

    define <name> TCM [120|310] <device>

    First you have to specify the type of the EnOcean Transceiver Chip, i.e either 120 for the TCM120 or 310 for the TCM310.

    device can take the same parameters (@baudrate, @directio, TCP/IP, none) like the CUL, but you probably have to specify the baudrate: the TCM120 should be opened with 9600 Baud, the TCM310 with 57600 baud.
    Example:
        define BscBor TCM 120 /dev/ttyACM0@9600
        define TCM310 TCM 310 /dev/ttyACM0@57600
        define TCM310 TCM 310 com1@57600 # bei Windows BS


Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232