Homematic wired

Begonnen von Henne1977, 26 Januar 2013, 22:46:00

Vorheriges Thema - Nächstes Thema

Mirko Krause

Hallo,

ich habe ebenfalls einen HMW_Sen_SC_12_DR sowie einen HMW_IO_12_Sw14_DR und würde gerne die Eingänge (digital) in FHEM auswerten.

Kann mir vielleicht noch mal jemand sagen, wie genau die Channels auf digital umzustellen sind?

Muss man sich dazu die Dateien (10_HM485.pm, Device.pm, ConfigurationManager.pm, Util.pm?) herunterladen oder...?

Vielen Dank im voraus!
Raspberry Pi 2
HM485-LAN, HMW-Sen-SC-12-DR, HMW-IO-12-Sw14-DR, HMW-Sen-SC-12-FM, 4x HMW-LC-Sw2-DR (in Planung: EIB/KNX-Lan-Gateway)
Lichtsteuerung, Anwesenheitserkennung, Alarmmeldung

arestant

Hi,

Zitat von: mkfhem am 07 März 2015, 11:07:47

Muss man sich dazu die Dateien (10_HM485.pm, Device.pm, ConfigurationManager.pm, Util.pm?) herunterladen oder...?


wenn du für HM Wired das erste mal update machst, lade dir erstmal den letzen zip Package runter (FHEM-HMW485.zip). Ich glaub ich hab den letzen auf der Seite 58 hier im Thread gesehen.

Danach kannst du die "10_HM485.pm, Device.pm, ConfigurationManager.pm, Util.pm" aktualisieren.

Und "shutdown restart" nicht vergessen  ;)

Gruß
Paul

Ralf9

FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Mirko Krause

Hallo Paul,

vielen Dank, du hast mir sehr geholfen!

Das "Update" von "FHEM-HMW485.zip" war der entscheidene Hinweis (Seite 58 hier im Thread war auch richtig)! Ist das eigentlich immer so oder gibt es solche Updates auch woanders?
 
Vielleicht kannst du mir noch bei einem weiterhelfen: Bei meinem HMW_Sen_SC_12_DR (-> 12 Schaltkontakt-Eingänge) habe ich z.B. auf einem Eingang GND geschaltet und bei den anderen nicht
und in FHEM ist die SENSOR-Anzeige genau umgekehrt wie erwartet (1er STATE = off und die anderen = on). Kann man das irgendwie inverieren oder ...?

Viele Grüße
Mirko

@Ralf: gerade kam deine Nachricht, ich probier's noch mal mit der Version vom 25 Februar 2015, 15:28:44 ...
Raspberry Pi 2
HM485-LAN, HMW-Sen-SC-12-DR, HMW-IO-12-Sw14-DR, HMW-Sen-SC-12-FM, 4x HMW-LC-Sw2-DR (in Planung: EIB/KNX-Lan-Gateway)
Lichtsteuerung, Anwesenheitserkennung, Alarmmeldung

gevoo

Ich freue mich, daß die Wired- Komponenten offenbar langsam Verbreitung finden. Dann hat sich die Entwicklungsarbeit gelohnt.

An der Stelle: DANKE an die unermütlichen Tester.

Ich nehme diesen Post zum Anlaß, die akruellste Version anzuhängen, Quasi Stand von gestern.

Gruß gevoo

duebelpapst

Danke, werde es sofort testen.

Gruß
Stefan

arestant

Zitat von: mkfhem am 07 März 2015, 12:20:07
Hallo Paul,

vielen Dank, du hast mir sehr geholfen!

Freut mich, dass ich auch helfen konnte :)

Zitat
Das "Update" von "FHEM-HMW485.zip" war der entscheidene Hinweis (Seite 58 hier im Thread war auch richtig)! Ist das eigentlich immer so oder gibt es solche Updates auch woanders?

Wenn es in dem "update" Prozess noch nicht integriert ist, dann sucht man sich die Updates in den Treads. Manchmal wird der Update auf dem Github oder sonstigen liegen. Aber die Infos dazu sind immer im Forum.
 
Zitat
Vielleicht kannst du mir noch bei einem weiterhelfen: Bei meinem HMW_Sen_SC_12_DR (-> 12 Schaltkontakt-Eingänge) habe ich z.B. auf einem Eingang GND geschaltet und bei den anderen nicht
und in FHEM ist die SENSOR-Anzeige genau umgekehrt wie erwartet (1er STATE = off und die anderen = on).

Das ist das ganz normale Verhalten. GND oder Masse ins nun mal die logische "0". Die anderen von die genannten Inputs liegen intern über Pull-Up Widerstände mit "+" und werden dann STATE on haben bis man die Inputs mit GND auf "0" zieht.

Zitat
Kann man das irgendwie inverieren oder ...?

Ich habe noch selbst keine Erfahrung, wie man es am besten machen kann. Dachte zuerst an den Attribut "eventMap" (z.Bsp attr <xxxx> on:off off:on)
Mit dem dummy geht es, ob es mit den Inputs geht müsste mal probieren.

Aber vielleicht kann irgend ein Experte uns ein besseren Tip geben.

Viele Grüße
Paul

mago0211

Hallo gevoo

endlich habe ich mal angefangen auf meinem Testsystem die neuen Versionen von dir auszuprobieren. Soweit schaut es auch ganz gut aus ;D.
Eines ist mir aufgefallen im Vergleich zu meiner Version (0.3.48).

Bei den keys z.b. von einem HMW_IO_12_Sw7 werden bei mir keine Readings mehr angezeigt. Bei der alten Version wurde bei den Readings press_long bzw press_short angezeigt.

Ist das Verhalten so gewünscht?  :o

Danke und Gruß
Markus

Ralf9

@arestant @mkfhem

Mich hat das on/off beim HMW_Sen_SC_12_DR auch gestört.

Ich habe bei mir in der 10_HM485.pm  in der "sub HM485_ChannelDoUpdate" einige Änderungen vorgenommen.
Damit wird beim HMW_Sen_SC_12_DR genauso wie bei den Funkmodulen open/closed angezeigt. Damit passt es bei Kontakten.
Bei Schaltzuständen verwende ich devStateIcon "closed:on open:off"
   
Außerdem wird damit in der Übersicht aus "PRESS_SHORT 34" "Short 34"

Für was verwendet ihr den HMW_Sen_SC_12_DR?


sub HM485_ChannelDoUpdate($) {
my ($params)    = @_;

my $chHash    = $params->{chHash};
my $valueHash = $params->{valueHash};
my $name      = $chHash->{NAME};
my $doTrigger = $params->{doTrigger} ? 1 : 0;

my $deviceKey = uc( HM485::Device::getDeviceKeyFromHash($chHash));
HM485::Util::HM485_Log( 'HM485_ChannelDoUpdate: name = ' . $name);
readingsBeginUpdate($chHash);
# print Dumper($valueHash);

foreach my $valueKey (keys %{$valueHash}) {
my $value = $valueHash->{$valueKey};

if (defined($value)) {
# we trigger events only if necesary
HM485::Util::HM485_Log( 'HM485_ChannelDoUpdate: valueKey = ' . $valueKey . ' value = ' . $value . ' Alter Wert = ' . $chHash->{READINGS}{$valueKey}{VAL});
if (!defined($chHash->{READINGS}{$valueKey}{VAL}) ||
    $chHash->{READINGS}{$valueKey}{VAL} ne $value) {

if ( $valueKey eq 'STATE') {
if ( HM485::Device::isNumber($value)) {
if ( $value == 0) {
readingsBulkUpdate($chHash, $valueKey, 'off');
} else {
readingsBulkUpdate($chHash, $valueKey, 'on');
}
} else {
readingsBulkUpdate($chHash, $valueKey, lc( $value));
#- HM485::Util::HM485_Log( 'HM485_ChannelDoUpdate: setzen Reading1 fuer ' . $valueKey . ' auf ' . lc( $value));
}
} elsif ( $valueKey eq 'SENSOR') {
if ( HM485::Device::isNumber($value)) {
if ( $value == 0) {
readingsBulkUpdate($chHash, $valueKey, 'closed');
} else {
readingsBulkUpdate($chHash, $valueKey, 'open');
}
}
} else {
readingsBulkUpdate( $chHash, $valueKey, $value);
# HM485::Util::HM485_Log( 'HM485_ChannelDoUpdate: setzen Reading2 fuer ' . $valueKey . ' auf ' . lc( $value));
}

HM485::Util::logger( HM485::LOGTAG_HM485, 4, $name . ': ' . $valueKey . ' -> ' . $value);
# State noch aktuallisieren
HM485::Util::HM485_Log( 'HM485_ChannelDoUpdate: name = ' . $name . ' alter State = ' . $chHash->{STATE} . ' valueKey = ' . $valueKey . ' value = ' . $value);
if ( defined( $chHash->{STATE}) && $chHash->{STATE}) {
if ( $deviceKey eq 'HMW_LC_BL1_DR') {
$chHash->{STATE} = $valueKey . '_' . int( $value);
} else {
if ( $valueKey eq 'STATE') {
if ( HM485::Device::isNumber($value)) {
if ( $value == 0) {
$chHash->{STATE} = 'off';
} else {
$chHash->{STATE} = 'on';
}
} else {
$chHash->{STATE} = lc( $value);
#- HM485::Util::HM485_Log( 'HM485_ChannelDoUpdate: setzen STATE auf ' . lc( $value));
}
} elsif ( $valueKey eq 'SENSOR') {
if ( HM485::Device::isNumber($value)) {
if ( $value == 0) {
$chHash->{STATE} = 'closed';
} else {
$chHash->{STATE} = 'open';
}
}
} else {
if ( substr( $value,0,6) eq 'PRESS_') {
$value = lc($value);
$chHash->{STATE} = ucfirst(substr($value,6));
} else {
$chHash->{STATE} = $valueKey . '_' . $value;
}
}
}
}
}
}
}

readingsEndUpdate($chHash, $doTrigger);

}


Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

arestant

Zitat von: Ralf9 am 11 März 2015, 20:27:43

Für was verwendet ihr den HMW_Sen_SC_12_DR?


Ich habe nur den HMW_IO_12_Sw14_DR. Diese nutze ich als "Lichtschaltzentrale" für die komplette Beleuchtung im Haus.

Gruß
Paul

gevoo

#955
Hallo Paul, hallo Markus,

da ein Key normalerweise kein reading hat, werden die press_long und press_short nach dem Auslösen des events gelöscht. Somit ist der Channel dann sauber.

Gruß gevoo

mago0211

Hallo gevoo,

ahja Ok :D .

Habe noch eine frage zur Performance vor allem an die Tester. Gestern habe ich das ganze mal auf meinem Einsatzsystem getestet. Mir ist aufgefallen das die Performance im Vergleich zur alten Konfiguration schon spürbar langsamer geworden ist.
Kann das hier sonst noch jemand bestätigen?

Gruß
Markus

mc309

Hallo gevoo und Gerald,

wie ist aktuell eigentlich nun eigentlich der Stand bezüglich der Analogeingänge ?
Haben diese nun funktioniert oder stehen hier noch weitere Tests an ?
Hat von euch schonmal jemand probiert mit den Analogeingängen Frequenzen (S0-Impulse) zu messen ?
Klappt das ?

Gruß,
Michael

geri

#958
Zitat von: mc309 am 13 März 2015, 09:04:39
wie ist aktuell eigentlich nun eigentlich der Stand bezüglich der Analogeingänge ?
Haben diese nun funktioniert oder stehen hier noch weitere Tests an ?
hi Michael!

es gabe bereits kleine erfolge, aber die funktion ist noch nicht gegeben.

Zitat von: mc309 am 13 März 2015, 09:04:39
Hat von euch schonmal jemand probiert mit den Analogeingängen Frequenzen (S0-Impulse) zu messen ?
Klappt das ?
nein, da ich derzeit nicht die möglichkeit dazu habe.

gruss
Gerald
Raspberry mit COC für HM
RS485 USB für HMW

mc309

Hallo Gerald,
schade - was wäre der nächste Schritt zum Testen ? Meine Installation mit dem HMW-IO-12-Sw14-DR ist nun soweit angeschlossen und
ich könnte hier beim Testen mithelfen.

Gruß,
Michael