Homematic wired

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

Vorheriges Thema - Nächstes Thema

RoBra81

Zitat von: Ralf9 am 25 Februar 2015, 12:43:07
Hallo RoBra81,

hast Du schon versucht das fehlende "</script>" einfach im code einzufügen:

$data{FWEXT}{test}{SCRIPT} = 'hm485.js?' . gettimeofday()
. '"></script><script type="text/javascript" charset="UTF-8';


Gruß Ralf

Das funktioniert erstmal - ob's eine Besserung beim WVC-Problem gibt, kann ich erst heute Abend zu Hause feststellen...

Danke

hglaser

Hallo

Ich bin gerade dabei zwei thermoelektrische Stellantriebe über wired anzusteuern und habe dafür einen "HBW_CC_VD2_T" mit Hilfe von Thorstens HMW Modul programiert.
Habe eine neue hbw_cc_vd2_t.pm erstellt und zufällig ist eine Parametereinstellung 2 Byte groß und erstreckt sich von 0x0F bis 0x10 im eeprom.
Das Problem dabei ist, daß in Device.pm in der sub getRawEEpromData($;$$$$) nur immer eine Zeile der eeprom Daten ausgelesen werden.
my $retVal = '';
for ($blockCount = $blockStart; $blockCount < (ceil($addrMax / $blockLen)); $blockCount++) { # von 0 bis 64
my $blockId = sprintf ('.eeprom_%04X' , ($blockCount * $blockLen));

if ($devHash->{READINGS}{$blockId}{VAL}) {
$retVal.= $devHash->{READINGS}{$blockId}{VAL};
} else {
$retVal = 'FF' x $blockLen;
}
if (length($retVal) / 2 >= $len) {
last;
}
}

somit ist natürlich mein 2 Byte Wert abgeschnitten, da er sich in meinem Fall über  2 Zeilen erstreckt und in FHEM zeigt er dadurch nur Werte die kleiner als 254 sind richtig an. Ich könnte natürlich den Speicherplatz einfach ein wenig verschieben, sodaß die ganzen 2 Bytes in eine Zeile passen.

die Frage ist jetzt, ob sich fertige HMW Geräte auch so verhalten? Wenn dem so ist müsste man getRawEEpromData wohl etwas umbauen.

Grüße Harald

gevoo

Hallo Ronny,

danke für Deine gute Vorarbeit bei der Fehlersuche. Ich habe es geändert.

Gruß gevoo

gevoo

Hallo Harald,

ich habe gerade noch einmal einige Configs durchgesehen. Da ist kein Wert größer als 255. Deshalb sind an der Stelle 2 Byte nicht erforderlich.
getRawEEpromData liefert Dir das Ergebnis entsprechend Deiner übergebenen Parameter $start, $len, $hex. Damit kannst Du die Lage der benötigten bytes beeinflussen.

Gruß gevoo

gevoo

#889
Hallo Gerald,

ZitatZitat von: gevoo am Gestern um 19:18:41

    Aber wenn Dein HMW-IO-12-Sw14-DR neu ist, müßte die Werkseinstellung analog sein. Dann könnten wir mal probieren ob er Signale sendet, was ja eigentlich der Fall sein müßte. Dann kann ich die Auswertesoftware anpassen. Will sagen, wenn Du Lust hast mit zu Testen, dann könnten wir das Teil zusammen zum Laufen bringen.

hallo gevoo!

wenn es in deinen augen sinnvoll ist könnte ich auch mithelfen.
Wenn Du Deinen HMW-IO-12-Sw14-DR in Werkseinstellung zurückgesetzt hast, kannst Du bitte mal probieren, ob beim Anlegen einer kleinen Spannung (z.B. 1,5V) am Analogeingang, im Eventmonitor etwas zu sehen ist. Gleichzeitig müßte auch ein Eintrag im log zu sehen sein.

Gruß gevoo

gevoo

Hallo Jo,
ZitatHallo,

ich möchte auch sehr bald mit HMW anfangen und habe mir neben dem interface auch einen HMW-Sen-SC-12-DR sowie einen HMW-IO-12-SW7-DR bestellt. Sind diese Geräte schon funktionsfähig in fhem?

schöne Grüße
Jo
Ja die wurden hier schon getestet und funktionieren, bis auf einige kleine Einschränkungen.

Gruß gevoo

geri

Zitat von: gevoo am 25 Februar 2015, 15:05:09
Wenn Du Deinen HMW-IO-12-Sw14-DR in Werkseinstellung zurückgesetzt hast, kannst Du bitte mal probieren, ob beim Anlegen einer kleinen Spannung (z.B. 1,5V) am Analogeingang, im Eventmonitor etwas zu sehen ist. Gleichzeitig müßte auch ein Eintrag im log zu sehen sein.
hallo gevoo!

werkseinstellungen? ich glaube das geht bei diesem modul nicht!?

ich habe an der klemme 2.4 / I1 = HMW_IO_12_Sw14_21 eine 9V blockbatterie angeklemmt. natürlich zu GND.

anbei die logs.

eventmonitor 2015-02-25 15:39:43.816 HM485 HMW_IO_12_Sw14_21 VALUE: 0
2015-02-25 15:39:43.972 HM485 HMW_IO_12_Sw14_21 VALUE: 1023
2015-02-25 15:39:44.116 HM485 HMW_IO_12_Sw14_21 VALUE: 0


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

gevoo

Hallo Gerald,

kann ich die Zeile
2015-02-25 15:39:43.972 HM485 HMW_IO_12_Sw14_21 VALUE: 1023
als den Moment interpretieren, in dem Du die Spannung angelegt hast?
Kannst Du das gleiche noch einmal mit 1,5 V machen. Nur um zu sehen, ob der Wert im Event kleiner wird.

Gruß gevoo

Ralf9

Hallo Gerald,

kannst Du mal, um die Konfiguration zu überprüfen, folgendes durchführen:

- "save config" ausführen und dann in der "fhem/log/fhem.save" die Zeilen mit  .eeprom_ auslesen
- einen analogen Eingang von digital auf analog umstellen
- "save config" ausführen und die Zeilen mit  .eeprom_ auslesen
- einen digitalen Eingang von digital auf Frequenz umstellen
- "save config" ausführen und die Zeilen mit  .eeprom_ auslesen

Wenn Du einen Eingang auf analog umgestellt hast und eine Spannung anlegst,  mußt Du evtl ein "get state" ausführen damit sich der Wert aktualisiert.

Laut der xml-Datei sind die Eingänge per default auf digital, dh. "FF" bedeutet alle Eingänge digital.
Adresse 8  Bit 0-5 sind die 6 analogen Eingänge.

Hier ist ein Beispiel:

setstate HMW_IO_12_Sw14 ACK                                                       
setstate HMW_IO_12_Sw14 2015-01-14 16:02:28 .eeprom_0000 FFFFFFFFFFFFFFFFF9FFFFFFFFFFFFFF
setstate HMW_IO_12_Sw14 2015-01-14 16:02:28 .eeprom_0010 012CFFFFFFFFFFFFFFFFFFFFFFFFFFFF
setstate HMW_IO_12_Sw14 2015-02-09 16:22:26 state ACK


Bei dem "F9" im Beispiel müssten Eingang 2 + 3 auf analog umgestellt sein.


Hier sind die Daten aus der xml-Datei:

6 analoge Eingänge (0–10 V, 10 Bit Auflösung) 
DIGITAL_ANALOG_INPUT
address step="0.1" index="8.0       -> Adr 08  Bit 0-5
  ANALOG_INPUT
  DIGITAL_INPUT" default="true

address step="1" index="10"         -> Adr 10 - 15 jeweils 1 Byte
  CALIBRATION min="-127" max="127"  offset="127


6 digitale Eingänge (TTL)
DIGITAL_INPUT
address step="0.1" index="9.0"      -> Adr 09  Bit 0-5
  FREQUENCY_INPUT
  DIGITAL_INPUT" default="true

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

geri

Zitat von: gevoo am 25 Februar 2015, 16:45:00
kann ich die Zeile
2015-02-25 15:39:43.972 HM485 HMW_IO_12_Sw14_21 VALUE: 1023
als den Moment interpretieren, in dem Du die Spannung angelegt hast?
hallo gevoo!

ja das ist der moment an dem ich den 9V block angeklemmt habe.

leider bekomme ich bei einer 1,5V batterie kein event. keine ahnung ob es daran liegt das sie nur mehr 1V lt. messgerät liefert. aber die eingänge sind doch von 0-10V mit einer 10 bit auflösung!?

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

geri

Zitat von: Ralf9 am 25 Februar 2015, 18:32:46
- "save config" ausführen und dann in der "fhem/log/fhem.save" die Zeilen mit  .eeprom_ auslesen
- einen analogen Eingang von digital auf analog umstellen
- "save config" ausführen und die Zeilen mit  .eeprom_ auslesen
- einen digitalen Eingang von digital auf Frequenz umstellen
- "save config" ausführen und die Zeilen mit  .eeprom_ auslesen
hallo Ralf!

habe diese drei schritte gemacht und die files auf den io12 sw14 reduziert und angehängt.

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

gevoo

Hallo Gerald,

das könnte bedeuten, daß dein Eingang noch auf digital steht. Sonst müßte er auf die 1,5 V reagieren.

Gruß gevoo

geri

hallo Gevoo!

nein der steht auf analog.

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

Ralf9

Hallo Gerald,

laut den save Dateien waren die beiden ersten Eingänge am Anfang jeweils auf digital, jetzt stehen Sie auf analog bzw. Frequenz.
Bekommst Du einen Wert wenn Du beim Kanal 1 "get state" ausführst? 

Gruß Rasf
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

gevoo

Hallo Gerald,

entschuldige, ich habe mich nicht präzise genug ausgedrückt. Ich meine nicht, daß Du ihn falsch eingestellt hast, sondern das mit der Config noch etwas nicht hinhaut. Also Fehlersuche und Nacharbeit für mich.
Wenn ich Deine eeprom- Werte richtig interpretiere, dann steht er wirklich noch auf digital.
Wir sollten Ihn mal per RAW auf analog umstellen und schauen ob er dann richtig misst.
Ich sehe dann in der Config nach, welcher Parameter nicht richtig übernommen wird.

Gruß gevoo