52_I2C_BME280.pm: commandref corrected

52_I2C_EEPROM.pm: commandref corrected
52_I2C_LM75A.pm: commandref corrected
52_I2C_MCP23008.pm: commandref corrected
52_I2C_MCP23017.pm: commandref corrected
52_I2C_MCP342x.pm: commandref corrected
52_I2C_PCA9532.pm: commandref corrected
52_I2C_PCA9685.pm: commandref corrected
52_I2C_PCF8574.pm: commandref corrected
52_I2C_SHT21.pm: commandref corrected


git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@17863 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
klausw 2018-11-27 23:28:39 +00:00
parent e4eb72bbf7
commit 6b6f134b53
10 changed files with 139 additions and 183 deletions

View File

@ -515,7 +515,9 @@ sub I2C_BME280_DbLog_splitFn($) { # Einheiten
<b>Define</b>
<ul>
<code>define BME280 I2C_BME280 [&lt;I2C Address&gt;]</code><br><br>
without defined <code>&lt;I2C Address&gt;</code> 0x76 will be used as address<br>
<code>&lt;I2C Address&gt;</code> may be an 2 digit hexadecimal value (0xnn) or an decimal value<br>
Without defined <code>&lt;I2C Address&gt;</code> 0x76 (hexadecimal) = 118 (decimal) will be used.<br>
An I2C address are 7 MSB, the LSB is the R/W bit.<br>
<br>
Examples:
<pre>
@ -581,7 +583,9 @@ sub I2C_BME280_DbLog_splitFn($) { # Einheiten
<b>Define</b>
<ul>
<code>define BME280 &lt;BME280_name&gt; [&lt;I2C Addresse&gt;]</code><br><br>
Fehlt <code>&lt;I2C Address&gt;</code> wird 0x76 verwendet<br>
<code>&lt;I2C Address&gt;</code> kann ein zweistelliger Hex-Wert (0xnn) oder ein Dezimalwert sein<br>
Fehlt <code>&lt;I2C Address&gt;</code> wird 0x76 (hexadezimal) = 118 (dezimal) verwendet.<br>
Als I2C Adresse verstehen sich die 7 MSB, das LSB ist das R/W Bit.<br>
<br>
Beispiel:
<pre>

View File

@ -303,7 +303,8 @@ sub I2C_EEPROM_BytefromReading($@) {
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_EEPROM &lt;I2C Address&gt;</code><br>
where <code>&lt;I2C Address&gt;</code> is without direction bit<br>
<code>&lt;I2C Address&gt;</code> may be an 2 digit hexadecimal value (0xnn) or an decimal value<br>
For example 0x40 (hexadecimal) = 64 (decimal). An I2C address are 7 MSB, the LSB is the R/W bit.<br>
</ul>
<a name="I2C_EEPROMSet"></a>
@ -338,11 +339,11 @@ sub I2C_EEPROM_BytefromReading($@) {
<a name="I2C_EEPROMAttr"></a>
<b>Attributes</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Set the polling interval in minutes to query the EEPROM content<br>
Default: -, valid values: decimal number<br><br>
</li>
<li>EEPROM_size<br>
<li><a name="EEPROM_size">EEPROM_size</a><br>
Sets the storage size of the EEPROM<br>
Default: 128, valid values: 128 (128bit), 2k (2048bit)<br><br>
</li>
@ -370,7 +371,8 @@ sub I2C_EEPROM_BytefromReading($@) {
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_EEPROM &lt;I2C Address&gt;</code><br>
Der Wert <code>&lt;I2C Address&gt;</code> ist ohne das Richtungsbit
<code>&lt;I2C Address&gt;</code> kann ein zweistelliger Hex-Wert (0xnn) oder ein Dezimalwert sein<br>
Beispielsweise 0x40 (hexadezimal) = 64 (dezimal). Als I2C Adresse verstehen sich die 7 MSB, das LSB ist das R/W Bit.<br>
</ul>
<a name="I2C_EEPROMSet"></a>
@ -404,11 +406,11 @@ sub I2C_EEPROM_BytefromReading($@) {
<a name="I2C_EEPROMAttr"></a>
<b>Attribute</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Aktualisierungsintervall aller Werte in Minuten.<br>
Standard: -, g&uuml;ltige Werte: Dezimalzahl<br><br>
</li>
<li>EEPROM_size<br>
<li><a name="EEPROM_size">EEPROM_size</a><br>
Speichergröße des EEPROM<br>
Standard: 128, g&uuml;ltige Werte: 128 (128bit), 2k (2048bit)<br><br>
</li>

View File

@ -300,7 +300,8 @@ sub I2C_LM75A_DbLog_splitFn($) {
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_LM75A [&lt;I2C Address&gt;]</code><br>
where <code>&lt;I2C Address&gt;</code> is an 2 digit hexadecimal value<br>
<code>&lt;I2C Address&gt;</code> may be an 2 digit hexadecimal value (0xnn) or an decimal value<br>
Without defined <code>&lt;I2C Address&gt;</code> 0x48 (hexadecimal) = 72 (decimal) will be used.. An I2C address are 7 MSB, the LSB is the R/W bit.<br>
</ul>
<a name="I2C_LM75ASet"></a>
<b>Set</b>
@ -311,11 +312,11 @@ sub I2C_LM75A_DbLog_splitFn($) {
<a name="I2C_LM75AAttr"></a>
<b>Attributes</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Set the polling interval in minutes to query data from sensor<br>
Default: 5, valid values: 1,2,5,10,20,30<br><br>
</li>
<li>roundTemperatureDecimal<br>
<li><a name="roundTemperatureDecimal">roundTemperatureDecimal</a><br>
Number of decimal places for temperature value<br>
Default: 1, valid values: 0 1 2<br><br>
</li>
@ -342,8 +343,9 @@ sub I2C_LM75A_DbLog_splitFn($) {
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_LM75A [&lt;I2C Address&gt;]</code><br>
Der Wert <code>&lt;I2C Address&gt;</code> ist ein zweistelliger Hex-Wert<br>
</ul>
<code>&lt;I2C Address&gt;</code> kann ein zweistelliger Hex-Wert (0xnn) oder ein Dezimalwert sein<br>
Fehlt <code>&lt;I2C Address&gt;</code> wird 0x48 (hexadezimal) = 72 (dezimal) verwendet.<br>
Als I2C Adresse verstehen sich die 7 MSB, das LSB ist das R/W Bit.<br> </ul>
<a name="I2C_LM75ASet"></a>
<b>Set</b>
<ul>
@ -353,11 +355,11 @@ sub I2C_LM75A_DbLog_splitFn($) {
<a name="I2C_LM75AAttr"></a>
<b>Attribute</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Aktualisierungsintervall aller Werte in Minuten.<br>
Standard: 5, g&uuml;ltige Werte: 1,2,5,10,20,30<br><br>
</li>
<li>roundTemperatureDecimal<br>
<li><a name="roundTemperatureDecimal">roundTemperatureDecimal</a><br>
Anzahl Dezimalstellen f&uuml;r den Temperaturwert<br>
Standard: 1, g&uuml;ltige Werte: 0 1 2<br><br>
</li>

View File

@ -361,48 +361,6 @@ sub I2C_MCP23008_Set($@) {
$msg = "Unknown argument $a[1], choose one of " . $list;
}
return ($msg) ? $msg : undef;
###########################################################################################################
#alte einzelportversion
# my %sendpackage = ( i2caddress => $hash->{I2C_Address}, direction => "i2cwrite" );
# if ( $cmd && $cmd =~ m/^Port(A|B)(0|)[0-7]$/i) {
# return "wrong value: $val for \"set $name $cmd\" use one of: " .
# join(',', (sort { $setsP{ $a } <=> $setsP{ $b } } keys %setsP) )
# unless(exists($setsP{$val}));
# my $po = substr $cmd, 4, 1; # A oder B
# my $regaddr = $po eq "A" ? $Registers{GPIOA} : $Registers{GPIOB}; #Adresse fuer GPIO Register
# substr($cmd,0,5,"");
# return "$name error: Port$po$cmd is defined as input" unless ( ($po . $cmd) ~~ @outports ); #Pruefen ob entsprechender Port Input ist
#
# my $sbyte = 0;
# foreach (reverse 0..7) {
# if ( $_ == $cmd ) { #->wenn aktueller Port dann neuer Wert
# $sbyte += $setsP{$val} << ($_);
# next;
# }
# $sbyte += $setsP{ReadingsVal($name,"Port".$po.$_,"off")} << ($_); #->sonst aus dem Reading holen
# }
#
# $sendpackage{data} = $sbyte;
# $sendpackage{reg} = $regaddr;
# Log3 $hash, 5, "$name set regaddr: " . sprintf("%.2X",$sendpackage{reg}) . " inhalt: " . sprintf("%.2X",$sendpackage{data});
# } else {
# my $list = "";
# foreach (0..7) {
# next unless ( ("A" . $_) ~~ @outports ); #Inputs ueberspringen
# $list .= "PortA" . $_ . ":" . join(',', (sort { $setsP{ $a } <=> $setsP{ $b } } keys %setsP) ) . " ";
# }
# foreach (0..7) {
# next unless ( ("B" . $_) ~~ @outports ); #Inputs ueberspringen
# $list .= "PortB" . $_ . ":" . join(',', (sort { $setsP{ $a } <=> $setsP{ $b } } keys %setsP) ) . " ";
# }
# return "Unknown argument $a[1], choose one of " . $list;
# }
# return "$name: no IO device defined" unless ($hash->{IODev});
# my $phash = $hash->{IODev};
# my $pname = $phash->{NAME};
# CallFn($pname, "I2CWrtFn", $phash, \%sendpackage);
}
###############################################################################
sub I2C_MCP23008_Get($@) {
@ -511,7 +469,8 @@ sub I2C_MCP23008_UpdReadings($$$) { #nach Rueckmeldung read
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_MCP23008 &lt;I2C Address&gt;</code><br>
where <code>&lt;I2C Address&gt;</code> is without direction bit<br>
<code>&lt;I2C Address&gt;</code> may be an 2 digit hexadecimal value (0xnn) or an decimal value<br>
For example 0x40 (hexadecimal) = 64 (decimal). An I2C address are 7 MSB, the LSB is the R/W bit.<br>
</ul>
<a name="I2C_MCP23008Set"></a>
@ -545,33 +504,33 @@ sub I2C_MCP23008_UpdReadings($$$) { #nach Rueckmeldung read
<a name="I2C_MCP23008Attr"></a>
<b>Attributes</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Set the polling interval in minutes to query the GPIO's level<br>
Default: -, valid values: decimal number<br><br>
</li>
<li>OutputPorts<br>
<li><a name="OutputPorts">OutputPorts</a><br>
Comma separated list of ports that are used as Output<br>
Ports not in this list can't be written<br>
Default: no, valid values: A0-A7<br><br>
</li>
<li>OnStartup<br>
<li><a name="OnStartup">OnStartup</a><br>
Comma separated list of output ports and their desired state after start<br>
Without this atribut all output ports will set to last state<br>
Default: -, valid values: &lt;port&gt;=on|off|last where &lt;port&gt; = A0-A7<br><br>
</li>
<li>Pullup<br>
<li><a name="Pullup">Pullup</a><br>
Comma separated list of input ports which switch on their internal 100k pullup<br>
Default: -, valid values: A0-A7<br><br>
</li>
<li>Interrupt<br>
<li><a name="Interrupt">Interrupt</a><br>
Comma separated list of input ports which will trigger the IntA/B pin<br>
Default: -, valid values: A0-A7<br><br>
</li>
<li>invert_input<br>
<li><a name="invert_input">invert_input</a><br>
Comma separated list of input ports which use inverted logic<br>
Default: -, valid values: A0-A7<br><br>
</li>
<li>InterruptOut<br>
<li><a name="InterruptOut">InterruptOut</a><br>
Configuration options for INT output pin<br>
Values:<br>
<ul>
@ -613,7 +572,8 @@ sub I2C_MCP23008_UpdReadings($$$) { #nach Rueckmeldung read
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_MCP23008 &lt;I2C Address&gt;</code><br>
Der Wert <code>&lt;I2C Address&gt;</code> ist ohne das Richtungsbit<br>
<code>&lt;I2C Address&gt;</code> kann ein zweistelliger Hex-Wert (0xnn) oder ein Dezimalwert sein<br>
Beispielsweise 0x40 (hexadezimal) = 64 (dezimal). Als I2C Adresse verstehen sich die 7 MSB, das LSB ist das R/W Bit.<br>
</ul>
<a name="I2C_MCP23008Set"></a>
@ -647,33 +607,33 @@ sub I2C_MCP23008_UpdReadings($$$) { #nach Rueckmeldung read
<a name="I2C_MCP23008Attr"></a>
<b>Attribute</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Aktualisierungsintervall aller Werte in Minuten.<br>
Standard: -, g&uuml;ltige Werte: Dezimalzahl<br><br>
</li>
<li>OutputPorts<br>
<li><a name="OutputPorts">OutputPorts</a><br>
Durch Komma getrennte Ports die als Ausg&auml;nge genutzt werden sollen.<br>
Nur Ports in dieser Liste k&ouml;nnen gesetzt werden.<br>
Standard: -, g&uuml;ltige Werte: A0-A7<br><br>
</li>
<li>OnStartup<br>
<li><a name="OnStartup">OnStartup</a><br>
Durch Komma getrennte Output Ports und ihr gew&uuml;nschter Status nach dem Start.<br>
Ohne dieses Attribut werden alle Ausg&auml;nge nach dem Start auf den letzten Status gesetzt.<br>
Standard: -, g&uuml;ltige Werte: &lt;port&gt;=on|off|last wobei &lt;port&gt; = A0-A7<br><br>
</li>
<li>Pullup<br>
<li><a name="Pullup">Pullup</a><br>
Durch Komma getrennte Input Ports, bei denen der interne 100k pullup aktiviert werden soll.<br>
Standard: -, g&uuml;ltige Werte: A0-A7<br><br>
</li>
<li>Interrupt<br>
<li><a name="Interrupt">Interrupt</a><br>
Durch Komma getrennte Input Ports, die einen Interrupt auf IntA/B ausl&ouml;sen.<br>
Standard: -, g&uuml;ltige Werte: A0-A7<br><br>
</li>
<li>invert_input<br>
<li><a name="invert_input">invert_input</a><br>
Durch Komma getrennte Input Ports, die reverse Logik nutzen.<br>
Standard: -, g&uuml;ltige Werte: A0-A7<br><br>
</li>
<li>InterruptOut<br>
<li><a name="InterruptOut">InterruptOut</a><br>
Einstellungen f&uuml;r den INT Pin<br>
g&uuml;ltige Werte:<br>
<ul>

View File

@ -359,48 +359,6 @@ sub I2C_MCP23017_Set($@) {
$msg = "Unknown argument $a[1], choose one of " . $list;
}
return ($msg) ? $msg : undef;
###########################################################################################################
#alte einzelportversion
# my %sendpackage = ( i2caddress => $hash->{I2C_Address}, direction => "i2cwrite" );
# if ( $cmd && $cmd =~ m/^Port(A|B)(0|)[0-7]$/i) {
# return "wrong value: $val for \"set $name $cmd\" use one of: " .
# join(',', (sort { $setsP{ $a } <=> $setsP{ $b } } keys %setsP) )
# unless(exists($setsP{$val}));
# my $po = substr $cmd, 4, 1; # A oder B
# my $regaddr = $po eq "A" ? $Registers{GPIOA} : $Registers{GPIOB}; #Adresse fuer GPIO Register
# substr($cmd,0,5,"");
# return "$name error: Port$po$cmd is defined as input" unless ( ($po . $cmd) ~~ @outports ); #Pruefen ob entsprechender Port Input ist
#
# my $sbyte = 0;
# foreach (reverse 0..7) {
# if ( $_ == $cmd ) { #->wenn aktueller Port dann neuer Wert
# $sbyte += $setsP{$val} << ($_);
# next;
# }
# $sbyte += $setsP{ReadingsVal($name,"Port".$po.$_,"off")} << ($_); #->sonst aus dem Reading holen
# }
#
# $sendpackage{data} = $sbyte;
# $sendpackage{reg} = $regaddr;
# Log3 $hash, 5, "$name set regaddr: " . sprintf("%.2X",$sendpackage{reg}) . " inhalt: " . sprintf("%.2X",$sendpackage{data});
# } else {
# my $list = "";
# foreach (0..7) {
# next unless ( ("A" . $_) ~~ @outports ); #Inputs ueberspringen
# $list .= "PortA" . $_ . ":" . join(',', (sort { $setsP{ $a } <=> $setsP{ $b } } keys %setsP) ) . " ";
# }
# foreach (0..7) {
# next unless ( ("B" . $_) ~~ @outports ); #Inputs ueberspringen
# $list .= "PortB" . $_ . ":" . join(',', (sort { $setsP{ $a } <=> $setsP{ $b } } keys %setsP) ) . " ";
# }
# return "Unknown argument $a[1], choose one of " . $list;
# }
# return "$name: no IO device defined" unless ($hash->{IODev});
# my $phash = $hash->{IODev};
# my $pname = $phash->{NAME};
# CallFn($pname, "I2CWrtFn", $phash, \%sendpackage);
}
###############################################################################
sub I2C_MCP23017_Get($@) {
@ -509,7 +467,8 @@ sub I2C_MCP23017_UpdReadings($$$) { #nach Rueckmeldung read
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_MCP23017 &lt;I2C Address&gt;</code><br>
where <code>&lt;I2C Address&gt;</code> is without direction bit<br>
<code>&lt;I2C Address&gt;</code> may be an 2 digit hexadecimal value (0xnn) or an decimal value<br>
For example 0x40 (hexadecimal) = 64 (decimal). An I2C address are 7 MSB, the LSB is the R/W bit.<br>
</ul>
<a name="I2C_MCP23017Set"></a>
@ -543,33 +502,33 @@ sub I2C_MCP23017_UpdReadings($$$) { #nach Rueckmeldung read
<a name="I2C_MCP23017Attr"></a>
<b>Attributes</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Set the polling interval in minutes to query the GPIO's level<br>
Default: -, valid values: decimal number<br><br>
</li>
<li>OutputPorts<br>
<li><a name="OutputPorts">OutputPorts</a><br>
Comma separated list of ports that are used as Output<br>
Ports not in this list can't be written<br>
Default: no, valid values: A0-A7, B0-B7<br><br>
</li>
<li>OnStartup<br>
<li><a name="OnStartup">OnStartup</a><br>
Comma separated list of output ports and their desired state after start<br>
Without this atribut all output ports will set to last state<br>
Default: -, valid values: &lt;port&gt;=on|off|last where &lt;port&gt; = A0-A7, B0-B7<br><br>
</li>
<li>Pullup<br>
<li><a name="Pullup">Pullup</a><br>
Comma separated list of input ports which switch on their internal 100k pullup<br>
Default: -, valid values: A0-A7, B0-B7<br><br>
</li>
<li>Interrupt<br>
<li><a name="Interrupt">Interrupt</a><br>
Comma separated list of input ports which will trigger the IntA/B pin<br>
Default: -, valid values: A0-A7, B0-B7<br><br>
</li>
<li>invert_input<br>
<li><a name="invert_input">invert_input</a><br>
Comma separated list of input ports which use inverted logic<br>
Default: -, valid values: A0-A7, B0-B7<br><br>
</li>
<li>InterruptOut<br>
<li><a name="InterruptOut">InterruptOut</a><br>
Configuration options for INTA/INTB output pins<br>
Values:<br>
<ul>
@ -620,7 +579,8 @@ sub I2C_MCP23017_UpdReadings($$$) { #nach Rueckmeldung read
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_MCP23017 &lt;I2C Address&gt;</code><br>
Der Wert <code>&lt;I2C Address&gt;</code> ist ohne das Richtungsbit<br>
<code>&lt;I2C Address&gt;</code> kann ein zweistelliger Hex-Wert (0xnn) oder ein Dezimalwert sein<br>
Beispielsweise 0x40 (hexadezimal) = 64 (dezimal). Als I2C Adresse verstehen sich die 7 MSB, das LSB ist das R/W Bit.<br>
</ul>
<a name="I2C_MCP23017Set"></a>
@ -654,33 +614,33 @@ sub I2C_MCP23017_UpdReadings($$$) { #nach Rueckmeldung read
<a name="I2C_MCP23017Attr"></a>
<b>Attribute</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Aktualisierungsintervall aller Werte in Minuten.<br>
Standard: -, g&uuml;ltige Werte: Dezimalzahl<br><br>
</li>
<li>OutputPorts<br>
<li><a name="OutputPorts">OutputPorts</a><br>
Durch Komma getrennte Ports die als Ausg&auml;nge genutzt werden sollen.<br>
Nur Ports in dieser Liste k&ouml;nnen gesetzt werden.<br>
Standard: -, g&uuml;ltige Werte: A0-A7, B0-B7<br><br>
</li>
<li>OnStartup<br>
<li><a name="OnStartup">OnStartup</a>><br>
Durch Komma getrennte Output Ports und ihr gew&uuml;nschter Status nach dem Start.<br>
Ohne dieses Attribut werden alle Ausg&auml;nge nach dem Start auf den letzten Status gesetzt.<br>
Standard: -, g&uuml;ltige Werte: &lt;port&gt;=on|off|last wobei &lt;port&gt; = A0-A7, B0-B7<br><br>
</li>
<li>Pullup<br>
<li><a name="Pullup">Pullup</a><br>
Durch Komma getrennte Input Ports, bei denen der interne 100k pullup aktiviert werden soll.<br>
Standard: -, g&uuml;ltige Werte: A0-A7, B0-B7<br><br>
</li>
<li>Interrupt<br>
<li><a name="Interrupt">Interrupt</a><br>
Durch Komma getrennte Input Ports, die einen Interrupt auf IntA/B ausl&ouml;sen.<br>
Standard: -, g&uuml;ltige Werte: A0-A7, B0-B7<br><br>
</li>
<li>invert_input<br>
<li><a name="invert_input">invert_input</a><br>
Durch Komma getrennte Input Ports, die reverse Logik nutzen.<br>
Standard: -, g&uuml;ltige Werte: A0-A7, B0-B7<br><br>
</li>
<li>InterruptOut<br>
<li><a name="InterruptOut">InterruptOut</a><br>
Einstellungen f&uuml;r die INTA/INTB Pins<br>
g&uuml;ltige Werte:<br>
<ul>

View File

@ -355,7 +355,9 @@ sub I2C_MCP342x_readvoltage($@) {
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_MCP342x [[&lt;I2C Address&gt;] &lt;n channels&gt;]</code><br>
where &lt;I2C Address&gt; is without direction bit and &lt;n channels&gt; is the number of A/D channels<br><br>
<code>&lt;I2C Address&gt;</code> may be an 2 digit hexadecimal value (0xnn) or an decimal value<br>
For example 0x40 (hexadecimal) = 64 (decimal). An I2C address are 7 MSB, the LSB is the R/W bit.<br>
<code>&lt;n channels&gt;</code> is the number of A/D channels<br><br>
</ul>
<a name="I2C_MCP342xSet"></a>
<b>Get</b>
@ -367,26 +369,26 @@ sub I2C_MCP342x_readvoltage($@) {
<a name="I2C_MCP342xAttr"></a>
<b>Attributes</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Set the polling interval in minutes to query data from sensor<br>
Default: 5, valid values: 1,2,5,10,20,30<br><br>
</li>
Following attributes are separate for all channels.<br><br>
<li>ch1resolution<br>
<li><a name="ch1resolution">ch1resolution</a><br>
resolution settings<br>
the bigger the resolution the longer the conversion time.<br>
Default: 12, valid values: 12,14,16,18<br><br>
</li>
<li>ch1gain<br>
<li><a name="ch1gain">ch1gain</a><br>
gain setting<br>
Important: the gain setting will reduce the measurement range an may produce an overflow. In this case "overflow" will be added to reading<br>
Default: 1, valid values: 1,2,4,8<br><br>
</li>
<li>ch1factor<br>
<li><a name="ch1factor">ch1factor</a><br>
correction factor (will be mutiplied to channel value)<br>
Default: 1, valid values: number<br><br>
</li>
<li>ch1roundDecimal<br>
<li><a name="ch1roundDecimal">ch1roundDecimal</a><br>
Number of decimal places for value<br>
Default: 3, valid values: 0,1,2,3<br><br>
</li>
@ -413,7 +415,9 @@ sub I2C_MCP342x_readvoltage($@) {
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_MCP342x [[&lt;I2C Address&gt;] &lt;n channels&gt;]</code><br>
Der Wert <code>&lt;I2C Address&gt;</code> ist die I2C Adresse ohne Richtungsbit und &lt;n channels&gt; die Anzahl der A/D Kanäle.<br>
<code>&lt;I2C Address&gt;</code> kann ein zweistelliger Hex-Wert (0xnn) oder ein Dezimalwert sein<br>
Beispielsweise 0x40 (hexadezimal) = 64 (dezimal). Als I2C Adresse verstehen sich die 7 MSB, das LSB ist das R/W Bit.<br>
<code>&lt;n channels&gt;</code> ist die Anzahl der A/D Kanäle.<br>
</ul>
<a name="I2C_MCP342xGet"></a>
<b>Get</b>
@ -424,26 +428,26 @@ sub I2C_MCP342x_readvoltage($@) {
<a name="I2C_MCP342xAttr"></a>
<b>Attribute</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Aktualisierungsintervall aller Werte in Minuten.<br>
Standard: 5, g&uuml;ltige Werte: 1,2,5,10,20,30<br><br>
</li>
Folgende Attribute existieren separat f&uuml;r alle Kan&auml;le.<br><br>
<li>ch1resolution<br>
<li><a name="ch1resolution">ch1resolution</a><br>
Aufl&ouml;sung des Kanals<br>
Je gr&ouml;&szlig;er die Aufl&ouml;sung desto l&auml;nger die Lesezeit.<br>
Standard: 12, g&uuml;ltige Werte: 12,14,16,18<br><br>
</li>
<li>ch1gain<br>
<li><a name="ch1gain">ch1gain</a><br>
Verst&auml;rkungsfaktor<br>
Wichtig: Der Verst&auml;rkungsfaktor verringert den Messbereich entsprechend und kann zu einem &Uuml;berlauf f&uuml;hren. In diesem Fall wird "overflow" an das reading angeh&auml;ngt.<br>
Standard: 1, g&uuml;ltige Werte: 1,2,4,8<br><br>
</li>
<li>ch1factor<br>
<li><a name="ch1factor">ch1factor</a><br>
Korrekturfaktor (Wird zum Kanalwert multipliziert.)<br>
Standard: 1, g&uuml;ltige Werte: Zahl<br><br>
</li>
<li>ch1roundDecimal<br>
<li><a name="ch1roundDecimal">ch1roundDecimal</a><br>
Anzahl Dezimalstellen f&uuml;r den Messwert<br>
Standard: 3, g&uuml;ltige Werte: 0,1,2,3<br><br>
</li>

View File

@ -445,7 +445,8 @@ sub I2C_PCA9532_UpdReadings($$$) {
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_PCA9532 &lt;I2C Address&gt;</code><br>
where <code>&lt;I2C Address&gt;</code> is an 2 digit hexadecimal value<br>
<code>&lt;I2C Address&gt;</code> may be an 2 digit hexadecimal value (0xnn) or an decimal value<br>
For example 0x40 (hexadecimal) = 64 (decimal). An I2C address are 7 MSB, the LSB is the R/W bit.<br>
</ul>
<a name="I2C_PCA9532Set"></a>
@ -486,22 +487,26 @@ sub I2C_PCA9532_UpdReadings($$$) {
<a name="I2C_PCA9532Attr"></a>
<b>Attributes</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Set the polling interval in minutes to query the GPIO's level<br>
Default: -, valid values: decimal number<br><br>
</li>
<li>OutputPorts<br>
<li><a name="OutputPorts">OutputPorts</a><br>
Comma separated list of Portnumers that are used as Outputs<br>
Only ports in this list can be written<br>
Default: no, valid values: 0 1 2 .. 15<br><br>
</li>
<li>OnStartup<br>
<li><a name="OnStartup">OnStartup</a><br>
Comma separated list of output ports/PWM registers and their desired state after start<br>
Without this atribut all output ports will set to last state<br>
Default: -, valid values: &lt;port&gt;=on|off|PWM0|PWM1|last or PWM0|PWM1=0..255|last where &lt;port&gt; = 0 - 15<br><br>
</li>
<li>T0/T1<br>
Sets PWM0/PWM1 to another Frequency. The Formula is: Fx = 152/(Tx + 1) The corresponding frequency value is shown under internals.<br>
<li><a name="T0">T0</a><br>
Sets PWM0 to another Frequency. The Formula is: Fx = 152/(Tx + 1) The corresponding frequency value is shown under internals.<br>
Default: 0 (152Hz), valid values: 0-255<br><br>
</li>
<li><a name="T1">T1</a><br>
Sets PWM1 to another Frequency. The Formula is: Fx = 152/(Tx + 1) The corresponding frequency value is shown under internals.<br>
Default: 0 (152Hz), valid values: 0-255<br><br>
</li>
<li><a href="#IODev">IODev</a></li>
@ -530,7 +535,8 @@ sub I2C_PCA9532_UpdReadings($$$) {
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_PCA9532 &lt;I2C Address&gt;</code><br>
Der Wert <code>&lt;I2C Address&gt;</code> ist ein zweistelliger Hex-Wert<br>
<code>&lt;I2C Address&gt;</code> kann ein zweistelliger Hex-Wert (0xnn) oder ein Dezimalwert sein<br>
Beispielsweise 0x40 (hexadezimal) = 64 (dezimal). Als I2C Adresse verstehen sich die 7 MSB, das LSB ist das R/W Bit.<br>
</ul>
<a name="I2C_PCA9532Set"></a>
@ -571,22 +577,26 @@ sub I2C_PCA9532_UpdReadings($$$) {
<a name="I2C_PCA9532Attr"></a>
<b>Attribute</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Aktualisierungsintervall aller Werte in Minuten.<br>
Standard: -, g&uuml;ltige Werte: Dezimalzahl<br><br>
</li>
<li>OutputPorts<br>
<li><a name="OutputPorts">OutputPorts</a><br>
Durch Komma getrennte Portnummern die als Outputs genutzt werden.<br>
Nur Ports in dieser Liste k&ouml;nnen geschrieben werden.<br>
Standard: no, g&uuml;ltige Werte: 0 1 2 .. 15<br><br>
</li>
<li>OnStartup<br>
<li><a name="OnStartup">OnStartup</a><br>
Durch Komma getrennte Output Ports/PWM Register und ihr gew&uuml;nschter Status nach dem Start.<br>
Ohne dieses Attribut werden alle Ausg&auml;nge nach dem Start auf den letzten Status gesetzt.<br>
Standard: -, g&uuml;ltige Werte: &lt;port&gt;=on|off|PWM0|PWM1|last oder PWM0|PWM1=0..255|last wobei &lt;port&gt; = 0 - 15<br><br>
</li>
<li>T0/T1<br>
&Auml;nderung der Frequenzwerte von PWM0/PWM1 nach der Formel: Fx = 152/(Tx + 1). Der entsprechende Frequenzwert wird unter Internals angezeigt.<br>
<li><a name="T0">T0</a><br>
&Auml;nderung der Frequenzwerte von PWM0 nach der Formel: Fx = 152/(Tx + 1). Der entsprechende Frequenzwert wird unter Internals angezeigt.<br>
Standard: 0 (152Hz), g&uuml;ltige Werte: 0-255<br><br>
</li>
<li><a name="T1">T1</a><br>
&Auml;nderung der Frequenzwerte von PWM1 nach der Formel: Fx = 152/(Tx + 1). Der entsprechende Frequenzwert wird unter Internals angezeigt.<br>
Standard: 0 (152Hz), g&uuml;ltige Werte: 0-255<br><br>
</li>
<li><a href="#IODev">IODev</a></li>

View File

@ -616,7 +616,8 @@ sub I2C_PCA9685_UpdReadings($$$) { # vom IODev gesendete Werte in Read
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_PCA9685 &lt;I2C Address&gt; [&lt;I2C Buffer Size&gt;]</code><br>
where <code>&lt;I2C Address&gt;</code> can be written as decimal value or 0xnn<br>
<code>&lt;I2C Address&gt;</code> may be an 2 digit hexadecimal value (0xnn) or an decimal value<br>
For example 0x40 (hexadecimal) = 64 (decimal). An I2C address are 7 MSB, the LSB is the R/W bit.<br>
<code>&lt;I2C Buffer Size&gt;</code> sets the maximum size of the I2C-Packet.
Without this option the packet size is 30 Bytes (32 incl. Address and Register number).
For RPII2C this option has no influence, cause it can deal with arbitrary packet sizes.<br>
@ -672,18 +673,18 @@ sub I2C_PCA9685_UpdReadings($$$) { # vom IODev gesendete Werte in Read
Respective flag in modereg1 must be set as well<br>
Default: SUBADR1=113,SUBADR2=114,SUBADR3=116,ALLCALLADR=112, valid values: valid I2C Address <br><br>
</li>
<li>OnStartup<br>
<li><a name="OnStartup">OnStartup</a><br>
Comma separated list of output ports/PWM registers and their desired state after start<br>
Without this atribut all output ports will set to last state<br>
Default: -, valid values: &lt;port&gt;=on|off|0..4095|last where &lt;port&gt; = 0 - 15<br><br>
</li>
<li>prescale<br>
<li><a name="prescale">prescale</a><br>
Sets PWM Frequency. The Formula is: Fx = 25MHz/(4096 * (prescale + 1)).
The corresponding frequency value is shown under internals.
If provided, attribute extClock will be used for frequency calculation. Otherwise 25MHz<br>
Default: 30 (200Hz for 25MHz clock), valid values: 0-255<br><br>
</li>
<li>modereg1<br>
<li><a name="modereg1">modereg1</a><br>
Comma separated list of:
<ul>
<li>EXTCLK<br>
@ -704,7 +705,7 @@ sub I2C_PCA9685_UpdReadings($$$) { # vom IODev gesendete Werte in Read
</li>
</ul>
</li>
<li>modereg2<br>
<li><a name="modereg2">modereg2</a><br>
Comma separated list of:
<ul>
<li>INVRT<br>
@ -757,7 +758,8 @@ sub I2C_PCA9685_UpdReadings($$$) { # vom IODev gesendete Werte in Read
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_PCA9685 &lt;I2C Address&gt; [&lt;I2C Buffer Size&gt;]</code><br>
Der Wert <code>&lt;I2C Address&gt;</code> ist ein zweistelliger Hex-Wert im Format 0xnn oder eine Dezimalzahl<br>
<code>&lt;I2C Address&gt;</code> kann ein zweistelliger Hex-Wert (0xnn) oder ein Dezimalwert sein<br>
Beispielsweise 0x40 (hexadezimal) = 64 (dezimal). Als I2C Adresse verstehen sich die 7 MSB, das LSB ist das R/W Bit.<br>
<code>&lt;I2C Buffer Size&gt;</code> gibt die maximale Anzahl von Datenbytes pro I2C Datenpaket an. Nicht angegeben, wird der Wert 30 verwendet
( entspricht 32 Bytes incl. Adresse und Registernummer). RPII2C kann mit beliebig gro&szlig;en Paketl&auml;ngen umgehen, daher ist diese Option dort inaktiv.<br>
</ul>
@ -814,18 +816,18 @@ sub I2C_PCA9685_UpdReadings($$$) { # vom IODev gesendete Werte in Read
Zus&auml;tzlich zu diesen Registern m&uuml;ssen die Passenden Bits in modereg1 gesetzt werden.<br>
Standard: SUBADR1=113,SUBADR2=114,SUBADR3=116,ALLCALLADR=112, g&uuml;ltige Werte: I2C Adresse <br><br>
</li>
<li>OnStartup<br>
<li><a name="OnStartup">OnStartup</a><br>
Kommagetrennte Liste der Ports mit den gew&uuml;nschten Startwerten.<br>
Nicht gelistete Ports werden auf en letzte state wiederhergestellt.<br>
Standard: last, g&uuml;ltige Werte: &lt;port&gt;=on|off|0..4095|last wobei &lt;port&gt; = 0 - 15<br><br>
</li>
<li>prescale<br>
<li><a name="prescale">prescale</a><br>
PWM Frequenz setzen. Formel: Fx = 25MHz/(4096 * (prescale + 1)).
Die eingestellte Frequenz wird in den Internals angezeigt.
Wenn das Attribut extclock angegeben ist, wird dieses zur Frequenzberechnung verwendet. Andernfalls 25MHz.<br>
Standard: 30 (200Hz f&uuml;r 25MHz clock), g&uuml;ltige Werte: 0-255<br><br>
</li>
<li>modereg1<br>
<li><a name="modereg1">modereg1</a><br>
Durch Komma getrennte Liste von:
<ul>
<li>EXTCLK<br>
@ -846,7 +848,7 @@ sub I2C_PCA9685_UpdReadings($$$) { # vom IODev gesendete Werte in Read
</li>
</ul>
</li>
<li>modereg2<br>
<li><a name="modereg2">modereg2</a><br>
Durch Komma getrennte Liste von:
<ul>
<li>INVRT<br>

View File

@ -356,7 +356,8 @@ sub I2C_PCF8574_I2CRec($@) { # ueber CallFn vom physical aufgerufen
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_PCF8574 &lt;I2C Address&gt;</code><br>
where <code>&lt;I2C Address&gt;</code> is without direction bit<br>
<code>&lt;I2C Address&gt;</code> may be an 2 digit hexadecimal value (0xnn) or an decimal value<br>
For example 0x40 (hexadecimal) = 64 (decimal). An I2C address are 7 MSB, the LSB is the R/W bit.<br>
</ul>
<a name="I2C_PCF8574Set"></a>
@ -393,20 +394,20 @@ sub I2C_PCF8574_I2CRec($@) { # ueber CallFn vom physical aufgerufen
<a name="I2C_PCF8574Attr"></a>
<b>Attributes</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Set the polling interval in minutes to query the GPIO's level<br>
Default: -, valid values: decimal number<br><br>
</li>
<li>InputPorts<br>
<li><a name="InputPorts">InputPorts</a><br>
Comma separated list of Portnumers that are used as Inputs<br>
Ports in this list can't be written<br>
Default: -, valid values: 0 - 7<br><br>
</li>
<li>InvrtPorts<br>
<li><a name="InvrtPorts">InvrtPorts</a><br>
Comma separated list of Portnumers that will be inverted<br>
Default: -, valid values: 0 - 7<br><br>
</li>
<li>OnStartup<br>
<li><a name="OnStartup">OnStartup</a><br>
Comma separated list of output ports and their desired state after start<br>
Without this atribut all output ports will set to last state<br>
Default: -, valid values: &lt;port&gt;=on|off|last where &lt;port&gt; = 0 - 7<br><br>
@ -437,7 +438,8 @@ sub I2C_PCF8574_I2CRec($@) { # ueber CallFn vom physical aufgerufen
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_PCF8574 &lt;I2C Address&gt;</code><br>
Der Wert <code>&lt;I2C Address&gt;</code> ist ohne das Richtungsbit<br>
<code>&lt;I2C Address&gt;</code> kann ein zweistelliger Hex-Wert (0xnn) oder ein Dezimalwert sein<br>
Beispielsweise 0x40 (hexadezimal) = 64 (dezimal). Als I2C Adresse verstehen sich die 7 MSB, das LSB ist das R/W Bit.<br>
</ul>
<a name="I2C_PCF8574Set"></a>
@ -474,20 +476,20 @@ sub I2C_PCF8574_I2CRec($@) { # ueber CallFn vom physical aufgerufen
<a name="I2C_PCF8574Attr"></a>
<b>Attribute</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Aktualisierungsintervall aller Werte in Minuten.<br>
Standard: -, g&uuml;ltige Werte: Dezimalzahl<br><br>
</li>
<li>InputPorts<br>
<li><a name="InputPorts">InputPorts</a><br>
Durch Komma getrennte Portnummern die als Inputs genutzt werden.<br>
Ports in dieser Liste k&ouml;nnen nicht geschrieben werden.<br>
Standard: -, g&uuml;ltige Werte: 0 - 7<br><br>
</li>
<li>InvrtPorts<br>
<li><a name="InvrtPorts">InvrtPorts</a><br>
Durch Komma getrennte Portnummern die invertiert werden.<br>
Standard: -, g&uuml;ltige Werte: 0 - 7<br><br>
</li>
<li>OnStartup<br>
<li><a name="OnStartup">OnStartup</a><br>
Durch Komma getrennte Output Ports und ihr gew&uuml;nschter Status nach dem Start.<br>
Ohne dieses Attribut werden alle Ausg&auml;nge nach dem Start auf den letzten Status gesetzt.<br>
Standard: -, g&uuml;ltige Werte: &lt;port&gt;=on|off|last wobei &lt;port&gt; = 0 - 7<br><br>

View File

@ -330,7 +330,8 @@ sub I2C_SHT21_DbLog_splitFn($) {
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_SHT21 [&lt;I2C Address&gt;]</code><br>
where <code>&lt;I2C Address&gt;</code> is an 2 digit hexadecimal value<br>
<code>&lt;I2C Address&gt;</code> may be an 2 digit hexadecimal value (0xnn) or an decimal value<br>
For example 0x40 (hexadecimal) = 64 (decimal). An I2C address are 7 MSB, the LSB is the R/W bit.<br>
</ul>
<a name="I2C_SHT21Set"></a>
<b>Set</b>
@ -341,12 +342,16 @@ sub I2C_SHT21_DbLog_splitFn($) {
<a name="I2C_SHT21Attr"></a>
<b>Attributes</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Set the polling interval in minutes to query data from sensor<br>
Default: 5, valid values: 1,2,5,10,20,30<br><br>
</li>
<li>roundHumidityDecimal, roundTemperatureDecimal<br>
Number of decimal places for humidity or temperature value<br>
<li><a name="roundHumidityDecimal">roundHumidityDecimal</a><br>
Number of decimal places for humidity value<br>
Default: 1, valid values: 0 1 2<br><br>
</li>
<li><a name="roundTemperatureDecimal">roundTemperatureDecimal</a><br>
Number of decimal places for temperature value<br>
Default: 1, valid values: 0 1 2<br><br>
</li>
<li><a href="#IODev">IODev</a></li>
@ -372,7 +377,8 @@ sub I2C_SHT21_DbLog_splitFn($) {
<b>Define</b>
<ul>
<code>define &lt;name&gt; I2C_SHT21 [&lt;I2C Address&gt;]</code><br>
Der Wert <code>&lt;I2C Address&gt;</code> ist ein zweistelliger Hex-Wert<br>
<code>&lt;I2C Address&gt;</code> kann ein zweistelliger Hex-Wert (0xnn) oder ein Dezimalwert sein<br>
Beispielsweise 0x40 (hexadezimal) = 64 (dezimal). Als I2C Adresse verstehen sich die 7 MSB, das LSB ist das R/W Bit.<br>
</ul>
<a name="I2C_SHT21Set"></a>
<b>Set</b>
@ -383,12 +389,16 @@ sub I2C_SHT21_DbLog_splitFn($) {
<a name="I2C_SHT21Attr"></a>
<b>Attribute</b>
<ul>
<li>poll_interval<br>
<li><a name="poll_interval">poll_interval</a><br>
Aktualisierungsintervall aller Werte in Minuten.<br>
Standard: 5, g&uuml;ltige Werte: 1,2,5,10,20,30<br><br>
</li>
<li>roundHumidityDecimal, roundTemperatureDecimal<br>
Anzahl Dezimalstellen f&uuml;r den Feuchte-, oder Temperaturwert<br>
<li><a name="roundHumidityDecimal">roundHumidityDecimal</a><br>
Anzahl Dezimalstellen f&uuml;r den Feuchtewert<br>
Standard: 1, g&uuml;ltige Werte: 0 1 2<br><br>
</li>
<li><a name="roundTemperatureDecimal">roundTemperatureDecimal</a><br>
Anzahl Dezimalstellen f&uuml;r den Temperaturwert<br>
Standard: 1, g&uuml;ltige Werte: 0 1 2<br><br>
</li>
<li><a href="#IODev">IODev</a></li>