Ist die Steuerung meiner Danfoss Air Lüfung per FHEM möglich?

Begonnen von marcus42, 29 April 2013, 18:00:45

Vorheriges Thema - Nächstes Thema

fireball

Hi,

was mach ich denn falsch, die Anlage läuft und ich bekomme alle Werte, aber ich möchte bei der Anlage jetzt die VentilationRate setzen, um einen PartyModus zu etablieren.
Ich steuere die Anlage jetzt abhängig von einem CO2 Sensor.
Aber die KWL macht nichts... ich kann einen Wert setzten, aber wenn ich ihn wieder auslese, dann ist es der alte, die Rate steht immer auf 10, aber 10 wäre eigentich aus!? Komisch....


Get or set mode of system (demand, schedule,energy saving, manual).
Get or set setting of bypass (if supported byDanfoss Air unit type)
Get or set ventilation rate in manual mode.
Note regarding manual mode:
The Danfoss Air system supports 10 differentventilation rates in manual mode. The 10 rates are mapped to the command class values as described here:
Off => 10
1...99 => 10,20,30,40,50,60,70,80,90
On => 255

Liegts an automatic und manual?! Mir kommt grad ne Idee... muss ich erst einmal set: 255 machen und dann ein set: 90 um die anlage in den ManualMode zu versetzen und dann auf 90 zu stellen?!

VG + Danke!
René

fireball

Kann mir einer bei meinem Problem helfen? Wie schalte ich die Anlage zwischen Manual und Automatic Modus um?
VG+Danke
René

fireball


marcus42

Mit der originalen FB oder der Windows Software erst mal in den manuellen Modus schalten.

Den Automatikmodus der KWL hab ich schon seit Jahren nicht mehr in Gebrauch.

Über das Modul den Modus umschalten geht (noch) nicht.


Gesendet von iPhone mit Tapatalk Pro

fireball

Hi Marcus, dann wirds mir jetzt auch klar, warum da nix geht. :)

OK, dass werde ich nochmal probieren.
Ich habe schon gedacht, ich mach was falsch oder es geht bei mir nicht oder oder oder...

Ist noch jemand an dem Modul dran oder ist die Entwicklung eingestellt?
Weil die Danfoss-Lüftungen bekommst ja auch nicht mehr zu kaufen geschweige denn die Software für Windows zum Download.

VG
René




marcus42

Ich glaube ich bin der einzige der daran geschraubt hat :-)

Windows Software kann ich Dir evtl. zukommen lassen. Schreib mal ne DM


Gesendet von iPhone mit Tapatalk Pro

fireball

OK, ich schreib dir noch ne PM.

Anonsten wäre es cool, wenn man das nochmal ein bisl beleben könnte.

Aktuell steuere ich die Anlage mit ne ZWAVE Powerplug und schalte die komplette Anlage in Abhängigkeit eines CO2 Senors ein und aus.
Aber halt hart, leider hat die Anlage ja kein OFF... viell. ja doch über die ZWAVE STeuerung?!?

The Danfoss Air system supports 10 differentventilation rates in manual mode. The 10 rates are mapped to the command class values as described here:
Off => 10

Über die Fernbedienung meine ich war 1 immer die kleineste Stufe?!

VG
René

fireball

Hallo Freunde,

lang ist es her... ich bin immernoch unzfrieden mit der Steuerung meiner Lüftung auch wenn @Marcus42 hier super Vorarbeit geleistet hatte.

Ich habe mich jetzt nochmal in das Thema eingegraben. Meine aktuelle Steuerung war, wie schon beschrieben, per ZWAVE Plug die Anlage ein und auszuschalten.
Und aufgrund des co2mini quasi eine Sonderlüftung zu etablieren. (nennen wir es Boost :) )

Warum habe ich das gemacht... die Anlage muss in meinem Haus nicht druchlaufen... soviel Luft kann ich gar nicht verbrauchen und es spart Strom, ich habe die Lüftung nur nachts laufen lassen, damit frische kühle Luft im Sommer rein kommt und ich beim Schlafen frische Luft habe.

Jetzt habe ich, mal auf der Danfoss Seite gegooglet und noch einen aktuelleren Link CC (siehe Bilder gefunden) und mal gekauft.
Lüftung exkludet und an den Linx CC angebunden...
Danfoss sagt, man kann dann die Lüftung auch per App koppeln, per Alexa steuern... und ich dachte, viell komme ich über HTTP Request im heimischen Netzwerk eher an die restlichen Funktionen.

Leider ist alle gut abgesichert und auch mit Proxies dazwischen bin ich nicht an den Datenverkehr gekommen.

Der Danfoss Link CC kann !!! die Lüfung auf NULL !!! Setzen und damit ausschalten...
Es gibt auch einen Boost Modus... (kann mich nicht erinnern das es den im alten CCM gab...)
Lüfterstufen lassen sich manuell steuern... oder die Anlage macht es selber...

Wie kann ich jetzt helfen, die restlichen Funktionen in das Modul zu bekommen... ich kann nicht wirklich PERL aber ich bin auch nicht unerfahren...
Geht das irgendwie mit Try&Error? Marcus42 hatte ja mal alle CommandCLassen hier angehangen..
Da gibts noch soviel mehr:
<cmd_class key="0x39" version="1" name="COMMAND_CLASS_HRV_CONTROL" help="Command Class Hrv Control" read_only="False" comment="">
<cmd key="0x05" name="HRV_CONTROL_BYPASS_GET" help="Hrv Control Bypass Get" comment=""/>
<cmd key="0x06" name="HRV_CONTROL_BYPASS_REPORT" help="Hrv Control Bypass Report" comment="">
<param key="0x00" name="Bypass" type="BYTE" typehashcode="0x01" comment="">
<valueattrib key="0x00" hasdefines="False" showhex="True"/>
</param>
</cmd>
<cmd key="0x04" name="HRV_CONTROL_BYPASS_SET" help="Hrv Control Bypass Set" comment="">
<param key="0x00" name="Bypass" type="BYTE" typehashcode="0x01" comment="">
<valueattrib key="0x00" hasdefines="False" showhex="True"/>
</param>
</cmd>
<cmd key="0x02" name="HRV_CONTROL_MODE_GET" help="Hrv Control Mode Get" comment=""/>
<cmd key="0x03" name="HRV_CONTROL_MODE_REPORT" help="Hrv Control Mode Report" comment="">
<param key="0x00" name="Properties1" type="STRUCT_BYTE" typehashcode="0x07" comment="">
</param>
</cmd>
<cmd key="0x01" name="HRV_CONTROL_MODE_SET" help="Hrv Control Mode Set" comment="">
<param key="0x00" name="Properties1" type="STRUCT_BYTE" typehashcode="0x07" comment="">
<fieldenum key="0x00" fieldname="Mode" fieldmask="0x1F" shifter="0">
</fieldenum>
<bitfield key="0x01" fieldname="Reserved" fieldmask="0xE0" shifter="5"/>
</param>
</cmd>
<cmd key="0x0A" name="HRV_CONTROL_MODE_SUPPORTED_GET" help="Hrv Control Mode Supported Get" comment=""/>
<cmd key="0x0B" name="HRV_CONTROL_MODE_SUPPORTED_REPORT" help="Hrv Control Mode Supported Report" comment="">
<param key="0x00" name="Properties1" type="STRUCT_BYTE" typehashcode="0x07" comment="">
<fieldenum key="0x00" fieldname="Manual Control Supported" fieldmask="0x0F" shifter="0">
<fieldenum value="Bypass Open Close"/>
<fieldenum value="Bypass Auto"/>
<fieldenum value="Modulated Bypass"/>
<fieldenum value="Ventilation Rate"/>
</fieldenum>
<bitfield key="0x01" fieldname="Reserved" fieldmask="0xF0" shifter="4"/>
</param>
<param key="0x01" name="Bit Mask" type="BITMASK" typehashcode="0x06" comment="">
<bitmask key="0x00" paramoffs="255" lenmask="0x00" lenoffs="0"/>
</param>
</cmd>
<cmd key="0x08" name="HRV_CONTROL_VENTILATION_RATE_GET" help="Hrv Control Ventilation Rate Get" comment=""/>
<cmd key="0x09" name="HRV_CONTROL_VENTILATION_RATE_REPORT" help="Hrv Control Ventilation Rate Report" comment="">
<param key="0x00" name="Ventilation Rate" type="BYTE" typehashcode="0x01" comment="">
<valueattrib key="0x00" hasdefines="False" showhex="True"/>
</param>
</cmd>
<cmd key="0x07" name="HRV_CONTROL_VENTILATION_RATE_SET" help="Hrv Control Ventilation Rate Set" comment="">
<param key="0x00" name="Ventilation Rate" type="BYTE" typehashcode="0x01" comment="">
<valueattrib key="0x00" hasdefines="False" showhex="True"/>
</param>
</cmd>
</cmd_class>
<cmd_class key="0x37" version="1" name="COMMAND_CLASS_HRV_STATUS" help="Command Class Hrv Status" read_only="False" comment="">
<cmd key="0x01" name="HRV_STATUS_GET" help="Hrv Status Get" comment="">
<param key="0x00" name="Status Parameter" type="CONST" typehashcode="0x0B" comment="">
<const key="0x00" flagname="Outdoor Air temperature" flagmask="0x00"/>
<const key="0x01" flagname="Supply Air temperature" flagmask="0x01"/>
<const key="0x02" flagname="Exhaust Air temperature" flagmask="0x02"/>
<const key="0x03" flagname="Discharge Air temperature" flagmask="0x03"/>
<const key="0x04" flagname="Room temperature" flagmask="0x04"/>
<const key="0x05" flagname="Relative Humidity in room" flagmask="0x05"/>
<const key="0x06" flagname="Remaining filter life" flagmask="0x06"/>
</param>
</cmd>
<cmd key="0x02" name="HRV_STATUS_REPORT" help="Hrv Status Report" comment="">
<param key="0x00" name="Status Parameter" type="CONST" typehashcode="0x0B" comment="">
<const key="0x00" flagname="Outdoor Air temperature" flagmask="0x00"/>
<const key="0x01" flagname="Supply Air temperature" flagmask="0x01"/>
<const key="0x02" flagname="Exhaust Air temperature" flagmask="0x02"/>
<const key="0x03" flagname="Discharge Air temperature" flagmask="0x03"/>
<const key="0x04" flagname="Room temperature" flagmask="0x04"/>
<const key="0x05" flagname="Relative Humidity in room" flagmask="0x05"/>
<const key="0x06" flagname="Remaining filter life" flagmask="0x06"/>
</param>
<param key="0x01" name="Properties1" type="STRUCT_BYTE" typehashcode="0x07" comment="">
<bitfield key="0x00" fieldname="Size" fieldmask="0x07" shifter="0"/>
<bitfield key="0x01" fieldname="Scale" fieldmask="0x18" shifter="3"/>
<bitfield key="0x02" fieldname="Precision" fieldmask="0xE0" shifter="5"/>
</param>
<param key="0x02" name="Value" type="VARIANT" typehashcode="0x0C" comment="">
<variant paramoffs="255" showhex="True" signed="True" sizemask="0x00" sizeoffs="0"/>
</param>
</cmd>
<cmd key="0x03" name="HRV_STATUS_SUPPORTED_GET" help="Hrv Status Supported Get" comment=""/>
<cmd key="0x04" name="HRV_STATUS_SUPPORTED_REPORT" help="Hrv Status Supported Report" comment="">
<param key="0x00" name="Bit Mask" type="BITMASK" typehashcode="0x06" comment="">
<bitmask key="0x00" paramoffs="255" lenmask="0x00" lenoffs="0"/>
</param>
</cmd>
</cmd_class>


Wie kann ich das ausprobieren und rausfinden was was ist und damit das Modul erweitern?
Ich persönlich finde das umschalten zwischen "manuell und auto" noch sehr wichtig... sonst machen die Lüftungsstufen ja keinen Sinn.
Die Lüftungsstufe 0 bzw off wäre noch super...
Wenn die Anlage dann nämlich "online" bleibt hat man auch durchgängig Temperaturwerte...

Wäre schön, wenn ihr mir helft euch zu helfen :)

VG
René

PS: Danfoss supportet natürlich nichts mehr... und gibt auch keine Infos raus...

fireball

#53
Kurze nachtrag.... ich bin in der openhub communitiy fündig geworden... die haben fleissig weiter gemacht und bassierend auf dem Netzwerk folgendes Modul entwicklert:

https://www.openhab.org/addons/bindings/danfossairunit/

https://community.openhab.org/t/danfoss-air-unit-ethernet-connection/17844/96

hier haben sie scheinbar eine dokumentation aller werte:

https://docs.google.com/spreadsheets/d/1FnWGzeicXrBhMg_jaHFM7jzVb_5aiflNTMsUz-j_rRo/edit#gid=0


Wenn man hier in den Javacode schaut, dann findet man auch die HEX Werte dokumentiert:

https://github.com/leaxidd/openhab2-addons/blob/DanfossHRV/addons/binding/org.openhab.binding.danfossairunit/src/main/java/org/openhab/binding/danfossairunit/handler/DanfossAirUnit.java

    public static final byte MODE_AUTOMATIC = 1;
    public static final byte MODE_MANUAL = 2;
    public static final byte MODE_PROGRAM = 3;
    private static final byte[] DISCOVER_SEND = { 0x0c, 0x00, 0x30, 0x00, 0x11, 0x00, 0x12, 0x00, 0x13 };
    private static final byte[] DISCOVER_RECEIVE = { 0x0d, 0x00, 0x07, 0x00, 0x02, 0x02, 0x00 };
    private static final byte[] EMPTY = {};
    private static final byte[] GET_HISTORY = { 0x00, 0x30 };
    private static final byte[] REGISTER_1_READ = { 0x01, 0x04 };
    private static final byte[] REGISTER_1_WRITE = { 0x01, 0x06 };
    private static final byte[] REGISTER_4_READ = { 0x04, 0x04 };
    private static final byte[] REGISTER_6_READ = { 0x06, 0x04 };
    private static final byte[] MODE = { 0x14, 0x12 };
    private static final byte[] FAN_SPEED = { 0x15, 0x61 };
    private static final byte[] BASE_IN = { 0x14, 0x40 };
    private static final byte[] BASE_OUT = { 0x14, 0x41 };
    private static final byte[] BYPASS = { 0x14, 0x60 };
    private static final byte[] BYPASS_DEACTIVATION = { 0x14, 0x63 };
    private static final byte[] BOOST = { 0x15, 0x30 };
    private static final byte[] NIGHT_COOLING = { 0x15, 0x71 };
    private static final byte[] AUTOMATIC_BYPASS = { 0x17, 0x06 };
    private static final byte[] AUTOMATIC_RUSH_AIRING = { 0x17, 0x02 };
    private static final byte[] MODEL = { 0x00, 0x25 };
    private static final byte[] HUMIDITY = { 0x14, 0x70 };
    private static final byte[] ROOM_TEMPERATURE = { 0x03, 0x00 };
    private static final byte[] OUTDOOR_TEMPERATURE = { 0x03, 0x34 };
    private static final byte[] SUPPLY_TEMPERATURE = { 0x14, 0x73 };
    private static final byte[] EXTRACT_TEMPERATURE = { 0x14, 0x74 };
    private static final byte[] EXHAUST_TEMPERATURE = { 0x14, 0x75 };
    private static final byte[] BATTERY_LIFE = { 0x03, 0x0f };
    private static final byte[] FILTER_LIFE = { 0x14, 0x6a };
    private static final byte[] CURRENT_TIME = { 0x15, (byte) 0xe0 };
    private static final byte[] AWAY_TO = { 0x15, (byte) 0x20 };
    private static final byte[] AWAY_FROM = { 0x15, (byte) 0x21 };


hilft uns das, das Modul auszubauen?!
VG
René

fireball