Fhem mit Raspberry, CoC und HM

Begonnen von Banana_Joe, 24 Januar 2013, 19:41:05

Vorheriges Thema - Nächstes Thema

Banana_Joe

Hallo Zusammen,

ich stelle mich erstmal kurz und knapp vor.

Ich bin 31 Jahre und plane gerade ein projekt für meine neue etw, heimautomatisierung hat mich schon immer begeistert und nun soll es soweit sein.

Programmiererfahrung besteht bisher in S5,S7, Codesys, C# und Assembler. Perl und Linux fehlanzeige.


Zu meinem Projekt:

Ich habe schon seit längerer zeit einen rpi hier herumliegen der auf eine verwendung gewartet hat. Zuerst wollte ich mit einer FB starten jedoch habe ich mich dann für den rpi entschieden.

Nach ein wenig im netz stöbern bin ich dann beim CoC von busware gelandet und damit im zusammenhang auch mit fhem.

Ich stelle mir das ganze folgendermaßen vor:

- Sensoren und aktoren von homematic (ein funk zwischenstecker ist schon vorhanden)
- Steuerung der beleuchtung (wohnzimmer, küche, flur, schlafzimmer, büro), teilweise auch dimmbar
- Heizungssteuerung (Wohnzimmer, Bad, schlafzimmer und büro)
- Überwachung der fenster (Wohnzimmer, Bad, schlafzimmer und büro)
- Feuermelder in jedem raum
- Bewegungsmelder im flur als alarm bei abwesenheit
- Bewegungsmelder im keller als alarm (überbrückung zweier stockwerke)
- Bedienung über wandpanel
- Bedienung über iphone/ipad, auch von unterwegs


Natürlich nicht alles auf einmal sondern alles step by step.

Ein paar fragen tun sich selbstverständlich auf:

der CoC meldet sich ordnungsgemäß mit
root@raspberrypi:~# hexdump -C /sys/bus/i2c/devices/0-0050/eeprom
00000000  43 4f 43 20 56 31 2e 31  20 46 55 4c 4c 20 32 30  |COC V1.1 FULL 20|
00000010  31 32 2d 30 39 2d 31 37  00 ff ff ff ff ff ff ff  |12-09-17........|
00000020  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|

1.) Muss der CoC für die HM Geräte besonders geflast werden? Fhem zeigt den Funkstecker nicht mit autocreate an

2.) Hat jemand sonstige tipps? bin für alle hinweise, anregungen und kritik offen.


Zudem würde ich mein vorhaben gerne genau dokumentieren damit andere die evtl. ähnliches vorhaben und sich nicht alles zusammensuchen wollen einfacher haben.

Zum CoC gibt noch nicht so viel zu lesen. Google spuckt da recht wenig aus mMn. Daher fände ich so eine DAU anleitung garnicht schlecht.

Auch wenn das board für den versierten user gedacht ist, warum soll man es mit einfachen anleitungen nicht jedem zugänglich machen.


VG
Banana_Joe




Rohan

Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

Banana_Joe

Ja danke den link hatte ich schon gelesen. Da hab ich auch das image her. Hatte mir nur nicht die frage wegen dem flashen beantwortet. Hab über diese CUL etc. gehört das man die für FS20 oder HM jeweils flashen muss daher bin ich davon ausgegangen das ist bei dem CoC auch so.

Der HM schaltaktor lässt sich nun über den FHEM steuern.

Durch eine google groups bin ich über folgende zeilen gestolpert:

Änderung der fhem.cfg

 define COC_RPi CUL /dev/ttyAMA0@38400 0000
 attr COC_RPi rfmode HomeMatic

Schonmal sehr schön das ganze und ein erstes erfolgserlebnis ;).

Jetzt heist es sich mit FHEM auseinanderzusetzen.

FHEMmobile funktioniert leider noch nicht da es laut der hilfe z.zt. probleme mit homematic gibt. Ich hoffe die fixen das zeitnah.


- Wenn ich den befehl rename eingebe bleibt die seite nach dem ausführen leer. Der befehl wird auch nicht ausgeführt.
- Stimmt es das ich bei FHEM mobile einige einstellungen bearbeiten kann wie z.b. namen, diese dann aber nur für FHEMmobile gelten? Der FHEM server wird nicht upgedatet.


Rohan

[quote title=Banana_Joe schrieb am Fr, 25 Januar 2013 17:38]
- Wenn ich den befehl rename eingebe bleibt die seite nach dem ausführen leer. Der befehl wird auch nicht ausgeführt.
ZitatSchon mal auf "save" gedrückt und anschließend ein "rereadcfg" mit Enter in der FHEM-Befehlszeile abgesetzt?

Zitat- Stimmt es das ich bei FHEM mobile einige einstellungen bearbeiten kann wie z.b. namen, diese dann aber nur für FHEMmobile gelten? Der FHEM server wird nicht upgedatet.

Keine Ahnung, nutze ich nicht.

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

Banana_Joe

Ich habe natürlich nicht die eingabetaste sondern auf save gedrückt.

Rename wird angenommen jedoch sagt er mir Please define CUL_HM_Switch_XXXXX first

Nach dem define kommt CUL_HM_switch_XXXXX already defined, delete it first

Banana_Joe

Mühsam ernährt sich das eichhörnchen ...

Habe heute meinen 2 fach wandtaster bekommen

nun wollte ich als ersten versuch mit dem taster die schaltsteckdose schalten (über fhem kein pair).

Also taster oben ein und unten aus (nur als versuch).

Aber egal ob ich taster 1 oder 2 drücke es wird nur Btn1 ausgeführt.

define szTasterBett CUL_HM 1D3525
attr szTasterBett devInfo 020000
attr szTasterBett firmware 1.1
attr szTasterBett hmClass sender
attr szTasterBett model HM-PB-2-WM55
attr szTasterBett room Schlafzimmer
attr szTasterBett serialNr JEQXXXXXX
attr szTasterBett subType remote

define FileLog_szTasterBett FileLog /var/log/fhem/szTasterBett-%Y.log szTasterBett
attr FileLog_szTasterBett logtype text

# HM-PB-2-WM55 Channel 01
define szTasterBett1 CUL_HM 1D352501

# HM-PB-2-WM55 Channel 02
define szTasterBett2 CUL_HM 1D352502

define szTasterBettOn notify szTasterBett1 set wzStehLampe On

define szTasterBettOn notify szTasterBett2 set wzStehLampe Off

Zrrronggg!

Zitatdefine szTasterBettOn notify szTasterBett1 set wzStehLampe On

define szTasterBettOn notify szTasterBett2 set wzStehLampe Off

Also erstmal: Das die zweite Aktion genau heisst wie die erste wird sie nie ausgeführt, denn in deinem log müsste irgendwo stehen:

define szTasterBettOn  allready exists, please delete it first.

Ich denke du solltest als erstes mal z.B. schreiben:


define szTasterBettOn notify szTasterBett1 set wzStehLampe On
define szTasterBettOff notify szTasterBett2 set wzStehLampe Off

Weiter reingesehen habe ich noch nicht und es wäre sicher auch wichtig, was für einen Taster du da genau hast.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Banana_Joe

Hi Zrrrronggg!

So wie du es korrigiert hast hatte ich es auch probiert, ist dann nacher beim hin und her kopieren passiert. Funktionieren tut es trotzdem nicht.

Als Taster verwende ich den HM-PB-2-WM55 (Funk-Wandtaster 2-fach).

Zrrronggg!

Was steht im Log, wenn du Taster 2 drückst?
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Rohan

Zitat von: Zrrronggg! schrieb am Fr, 01 Februar 2013 12:02define szTasterBettOn notify szTasterBett1 set wzStehLampe On
define szTasterBettOff notify szTasterBett2 set wzStehLampe Off

Sorry, aber muss das nicht lauten:
Zitatdefine szTasterBettOn notify szTasterBett1 set wzStehLampe On
define szTasterBettOff notify szTasterBett1 set wzStehLampe Off
?
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

Banana_Joe

da taucht nur nur Btn1 als on und longon auf.

@Rohan ich möchte als test mit dem einen taster ein und mit dem anderen ausschalten (zweifachtaster). Macht keinen sinn aber gilt nur als versuch um auch den zweiten kanal anzusprechen.

Zrrronggg!

Zitatda taucht nur nur Btn1 als on und longon auf.

Ok (oder vielmehr: nicht)

Hm.


Warte mal: Ich habe auch einen (andren) HM 2fach Taster, da musst ich jede taste einzeln pairen. Hast du das gemacht?

Bei mir sieht das so aus:

define Licht_Terrasse CUL_HM 15EE2602
attr Licht_Terrasse devInfo 020100
attr Licht_Terrasse firmware 1.11
attr Licht_Terrasse hmClass receiver
attr Licht_Terrasse model HM-LC-SW2-PB-FM
attr Licht_Terrasse room Aussen
attr Licht_Terrasse serialNr IEQ0025936
attr Licht_Terrasse subType switch


define Licht_Terrassentuer CUL_HM 15EE26
attr Licht_Terrassentuer devInfo 020100
attr Licht_Terrassentuer firmware 1.11
attr Licht_Terrassentuer hmClass receiver
attr Licht_Terrassentuer model HM-LC-SW2-PB-FM
attr Licht_Terrassentuer room Wohnzimmer_unten
attr Licht_Terrassentuer serialNr IEQ0025936
attr Licht_Terrassentuer subType switch
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Banana_Joe

So ich habs jetzt mal genau so gemacht aber in beiden logfiles steht nur was von Btn1

logfile taster szTasterBett1
2013-01-31_20:29:21 szTasterBett1 Btn1 on (to broadcast)
2013-01-31_20:29:23 szTasterBett1 Btn1 off (to broadcast)
2013-01-31_20:29:27 szTasterBett1 Btn1 off (to broadcast)
2013-01-31_20:29:28 szTasterBett1 Btn1 off (to broadcast)



logfile taster szTasterBett2
2013-02-02_10:16:08 szTasterBett2 Btn1 off (to broadcast)
2013-02-02_10:16:09 szTasterBett2 Btn1 onLong (to broadcast)
2013-02-02_10:16:11 szTasterBett2 Btn1 offLong (to broadcast)
2013-02-02_10:16:11 szTasterBett2 Btn1 offLong (to broadcast)
2013-02-02_10:16:11 szTasterBett2 Btn1 offLong (to broadcast)
2013-02-02_10:16:12 szTasterBett2 Btn1 offLong (to broadcast)
2013-02-02_10:16:12 szTasterBett2 Btn1 offLong (to broadcast)
2013-02-02_10:16:12 szTasterBett2 Btn1 offLong (to broadcast)
2013-02-02_10:16:13 szTasterBett2 Btn1 onLong (to broadcast)
2013-02-02_10:16:13 szTasterBett2 Btn1 onLong (to broadcast)
2013-02-02_10:16:14 szTasterBett2 Btn1 onLong (to broadcast)
2013-02-02_10:16:36 szTasterBett2 Btn1 off (to broadcast)
2013-02-02_10:16:38 szTasterBett2 Btn1 on (to broadcast)




# HM-PB-2-WM55 Channel 02
define szTasterBett1 CUL_HM 1D352502
attr szTasterBett1 devInfo 020000
attr szTasterBett1 firmware 1.1
attr szTasterBett1 hmClass sender
attr szTasterBett1 model HM-PB-2-WM55
attr szTasterBett1 room Schlafzimmer
attr szTasterBett1 serialNr JEQXXXXXX
attr szTasterBett1 subType remote

define FileLog_szTasterBett2 FileLog /var/log/fhem/szTasterBett2-%Y.log szTasterBett2
attr FileLog_szTasterBett2 logtype text


# HM-PB-2-WM55 Channel 01
define szTasterBett2 CUL_HM 1D3525
attr szTasterBett2 devInfo 020000
attr szTasterBett2 firmware 1.1
attr szTasterBett2 hmClass sender
attr szTasterBett2 model HM-PB-2-WM55
attr szTasterBett2 room Schlafzimmer
attr szTasterBett2 serialNr JEQXXXXXX
attr szTasterBett2 subType remote

define FileLog_szTasterBett1 FileLog /var/log/fhem/szTasterBett1-%Y.log szTasterBett1
attr FileLog_szTasterBett1 logtype text


define szTasterBettOn notify szTasterBett1 set wzStehLampe On

define szTasterBettOff notify szTasterBett2 set wzStehLampe Off

Banana_Joe

Also das mit dem taster will nicht so ganz evtl. versteh ich auch die arbeitsweise falsch

Der taster ist ja ein zweifachtaster als kommandos bekomme ich vom taster:

Oberer taster
- Btn1 on (to Broadcast) (kurz gedrückt)
- Btn1 onLong (to Broadcast) (lang gedrückt)

Unterer taster
- Btn1 off (to Broadcast) (kurz gedrückt)
- Btn1 offLong (to Broadcast) (lang gedrückt)

Wofür sollte dann ein zweiter channel gepaired werden wenn doch alle info´s da sind?

Müsste es dann nicht folgendermaßen aussehen?

# HM-PB-2-WM55
define szTasterBett CUL_HM 1D3525
attr szTasterBett devInfo 020000
attr szTasterBett firmware 1.1
attr szTasterBett hmClass sender
attr szTasterBett model HM-PB-2-WM55
attr szTasterBett room Schlafzimmer
attr szTasterBett serialNr JEQXXXXXX
attr szTasterBett subType remote

define FileLog_szTasterBett FileLog /var/log/fhem/szTasterBett-%Y.log szTasterBett
attr FileLog_szTasterBett logtype text

define szTasterBettOn notify szTasterBett:Btn1.on set wzStehLampe on

define szTasterBettOff notify szTasterBett:Btn1.off set wzStehLampe off

Banana_Joe

Ok ich habs :)

erstmal auf 5.2 upgedated mit dem befehl updatefhem

und dann muss der code folgendermaßen aussehen:

define szTasterBett CUL_HM 1D3525
attr szTasterBett devInfo 020000
attr szTasterBett firmware 1.1
attr szTasterBett hmClass sender
attr szTasterBett model HM-PB-2-WM55
attr szTasterBett room Schlafzimmer
attr szTasterBett serialNr JEQXXXXXX
attr szTasterBett subType remote

define FileLog_szTasterBett FileLog /var/log/fhem/szTasterBett-%Y.log szTasterBett
attr FileLog_szTasterBett logtype text

# HM-PB-2-WM55 Channel 1
define szTasterBett1 CUL_HM 1D352501
attr szTasterBett1 model HM-PB-2-WM55
attr szTasterBett1 room Schlafzimmer

# HM-PB-2-WM55 Channel 2
define szTasterBett2 CUL_HM 1D352502
attr szTasterBett2 model HM-PB-2-WM55
attr szTasterBett2 room Schlafzimmer


define szTasterBettOn notify .*szTasterBett1.Short.* set wzStehLampe on

define szTasterBettOff notify .*szTasterBett2.Short.* set wzStehLampe off