Modifikationen an der 10_IT.pm

Begonnen von Ralf9, 29 April 2016, 22:18:48

Vorheriges Thema - Nächstes Thema

Nobody69

Da Fragst Du mich was !!??? :o

Ich hab es wie oben in den Listings definiert und es hatte funktioniert seither !!!!

im Anhang das Typenschild der Fernbedienung !!!!



Ralf9

Mit diesem angepassten IT-Modul müsste das Senden von SBC_FreeTec wieder funktionieren:
https://github.com/Ralf9/test/blob/master/FHEM/10_IT.pm
oder
update all https://raw.githubusercontent.com/Ralf9/test/master/controls_signalduino.txt

Ich habe auch die deutsche Device specific help etwas erweitert und verschönert.
Die erweiterungen müssen noch in die englische Device specific help übernommen werden.

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

Nobody69

Hallo Ralf,

Hier noch eine kurze Rückmeldung.

Nachdem ich dein neues Modul installiert hatte, kam zwar dass die Codes gesendet werden, doch meine Steckdosen reagierten nicht !!??

Ich wollte schon aufgeben.

Dann hab ich auch mal den CUL neu geflascht, auch das brachte nicht auf anhieb den Erfolg ???

gestern hab ich dann noch an meinem zweite CUL mit ZWAVE firmware rumgespielt und meinen ZWave sensoren, und siehe da plötzlich reagierten die Steckdosen wieder !!???   

Frag mich nicht warum !??? 
Entwerder hatte ich meinen CUL so verstellt dass das flashen ausschlaggebend war und ich kein richtigen reboot gemacht hatte ??
Oder hat der ZWAVE Cul gestört, denn da habe ich gestern den Funkverkehr ( Meldungen) stark minimiert !!???

Aufjedenfall funktioniert dein Modul und das ist das wichtigste !!!!  ;)


Gruß Ralf !!!

Ralf9

Ich habe beim IT-Modul die deutsche Device specific help etwas erweitert. Könnt ihr mal drüber schauen ob das so ok ist (speziell der Intertechno Protokoll 1 Abschnitt)
https://github.com/Ralf9/test/blob/master/FHEM/10_IT.pm
oder
update all https://raw.githubusercontent.com/Ralf9/test/master/controls_signalduino.txt

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

bjoernh

Hallo Ralf,

ich hab es kurz überflogen. Ich denke das passt so.
Ich werde vor dem einchecken mal die Doku generieren, und schauen ob das mit der Formatierung so passt.

Gruß
Björn

Ralf9

Ich habe nur die deutsche Device specific help erweitert, bei Bedarf müsste dies noch auf die englische Device specific help übertragen werden.

Die Erweiterung müsste eigentlich ausführlich genug sein, daß zukünftig bei solchen Meldungen auf die Device specific help verwiesen werden kann.
2017.02.04 11:56:44 3: sduino IT: Code 11 not supported by IT_FFF1100001

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

bjoernh

Zitat von: Ralf9 am 04 Februar 2017, 20:14:59
Ich habe nur die deutsche Device specific help erweitert, bei Bedarf müsste dies noch auf die englische Device specific help übertragen werden.

Die Erweiterung müsste eigentlich ausführlich genug sein, daß zukünftig bei solchen Meldungen auf die Device specific help verwiesen werden kann.
2017.02.04 11:56:44 3: sduino IT: Code 11 not supported by IT_FFF1100001

Gruß Ralf
Hi Ralf,

ja, seine Idee habe ich schon verstanden  :D
Dass das Englisch noch fehlt, habe ich gesehen.

Gruß
Björn

KölnSolar

#52
Hi Ralf,
Du hattest ja jetzt das Senden für den 1527 in das 10_IT eingebaut. Kannst Du hier mal gucken https://forum.fhem.de/index.php/topic,54689.msg577857.html#msg577857 muss da noch was am 00_CUL geändert werden ?
Grüße Markus
Edit: Kommando zurück. Musste noch die aculfw > 1.23.1 flashen  :-[
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Ralf9

Zitat von: bjoernh am 04 Februar 2017, 20:40:50
Dass das Englisch noch fehlt, habe ich gesehen.

Hallo Björn,

benötigst Du Hilfe bei der Übernahme meiner deutschen Device specific help Ergänzung in die englische Device specific help? Oder ist dies für Dich kein Problem?
Mein Englisch ist dazu leider nicht gut genug.
Oder macht es beim Einchecken nichts aus, wenn die englische nicht ganz so ausführlich ist wie die deutsche Device specific help?

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

cosmomill

Hallo,

da hier fleißig am IT Modul gearbeitet wird hoffe ich es ist OK wenn ich mich hier mit einem kleinen und hoffentlich auch für euch sinnvollen
Vorschlag einklinke. Seit einiger Zeit lassen sich mit einem CUL im native RF mode auch Daten von LaCrosse Sensoren empfangen. Leider lässt
sich dann der CUL für andere Aufgaben nur bedingt nutzten. Das finde ich sehr schade da es ohne weiteres möglich wäre parallel einfache
Intertechno Komponenten zu steuern. Dies wird im Moment erheblich dadurch verkompliziert das nach dem Senden eines Befehls zu Steuerung von
Intertechno Komponenten der CUL wieder manuell in den native RF mode versetzt werden muss. Diese kleine Ergänzung im IT Modul vereinfachte mir
die Handhabung erheblich.

Ralf9

Mir ist aufgefallen, daß in der Device specific help des IT-Moduls es noch keine Beschreibung zum Attribut ITclock gibt.
Hat jemand eine Idee für eine Beschreibung?

Hier ist eine Beschreibung für die Ermittlung des ITclock beim Signalduino:
Nach drücken einer Taste an der Fernbedienung steht die empfangene raw Nachricht im log und in der device Ansicht des IT-device
z.B.
ZitatMS;P0=357;P2=-1128;P3=1155;P4=-428;P5=-11420;D=05023402020202020202020202020202020202023402340234;CP=0;SP=5;
Die Ziffer hinter "CP=" gibt die PatternNr des clock (hier P0) an.
Hier ist die clock 357

Gibt es beim CUL auch eine einfache Möglichkeit den clock zu ermittleln?

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

bjoernh

Zitat von: Ralf9 am 12 März 2017, 19:43:54
Mir ist aufgefallen, daß in der Device specific help des IT-Moduls es noch keine Beschreibung zum Attribut ITclock gibt.
Hat jemand eine Idee für eine Beschreibung?

Hier ist eine Beschreibung für die Ermittlung des ITclock beim Signalduino:
Nach drücken einer Taste an der Fernbedienung steht die empfangene raw Nachricht im log und in der device Ansicht des IT-device
z.B.Die Ziffer hinter "CP=" gibt die PatternNr des clock (hier P0) an.
Hier ist die clock 357

Gibt es beim CUL auch eine einfache Möglichkeit den clock zu ermittleln?

Gruß Ralf
Wenn du die raw Daten anschaust ja. Also X31

Gesendet von meinem Mobile Device.


Ralf9

ich habe damit angefangen die Device specific help des IT-Moduls um die Beschreibung des Attributs ITclock zu ergänzen.
Ist es so auch für Anfänger verständlich und ausführlich genug?

    <a name="ITclock"></a>
    <li>ITclock<br>
       IT clock f&uuml;r das Senden beim Intertechno V1 Protokoll. Default 250.<br>
       Hier ist eine Beschreibung für die Ermittlung des ITclock beim Signalduino:<br>
       Nach dr&uuml;cken einer Taste an der Fernbedienung steht die empfangene raw Nachricht im log und in der device Ansicht des IT-device<br>
       z.B.:<br>
       MS;P0=357;P2=-1128;P3=1155;P4=-428;P5=-11420;D=05023402020202020202020202020202020202023402340234;CP=0;SP=5;<br>
       Die Ziffer hinter "CP=" gibt die PatternNr des clock (hier P0) an.
       Hier ist die clock 357
    </li><br>


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

Ralf9

Hier ist eine neue Version vom IT-Modul. Ich habe bei der deutschen Device specific help ITclock, ITfrequency und ITrepetition ergänzt
update all https://raw.githubusercontent.com/Ralf9/test/master/controls_signalduino.txt

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

andies

Hi Ralf, ich habe mal was englisches zu ITclock eingefügt und auch ein paar Schreibfehler im deutschen Text verbessert (sowie zwei erläuternde Sätze hinzugefügt).  Nun weiß ich aber nicht, wie ich Dir das zukommen lassen kann. Ich füge das jetzt alles, also die ganze HTML, mal in diesem Code ein:


<a name="IT"></a>
<h3>IT - InterTechno</h3>
<ul>
  The InterTechno 433MHZ protocol is used by a wide range of devices, which are either of
  the sender/sensor or the receiver/actuator category.
  Right now, we are able to send and receive InterTechno commands.
  Supported devices are switches, dimmers, etc. through an <a href="#CUL">CUL</a> or <a href="#SIGNALduino">SIGNALduino</a> device (this must be defined first).<br>
  This module supports the Intertechno protocol version 1 and version 3.
  Newly found devices are added into the category "IT" by autocreate.
  Hint: IT protocol 1 devices are created on pressing the on-button twice within 30 seconds.

  <br><br>

  <a name="ITdefine"></a>
  <b>Define</b>
  <ul>
    <code>define &lt;name&gt; IT &lt;housecode&gt; &lt;on-code&gt; &lt;off-code&gt;
    [&lt;dimup-code&gt;] [&lt;dimdown-code&gt;] </code>
    <br>or<br>
    <code>define &lt;name&gt; IT &lt;ITRotarySwitches|FLS100RotarySwitches&gt; </code>
    <br>or<br>
    <code>define &lt;name&gt; IT &lt;address 26 Bit&gt; &lt;group bit&gt; &lt;unit Code&gt;</code>
    <br>or<br>
    <code>define &lt;name&gt; IT HE800 &lt;Transmitter ID&gt; &lt;Receiver ID&gt;</code>
    <br><br>

   The value of &lt;housecode&gt; is a 10-digit InterTechno Code, consisting of 0/1/F as it is
   defined as a tri-state protocol. These digits depend on the device you are using.
   <br>
   Bit 11 and 12 are used for switching/dimming. As different manufacturers are using
   different bit-codes you can specifiy here the 2-digit code for off/on/dimup/dimdown
   in the same form: 0/1/F.
<br>
   The value of ITRotarySwitches consists of the value of the alpha switch A-P and
   the numeric switch 1-16 as set on the intertechno device. E.g. A1 or G12.
<br>
   The value of FLS100RotarySwitches consist of the value of the I,II,II,IV switch
   and the numeric 1,2,3,4 swicht. E.g. I2 or IV4.
<br>
   The value of ITRotarySwitches and FLS100RotarySwitches are internaly translated
   into a houscode value.

   <ul>
   <li><code>&lt;housecode&gt;</code> is a 10 digit tri-state number (0/1/F) depending on
your device setting (see list below).</li>
   <li><code>&lt;on-code&gt;</code> is a 2 digit tri-state number for switching your device on;
     It is appended to the housecode to build the 12-digits IT-Message.</li>
   <li><code>&lt;off-code&gt;</code> is a 2 digit tri-state number for switching your device off;
     It is appended to the housecode to build the 12-digits IT-Message.</li>
   <li>The optional <code>&lt;dimup-code&gt;</code> is a 2 digit tri-state number for dimming your device up;
     It is appended to the housecode to build the 12-digits IT-Message.</li>
   <li>The optional <code>&lt;dimdown-code&gt;</code> is a 2 digit tri-state number for dimming your device down;
     It is appended to the housecode to build the 12-digits IT-Message.</li>
   </ul>
   <br>
   <b>HE800</b><br>
   <ul>
     <li><code>&lt;Transmitter ID&gt;</code> unique transmitter ID (1..65535)</li>
     <li><code>&lt;Receiver ID&gt;</code> receiver ID [0]1..15, 0=Broadcast 1-15 (HE844A button# 1-4 & MASTER=0, HE850 UNIT# 1-15, HE853 = 1)</li>
   </ul>
   
<br>
Examples:
    <ul>
      <code>define lamp IT 01FF010101 11 00 01 10</code><br>
      <code>define roll1 IT 111111111F 11 00 01 10</code><br>
      <code>define otherlamp IT 000000000F 11 10 00 00</code><br>
      <code>define otherroll1 IT FFFFFFF00F 11 10</code><br>
      <code>define IT_1527xe0fec IT 1527xe0fec 1001 0000</code><br>
      <code>define itswitch1 IT A1</code><br>
      <code>define lamp IT J10</code><br>
      <code>define flsswitch1 IT IV1</code><br>
      <code>define lamp IT II2</code><br>
      <code>define HE800_TID1_SW1 IT HE800 1 1</code><br>
    </ul>
<br>
   For Intertechno protocol 3 the &lt;housecode&gt; is a 26-digits number.
   Additionaly there is a 4-digits &lt;unit code&gt; and a 1-digit &lt;group code&gt;.
   <ul>
   <li><code>&lt;address&gt;</code> is a 26 digit number (0/1)</li>
   <li><code>&lt;group&gt;</code> is a 1 digit number (0/1)</li>
   <li><code>&lt;unit&gt;</code> is a 4 digit number (0/1)</li>
   </ul>
   <br>
Examples:
    <ul>
      <code>define myITSwitch IT 00111100110101010110011111 0 0000</code>
    </ul>
   
  </ul>
  <br>

  <a name="ITset"></a>
  <b>Set </b>
  <ul>
    <code>set &lt;name&gt; &lt;value&gt; [&lt;time&gt]</code>
    <br><br>
    where <code>value</code> is one of:<br>
    <pre>
    dimdown
    dimup
    off
    on
    on-till           # Special, see the note
    dim06% dim12% dim18% dim25% dim31% dim37% dim43% dim50%
    dim56% dim62% dim68% dim75% dim81% dim87% dim93% dim100%<br>
    <li><a href="#setExtensions">set extensions</a> are supported.</li>
</pre>
    Examples:
    <ul>
      <code>set lamp on</code><br>
      <code>set lamp1,lamp2,lamp3 on</code><br>
      <code>set lamp1-lamp3 on</code><br>
      <code>set lamp off</code><br>
    </ul>
    <br>
    Notes:
    <ul>
      <li>on-till requires an absolute time in the "at" format (HH:MM:SS, HH:MM
      or { &lt;perl code&gt; }, where the perl-code returns a time specification).
      If the current time is greater than the specified time, the
      command is ignored, else an "on" command is generated, and for the
      given "till-time" an off command is scheduleld via the at command.
      </li>
    </ul>
  </ul>
  <br>

  <b>Get</b> <ul>N/A</ul><br>

  <a name="ITattr"></a>
  <b>Attributes</b>
  <ul>
    <a name="IODev"></a>
    <li>IODev<br>
        Set the IO device which will be used to send signals
        for this device. An example for the physical device is a CUL or the SIGNALduino.
Note: On startup, fhem WILL NOT automatically assign an
IODevice to the Intertechno device! The attribute IODev needs ALLWAYS to be set manually!</li><br>

    <a name="eventMap"></a>
    <li>eventMap<br>
        Replace event names and set arguments. The value of this attribute
        consists of a list of space separated values. Each value is a colon
        separated pair. The first part specifies the value to be replaced, the second
        the new/desired value. In order to use spaces in the new/desired values it is necessary to inform Fhem about the new separating character. This is done by using a slash(/) or comma(,)
        as first character, then the values are not separated by space but by this character.
        Examples:
          <ul><code>
        attr store eventMap on:open off:closed<br>
        attr store eventMap /on-for-timer 10:open/off:closed/<br>
        set store open
        </code></ul>
        </li><br>

    <li><a href="#do_not_notify">do_not_notify</a></li><br>
    <a name="attrdummy"></a>
    <li>dummy<br>
    Set the device attribute dummy to define devices which should not
    output any radio signals. Associated notifys will be executed if
    the signal is received. Used e.g. to react to a code from a sender, but
    it will not emit radio signal if triggered in the web frontend.
    </li><br>

    <li><a href="#loglevel">loglevel</a></li><br>

    <li><a href="#showtime">showtime</a></li><br>

    <li><a href="#readingFnAttributes">readingFnAttributes</a></li><br>

    <a name="model"></a>
    <li>model<br>
        The model attribute denotes the type of the device.
        This attribute will (currently) not be used by Fhem directly.
        It can be used by e.g. external programs or web interfaces to
        distinguish classes of devices and send the appropriate commands
        (e.g. "on" or "off" to a switch, "dim..%" to dimmers etc.).
        The spelling of the model should match the modelname used in the
        documentation that comes which the device. The name should consist of
        lower-case characters without spaces. Valid characters are
        <code>a-z 0-9</code> and <code>-</code> (dash),
        other characters should not be used. Here is a list of "official"
        devices:<br>
          <b>Sender/Sensor</b>: itremote<br>

          <b>Dimmer</b>: itdimmer<br>

          <b>Receiver/Actor</b>: itswitch<br>

          <b>EV1527</b>: ev1527
    </li><br>


    <a name="ignore"></a>
    <li>ignore<br>
        Ignore this device, e.g., if it belongs to your neighbour. The device
        will not trigger any FileLogs/notifys, issued commands will be silently
        ignored (no RF signal will be sent out, just like for the <a
        href="#attrdummy">dummy</a> attribute). The device will not appear in the
        list command (only if it is explicitely asked for it), nor will it
        be affected by commands which use wildcards or attributes as name specifiers
        (see <a href="#devspec">devspec</a>). You still get them with the
        "ignored=1" special devspec.
        </li>
    <li>ITclock<br />
Set the IT clock for the Intertechno V1 protokoll. Default is 250.<br />
A IT signal always consists of a sequence of HIGHs and LOWs that are sent by the CUL or SIGNALduino. These signals have a time length of microseconds and have typically a ratio of 1:3 (if, for example, a LOW lasts X microseconds then the following HIGH will last 3*X microseconds). The smallest time length of a signal can be adjusted using ITclock. The default value is 250 this value should only be changed if there are problems using IT with Fhem. In particular make sure that not obstacles between sender and receiver hamstring the correct signal.<br />
In order to discover the correct ITclock using a SIGNALduino: After pressing a button at a remote the received raw signal can be found in the log as well as in the device view of the IT-device, for example<br />
MS;P0=357;P2=-1128;P3=1155;P4=-428;P5=-11420;D=05023402020202020202020202020202020202023402340234;CP=0;SP=5;<br />
The number after &quot;CP=&quot; shows the paatern number of the clock (here P0).
      P0 itself is defined in the beginning of the message, hence the clock was 357 (microseconds).<br />
    </li>
    <br>

  </ul>
  <br>

  <a name="ITevents"></a>
  <b>Generated events:</b>
  <ul>
     From an IT device you can receive the following events.
     <li>on</li>
     <li>off</li>
     <li>dimdown</li>
     <li>dimup<br></li>
     <li>dim06% dim12% dim18% dim25% dim31% dim37% dim43% dim50%<br>
    dim56% dim62% dim68% dim75% dim81% dim87% dim93% dim100%<br></li>
      Which event is sent is device dependent and can sometimes configured on
     the device.
  </ul>
</ul>

=end html

=begin html_DE

<a name="IT"></a>
<h3>IT - InterTechno</h3>
<ul>
  Das InterTechno 433MHZ Protokoll wird von einer Vielzahl von Ger&auml;ten
benutzt. Diese geh&ouml;ren entweder zur Kategorie Sender/Sensoren oder zur
Kategorie Empf&auml;nger/Aktoren. Es ist das Senden sowie das Empfangen von InterTechno
Befehlen m&ouml;glich. Ger&auml;ten k&ouml;tnnen z.B. 
Schalter, Dimmer usw. sein.

  Von diesem Modul wird sowohl das Protolkoll 1 sowie das Protokoll 3 unterst&uuml;tzt.
  Neu empfangene Pakete werden per autocreate in Fhem unter der Kategorie IT angelegt.
  Hinweis: F&uuml;r ein AutoCreate muss die Taste innerhalb von 30 Sek 2 mal gedr&uuml;ckt werden.

  <br>
  <br>

  <a name="ITdefine"></a>
  <b>Define</b>
  <ul>
    <code>define &lt;name&gt; IT &lt;housecode&gt; &lt;on-code&gt; &lt;off-code&gt;
    [&lt;dimup-code&gt;] [&lt;dimdown-code&gt;] </code>
    <br>oder<br>
    <code>define &lt;name&gt; IT &lt;ITRotarySwitches|FLS100RotarySwitches&gt; </code>
    <br>oder<br>
    <code>define &lt;name&gt; IT &lt;Adresse 26 Bit&gt; &lt;Group bit&gt; &lt;Unit Code&gt;</code>
    <br>oder<br>
    <code>define &lt;name&gt; IT HE800 &lt;Transmitter ID&gt; &lt;Receiver ID&gt;</code>
    <br><br>

   Der Wert von Hauscode ist abh&auml;ngig vom verwendeten Ger&auml;t und besteht aus zehn Ziffern InterTechno-Code Protokoll 1.
   Da dieser ein tri-State-Protokoll ist, k&ouml;nnen die Ziffern jeweils die Werte 0/1/F annehmen.
   <br>
   Bit 11/12 werden f&uuml;r Schalten oder Dimmen verwendet. Da die Hersteller verschiedene Codes verwenden, k&ouml;nnen hier die
   (2-stelligen) Codes f&uuml;r an, aus, heller und dunkler (on/off/dimup/dimdown) als tri-State-Ziffern (0/1/F) festgelegt werden.
<br>
   Der Wert des ITRotary-Schalters setzt sich aus dem Wert des Buchstaben-Schalters A-P und dem numerischen Schalter 1-16
   des InterTechno-Ger&auml;tes zusammen, z.B. A1 oder G12.
<br>
   Der Wert des FLS100Rotary-Schalters setzt sich aus dem Wert des Schalters I,II,II,IV und dem numerischen Schalter 1-4
   des InterTechno-Ger&auml;tes zusammen, z.B. I2 oder IV4.
<br>
   Die Werte der ITRotary-Schalter und FLS100Rotary-Schalter werden intern in Hauscode-Werte umgewandelt.
<br>
   F&uuml;r Intertechno Protokoll 3 besteht der Hauscode aus 26 Ziffern. Zus&auml;tzlich werden noch 4 Ziffern als Unit Code sowie eine Ziffer als Group code ben&ouml;tigt.
<br>
   Neues IT Element in FHEM anlegen: define IT myITSwitch IT <Adresse 26 Bit> <Group bit> <Unit Code>
<br><br>
<b>Intertechno Protokoll 1 (ITv1)</b>
   <ul>
   <li><code>&lt;housecode&gt;</code> 10 Ziffern lange tri-State-Zahl (0/1/F) abh&auml;ngig vom benutzten Ger&auml;t.</li>
   <li><code>&lt;on-code&gt; &lt;off-code&gt;</code> jeweils 2 Ziffern lange quad-State-Zahl (0/1/F/D), die den Einschaltbefehl enth&auml;lt;
     die Zahl wird an den &lt;housecode&gt; angef&uuml;gt, um den 12-stelligen IT-Sendebefehl zu bilden.</li>
   <li>optional <code>&lt;dimup-code&gt; &lt;dimdown-code&gt;</code> jeweils 2 Ziffern lange quad-State-Zahl (0/1/F/D),
   die den Befehl zum Herauf- und Herunterregeln enth&auml;lt;
     die Zahl wird an den &lt;housecode&gt; angef&uuml;gt, um den 12-stelligen IT-Sendebefehl zu bilden.</li>
   <li>Hinweis: orginal ITv1 devices werden nur beim on Befehl angelegt.</li>
   <li>Die nicht orginal ITv1 devices k&ouml;nnen wie folgt angelegt werden:</li><br>
       Zum anlegen mit autocreate 2 mal auf "on" dr&uuml;cken:<br>
       <code>2016.11.27 11:47:37.753 4: sduinoD IT: 001F001000 not defined (Switch code: <b>11</b>)</code><br>
       <code>2016.11.27 11:47:37.755 2: autocreate: define IT_001F001000 IT 001F001000 0F F0</code><br><br>
       Nun auf "off" oder eine andere Taste dr&uuml;cken:<br>
       <code>2016.11.27 11:48:32.004 3: sduinoD IT: Code <b>1D</b> not supported by IT_001F001000.</code><br><br>
       Da dies keine orginal Intertechno Steckdose ist, passt der on/off code im define nicht und muss angepasst werden<br>
       <code>DEF  001F001000 <b>11 1D</b></code><br><br>
   <li>  <b>EV1527</b></li>
         Wenn im housecode ein nicht g&uuml;ltiger (10) ITv1 Tristatecode enthalten ist, dann wird es per autocreate als EV1527 angelegt.<br>
         <code>&lt;housecode&gt;</code>  1527xabcde , abcde ist der empfangene housecode im Hex Format<br>
         <code>&lt;on-code&gt; &lt;off-code&gt;</code> jeweils 4 Ziffern lange Bin Zahl (0/1), die den Einschaltbefehl enth&auml;lt;
         die Zahl wird an den housecode angef&uuml;gt, um den 12-stelligen IT-Sendebefehl zu bilden.<br>
         optional <code>&lt;dimup-code&gt; &lt;dimdown-code&gt;</code> jeweils 4 Ziffern lange Bin Zahl (0/1),
         die den Befehl zum Herauf- und Herunterregeln enth&auml;lt;
         die Zahl wird an den housecode angef&uuml;gt, um den 12-stelligen IT-Sendebefehl zu bilden.<br><br>
         Nach dem anlegen per autocreate muss noch der on/off- und optional der dimcode beim define (DEF) angepasst werden.<br>
   </ul>
   <br>
<b>SBC_FreeTec</b><br>
   <ul>
   <li><code>&lt;housecode&gt;</code> 8 Ziffern lange tri-State-Zahl (0/1/F) abh&auml;ngig vom benutzten Ger&auml;t.</li>
   <li><code>&lt;on-code&gt;</code> 4 Ziffern lange tri-State-Zahl, die den Einschaltbefehl enth&auml;lt;
     die Zahl wird an den housecode angef&uuml;gt, um den 12-stelligen IT-Sendebefehl zu bilden.</li>
   <li><code>&lt;off-code&gt;</code> 4 Ziffern lange tri-State-Zahl, die den Ausschaltbefehl enth&auml;lt;
     die Zahl wird an den housecode angef&uuml;gt, um den 12-stelligen IT-Sendebefehl zu bilden.</li>
   </ul>
   <br>
<b>HE800</b><br>
   <ul>
     <li><code>&lt;Transmitter ID&gt;</code> Eindeutige Transmitter-ID (1..65535)</li>
     <li><code>&lt;Receiver ID&gt;</code> Receiver-ID [0]1..15, 0=Broadcast 1-15 (HE844A button# 1-4 & MASTER=0, HE850 UNIT# 1-15, HE853 = 1)</li>
   </ul>
   <br>
   

Beispiele:
    <ul>
      <code>define lamp IT 01FF010101 11 00 01 10</code><br>
      <code>define roll1 IT 111111111F 11 00 01 10</code><br>
      <code>define otherlamp IT 000000000F 11 10 00 00</code><br>
      <code>define otherroll1 IT FFFFFFF00F 11 10</code><br>
      <code>define IT_1527xe0fec IT 1527xe0fec 1001 0000</code><br>
      <code>define SBC_FreeTec_Steck1 IT FFF00FFF 000F 0000</code><br>
      <code>define itswitch1 IT A1</code><br>
      <code>define lamp IT J10</code><br>
      <code>define flsswitch1 IT IV1</code><br>
      <code>define lamp IT II2</code><br>
      <code>define HE800_TID1_SW1 IT HE800 1 1</code><br>
    </ul>
   <br>
   F&uuml;r <b>Intertechno Protokoll 3 (ITv3)</b> ist der &lt;housecode&gt; eine 26-stellige Zahl. Zus&auml;tzlich wird noch ein 1 stelliger Gruppen-Code, sowie
   ein 4-stelliger &lt;unit code&gt; verwendet.
   <ul>
   <li><code>&lt;address&gt;</code> ist eine 26-stellige Nummer (0/1)</li>
   <li><code>&lt;group&gt;</code> ist eine 1-stellige Nummer (0/1)</li>
   <li><code>&lt;unit&gt;</code> ist eine 4-stellige Nummer (0/1)</li>
   </ul>
   <br>

    Beispiele:
    <ul>
      <code>define myITSwitch IT 00111100110101010110011111 0 0000</code>
    </ul>
  </ul>
  <br>

  <a name="ITset"></a>
  <b>Set </b>
  <ul>
    <code>set &lt;name&gt; &lt;value&gt; [&lt;time&gt]</code>
    <br><br>
    wobei <code>value</code> eines der folgenden Schl&uuml;sselw&ouml;rter ist:<br>
    <pre>
    dimdown
    dimup
    off
    on
    on-till           # siehe Anmerkungen
    <li>Die <a href="#setExtensions">set extensions</a> werden unterst&uuml;tzt.</li>
</pre>
    Beispiele:
    <ul>
      <code>set lamp on</code><br>
      <code>set lamp1,lamp2,lamp3 on</code><br>
      <code>set lamp1-lamp3 on</code><br>
      <code>set lamp off</code><br>
    </ul>
    <br>
    Anmerkungen:
    <ul>
      <li>on-till erfordert eine Zeitangabe im "at"-Format (HH:MM:SS, HH:MM
      oder { &lt;perl code&gt; }, wobei dieser Perl-Code eine Zeitangabe zur&uuml;ckgibt).
      Ist die aktuelle Zeit gr&ouml;&szlig;er als die Zeitangabe, wird der Befehl verworfen,
      andernfalls wird ein Einschaltbefehl gesendet und f&uuml;r die Zeitangabe ein
      Ausschaltbefehl mittels "at"-Befehl angelegt.
      </li>
    </ul>
  </ul>
  <br>

  <b>Get</b> <ul>N/A (nicht vorhanden)</ul><br>

  <a name="ITattr"></a>
  <b>Attributes</b>
  <ul>
    <a name="IODev"></a>
    <li>IODev<br>
        Spezifiziert das physische Ger&auml;t, das die Ausstrahlung der Befehle f&uuml;r das
        "logische" Ger&auml;t ausf&uuml;hrt. Ein Beispiel f&uuml;r ein physisches Ger&auml;t ist ein CUL oder ein SIGNALduino.<br>
        Anmerkung: Beim Start weist fhem einem InterTechno-Ger&auml;t kein IO-Ger&auml;t zu.
        Das Attribut IODev ist daher IMMER zu setzen.</li><br>

    <a name="eventMap"></a>
    <li>eventMap<br>
      Ersetzt Namen von Ereignissen (wie on und off) und set-Parametern. Die Liste besteht dabei
      aus mit Doppelpunkt verbundenen Wertepaaren, die durch Leerzeichen getrennt
      sind. Der erste Teil des Wertepaares ist der zu ersetzende Wert, der zweite der neue/gew&uuml;nschte Wert.
      Man kann Leerzeichen innerhalb der neuen/gewünschten Werte verwenden, muss dann aber Fhem signalisieren, dass das die Werte nicht mehr durch Leerzeichen getrennt werden. Die geschieht, indem das erste Zeichen der Werteliste ein Komma (,) oder ein Schr&auml;gsstrich (/) wird. Dieses Komma bzw der Schrägstrich werden dann als Listenzeichen verwendet. Beispiele:
      <ul><code>
      attr store eventMap on:open off:closed<br>
      attr store eventMap /on-for-timer 10:open/off:closed/<br>
      set store open
      </code></ul>
    </li><br>

    <li><a href="#do_not_notify">do_not_notify</a></li><br>
    <a name="attrdummy"></a>
    <li>dummy<br>
      Mit der Eigenschaft dummy lassen sich Ger&auml;te definieren, die keine physikalischen Befehle
      senden sollen. Verkn&uuml;pfte notifys werden trotzdem ausgef&uuml;hrt. Damit kann z.B. auf Sendebefehle
      reagiert werden, die &uuml;ber die Weboberfl&auml;che ausgel&ouml;st wurden, ohne dass der Befehl physikalisch
      gesendet wurde.
    </li><br>

    <li><a href="#loglevel">loglevel</a></li><br>

    <li><a href="#showtime">showtime</a></li><br>

    <li><a href="#readingFnAttributes">readingFnAttributes</a></li><br>

    <a name="model"></a>
    <li>model<br>
      Hiermit kann das Modell des IT-Ger&auml;ts n&auml;her beschrieben werden. Diese
      Eigenschaft wird (im Moment) nicht von Fhem ausgewertet.
      Mit Hilfe dieser Information k&ouml;nnen externe Programme oder Web-Interfaces
      Ger&auml;teklassen unterscheiden, um geeignete Kommandos zu senden (z.B. "on"
      oder "off" an Schalter, aber "dim..%" an Dimmer usw.). Die Schreibweise
      der Modellbezeichnung sollten der dem Ger&auml;t mitgelieferten Dokumentation
      in Kleinbuchstaben ohne Leerzeichen entsprechen.
      Andere Zeichen als <code>a-z 0-9</code> und <code>-</code> (Bindestrich)
      sollten vermieden werden. Dies ist die Liste der "offiziellen" Modelltypen:<br>
        <b>Sender/Sensor</b>: itremote<br>

        <b>Dimmer</b>: itdimmer<br>

        <b>Empf&auml;nger/Actor</b>: itswitch<br>

        <b>EV1527</b>: ev1527
    </li><br>


    <a name="ignore"></a>
    <li>ignore<br>
      Durch das Setzen dieser Eigenschaft wird das Ger&auml;t nicht durch Fhem beachtet,
      z.B. weil es einem Nachbarn geh&ouml;rt. Aktivit&auml;ten dieses Ger&auml;tes erzeugen weder
      Log-Eintr&auml;ge noch reagieren notifys darauf, erzeugte Kommandos werden ignoriert
      (wie bei Verwendung des Attributes <a href="#attrdummy">dummy</a> werden keine
      Signale gesendet). Das Ger&auml;t ist weder in der Ausgabe des list-Befehls enthalten
      (au&szlig;er es wird explizit aufgerufen), noch wird es bei Befehlen ber&uuml;cksichtigt,
      die mit Platzhaltern in Namensangaben arbeiten (siehe <a href="#devspec">devspec</a>).
      Sie werden weiterhin mit der speziellen devspec (Ger&auml;tebeschreibung) "ignored=1" gefunden.
        </li>
    <br>

    <a name="ITclock"></a>
    <li>ITclock<br>
       IT clock f&uuml;r das Senden beim Intertechno V1 Protokoll. Default 250.<br>
      Ein Signal beim IT-Protokoll besteht immer aus einer Sequenz von HIGH und LOW, die mit einer bestimmten Zeitdauer gesendet werden. Typischerweise stehen die Zeitdauern dabei im Verhältnis 1:3 (also zum Beispiel X Mikrosekunden LOW und dann 3*X Mikrosekunden HIGH). Die kleinste Zeitdauer, die ein solches Signal dauert, kann mit ITclock eingestellt werden. Voreingestellt ist 250 und dieser Wert sollte nur dann verändert werden, wenn es Probleme beim Schalten mit Fhem gibt. Achten Sie in dem Fall auch darauf, ob nicht vielleicht das Signal zu schwach ist oder gestört wird, um regelmäßig empfangen zu werden.<br />
      Hier ist eine Beschreibung f&uuml;r die Ermittlung des ITclock beim Signalduino: Nach Dr&uuml;cken einer Taste an der Fernbedienung steht die empfangene raw Nachricht im log und in der device-Ansicht des IT-device, also etwa <br>
       MS;P0=357;P2=-1128;P3=1155;P4=-428;P5=-11420;D=05023402020202020202020202020202020202023402340234;CP=0;SP=5;<br>
       Die Ziffer hinter "CP=" gibt die Pattern-Nr des clock (hier P0) an.
      P0 selbst ist am Anfang der Nachricht definiert, hier ist also die clock 357.<br />
      <br>
     
      <a name="ITfrequency"></a> </li>
    <li>ITfrequency<br>
      Setzt die Sendefrequenz.
    </li><br>
   
    <a name="ITrepetition"></a>
    <li>ITrepetition<br>
      Setzt die Sendewiederholungen (Default=6).
    </li><br>
   
    <a name="userV1setCodes"></a>
     <li>userV1setCodes<br>
       damit k&ouml;nnen beim ITv1 Protokoll eigene setcodes zugef&uuml;gt werden. Beispiele:
       <ul><code>
       attr lamp userV1setCodes rot:FD blau:1F<br>
       attr lamp userV1setCodes hoch:1001 runter:1000 stop:1011
       </code></ul>
    </li><br>
   
    <a name="SIGNALduinoProtocolId"></a>
    <li>SIGNALduinoProtocolId<br>
      Damit kann beim Senden mit dem SIGNALduino eine ProtocolId gew&auml;hlt werden.
    </li><br>
     
  </ul>
  <br>

  <a name="ITevents"></a>
  <b>Erzeugte Ereignisse (Events):</b>
  <ul>
     Ein IT-Ger&auml;t kann folgende Ereignisse generieren:
     <li>on</li>
     <li>off</li>
     <li>dimdown</li>
     <li>dimup<br></li>
     Welche Ereignisse erzeugt werden ist ger&auml;teabh&auml;ngig und kann evtl. am Ger&auml;t eingestellt werden.
  </ul>
</ul>




Ab wann sind denn die Sachen im update?
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann