+ The CUL_IR module interprets Infrared messages received by the CUN/CUNO/CUNOv2/TuxRadio.
+ Those devices can receive Infrared Signals from basically any Remote controller and will transform
+ that information in a so called Button-Code
+
+
+
+ Define
+
+ define <name> CUL_IR <IODev>
+
+ <IODev> is the devicename of the IR-receivung device, e.g. CUL1.
+
+ Your definition should look like E.g.:
+
+ define IR-Rec CUL_IR CUNO1
+
+
+
+ Set
+
+
+ - irLearnForSec
+ Sets the CUL_IR device in an IR-Code Learning mode for the given seconds. Any received IR-Code will
+ be stored as a Button attribute for this devices. The name of these attributes is dependent on the two
+ attributes learncount and learnprefix.
+ Attention: Before learning IR-Codes the CUL_IR device needs to be set in IR-Receiving mode
+ by modifying the irReceive attribute.
+
+
+
+
+ Get
+
+
+
+ Attributes
+
+ - do_not_notify
+ - showtime
+ - loglevel
+ - irReceive
+ Configure the IR Transceiver of the <IODev> (the CUNO1). Available
+ arguments are:
+
+ - OFF
+ Switching off the reception of IR signals. This is the default.
+
+ - ON
+ Switching on the reception of IR signals. This is WITHOUT filtering repetitions. This is
+ not recommended as many remote controls do repeat their signals.
+
+ - ON_NR
+ Switching on the reception of IR signals with filtering of repetitions. This is
+ the recommended modus operandi.
+
+
+
+ - Button.*
+ Button.* is the wildcard for all learnt IR-Codes. IR-Codes are learnt as Button-Attributes.
+ The name for a learnt Button - IR-Code is compiled out of three elements:
+
+ Button<learnprefix><learncount>
+
+ When the CUL_IR device is set into learning mode it will generate a
+ new button-attribute for each new IR-Code received.This is done according to the following syntax:
+
+ <Button-Attribute-Name> <IR-Code>
+ Examples of learnt button-attributes with EMPTY <learnprefix> and <learncount> starting from 1:
+
+ Button001 I02029A000000
+ Button002 I02029A000001
+ To make sure that something happens when this IR-code is received later on one has to modify the attribute
+ and to add commands as attribute values.
+ Examples:
+
+ Button001 I02029A000000 set WZ_Lamp on
+ Button002 I02029A000001 set Switch on
+ The syntax for this is:
+
+ attr <device-name> <attribute-name> <IR-Code> <command>
+
+
+ - Group.*
+ Group.* is the wildcard for IR-Code groups. With these attributes one can define
+ IR-Code parts, which may match to several Button-IR-Codes.
+ This is done by defining group-attributes that contain only parts of the IR-Code.
+ The syntax is:
+
+ <Group-Attribute-Name> <IR-Code>
+ Examples of a group-attribute is:
+
+ Group001 I02029A
+ With this all IR-Codes starting with I02029A will match the Group001.
+
+ - learncount
+ learncount is used to store the next button-code-number that needs to be learned.
+ By manually modifying this attribute new button sequences can be arranged.
+
+ - learnprefix
+ learnprefix is a string which will be added to the button-attribute-name.
+ A button-attribute-name is constructed by:
+
+ Button<learnprefix><learncount>
+ If learnprefix is empty the button-attribute-name only contains the term
+ "Button" and the actual number of learncount.
+
+
+
+
+
+
ESA2000
@@ -3785,20 +3903,20 @@ A line ending with \ will be concatenated with the next one, so long lines
Valid readings and their meaning (? can be one of 0, 1, 2, 3 and stands
for today, tomorrow, ...):
- city | name of town returned for location |
- condition | current condition, one of Sunny, Clear, Partly Cloudy, Mostly Cloudy, Overcast, Chance of Rain |
- current_date_time | last update of forecast on server |
- fc?_condition | forecast condition |
- fc?_day_of_week | day of week for day +? |
- fc?_high_c | forecasted daily high in degrees centigrade |
- fc?_icon | relative path for forecast icon, prefix with http://www.google.com to form a valid URL for display in web interfaces |
- fc?_low_c | forecasted daily low in degrees centigrade |
- humidity | current humidity |
- icon | relative path for current icon |
- postal_code | location sent to server |
- temp_c | current temperature in degrees centigrade |
- temp_f | current temperature in degrees Fahrenheit |
- wind_condition | wind direction and speed |
+ city | name of town returned for location |
+ condition | current condition, one of Sunny, Clear, Partly Cloudy, Mostly Cloudy, Overcast, Chance of Rain |
+ current_date_time | last update of forecast on server |
+ fc?_condition | forecast condition |
+ fc?_day_of_week | day of week for day +? |
+ fc?_high_c | forecasted daily high in degrees centigrade |
+ fc?_icon | relative path for forecast icon, prefix with http://www.google.com to form a valid URL for display in web interfaces |
+ fc?_low_c | forecasted daily low in degrees centigrade |
+ humidity | current humidity |
+ icon | relative path for current icon |
+ postal_code | location sent to server |
+ temp_c | current temperature in degrees centigrade |
+ temp_f | current temperature in degrees Fahrenheit |
+ wind_condition | wind direction and speed |
@@ -3836,8 +3954,8 @@ A line ending with \ will be concatenated with the next one, so long lines
position of the sensor. The following geometries are currently
supported:
- cub <length> <width> <height> <offset>
- cylv <diameter> <height> <offset>
+ cub <length> <width> <height> <offset>
+ cylv <diameter> <height> <offset>
cub stands for a cuboid whose base is <length> × <width>.
@@ -3991,8 +4109,8 @@ A line ending with \ will be concatenated with the next one, so long lines
define AUSSEN.wetterstation VantagePro2 192.168.8.127 4999 60
- fhem> list AUSSEN.wetterstation
- Internals:
+ fhem> list AUSSEN.wetterstation
+ Internals:
DEF 192.168.8.127 4999 60
Host 192.168.8.127
NAME AUSSEN.wetterstation
@@ -4918,7 +5036,7 @@ BTHR918, BTHR918N, PCR800 RGR918, RTGR328N, THN132N, THGR228N, THGR328N, THGR918
The one byte hex string is generated by the Oregon sensor when is it powered on. The value seems to be randomly generated. This has the advantage that you may use more than one Oregon sensor of the same type even if it has no switch to set a sensor id. For exampple the author uses three BTHR918 sensors at the same time. All have different deviceids. The drawback is that the deviceid changes after changing batteries.
Example:
- define Kaminzimmer OREGON BTHR918N_ab
+ define Kaminzimmer OREGON BTHR918N_ab
@@ -5224,7 +5342,7 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
For example /dev/ttyUSB0.
Example:
- define RFXCOMUSB RFXCOM /dev/ttyUSB0
+ define RFXCOMUSB RFXCOM /dev/ttyUSB0
@@ -5238,9 +5356,9 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
Example:
- define RFXCOMTCP RFXCOM 192.168.1.5:10001
-
- define RFXCOMTCP2 RFXCOM 192.168.1.121:10001 noinit
+ define RFXCOMTCP RFXCOM 192.168.1.5:10001
+
+ define RFXCOMTCP2 RFXCOM 192.168.1.121:10001 noinit
@@ -5267,11 +5385,11 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
<unitname> is an optional string that describes the value units. It is added to the Reading generated to describe the values.
Example:
- define RFXWater RFXMETER 00 0.5 ltr
+ define RFXWater RFXMETER 00 0.5 ltr
- define RFXPower RFXMETER 01 0.001 kwh
+ define RFXPower RFXMETER 01 0.001 kwh
- define RFXGas RFXMETER 02 0.01 cu_m
+ define RFXGas RFXMETER 02 0.01 cu_m
@@ -5299,49 +5417,49 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
<type>
specifies the type of the X10 device:
- X10 security devices:
+ X10 security devices:
- -
ds10a (X10 security ds10a Door/Window Sensor or compatible devices. This device type reports the status of the switch [Open/Closed], status of the delay switch [min|max]], and battery status [ok|low].)
- -
ms10a (X10 security ms10a motion sensor. This device type reports the status of motion sensor [normal|alert] and battery status [ok|low].))
- -
sd90 (Marmitek sd90 smoke detector. This device type reports the status of the smoke detector [normal|alert] and battery status [ok|low].)
- -
kr18 (X10 security remote control. Report the Reading "Security" with values [Arm|Disarm], "ButtonA" and "ButtonB" with values [on|off] )
+ -
ds10a (X10 security ds10a Door/Window Sensor or compatible devices. This device type reports the status of the switch [Open/Closed], status of the delay switch [min|max]], and battery status [ok|low].)
+ -
ms10a (X10 security ms10a motion sensor. This device type reports the status of motion sensor [normal|alert] and battery status [ok|low].))
+ -
sd90 (Marmitek sd90 smoke detector. This device type reports the status of the smoke detector [normal|alert] and battery status [ok|low].)
+ -
kr18 (X10 security remote control. Report the Reading "Security" with values [Arm|Disarm], "ButtonA" and "ButtonB" with values [on|off] )
- X10 lightning devices:
+ X10 lightning devices:
- -
ms14a (X10 motion sensor. Reports [normal|alert] on the first deviceid (motion sensor) and [on|off] for the second deviceid (light sensor))
- -
x10 (All other x10 devices. Report [on|off] on both deviceids.)
+ -
ms14a (X10 motion sensor. Reports [normal|alert] on the first deviceid (motion sensor) and [on|off] for the second deviceid (light sensor))
+ -
x10 (All other x10 devices. Report [on|off] on both deviceids.)
<deviceid>
- specifies the first device id of the device. X10 security have a a 16-Bit device id which has to be written as a hex-string (example "5a54").
- A X10 lightning device has a house code A..P followed by a unitcode 1..16 (example "B1").
+ specifies the first device id of the device. X10 security have a a 16-Bit device id which has to be written as a hex-string (example "5a54").
+ A X10 lightning device has a house code A..P followed by a unitcode 1..16 (example "B1").
<devicelog>
- is the name of the Reading used to report. Suggested: "Window" or "Door" for ds10a, "motion" for motion sensors, "Smoke" for sd90.
+ is the name of the Reading used to report. Suggested: "Window" or "Door" for ds10a, "motion" for motion sensors, "Smoke" for sd90.
<deviceid2>
- is optional and specifies the second device id of the device if it exists. For example sd90 smoke sensors can be configured to report two device ids. ms14a motion sensors report motion status on the first deviceid and the status of the light sensor on the second deviceid.
+ is optional and specifies the second device id of the device if it exists. For example sd90 smoke sensors can be configured to report two device ids. ms14a motion sensors report motion status on the first deviceid and the status of the light sensor on the second deviceid.
<devicelog2>
- is optional for the name used for the Reading of <deviceid2> .
+ is optional for the name used for the Reading of <deviceid2> .
Example:
- define livingroom_window RFXX10REC ds10a 72cd Window
+ define livingroom_window RFXX10REC ds10a 72cd Window
- define motion_sensor1 RFXX10REC ms10a 55c6 motion
+ define motion_sensor1 RFXX10REC ms10a 55c6 motion
- define smoke_sensor1 RFXX10REC sd90 54d3 Smoke 54d3 Smoketest
+ define smoke_sensor1 RFXX10REC sd90 54d3 Smoke 54d3 Smoketest
- define motion_sensor2 RFXX10REC ms14a A1 motion A2 light
+ define motion_sensor2 RFXX10REC ms14a A1 motion A2 light
@@ -5757,12 +5875,12 @@ Terminating
- As an external program is used, a noticeable delay may occur.
- *-till requires an absolute time in the "at" format (HH:MM:SS, HH:MM
- or { <perl code> }, where the perl-code returns a time
+ or { <perl code> }, where the perl-code returns a time
specification).
- If the current time is greater than the specified time, then the
- command is ignored, else an "on" or "off" command, respectively, is
+ If the current time is greater than the specified time, then the
+ command is ignored, else an "on" or "off" command, respectively, is
generated, and for the given time an "off"/"on" command is
- scheduleld via the at command.
+ scheduleld via the at command.
@@ -5775,11 +5893,11 @@ Terminating
do_not_notify
dummy
- Set the device attribute dummy to define devices which should not
- output any 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 actually switch if triggered in the web frontend.
-
+ Set the device attribute dummy to define devices which should not
+ output any 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 actually switch if triggered in the web frontend.
+
loglevel
@@ -5807,7 +5925,7 @@ Terminating
contain any option to configure this device.
Note: You should give your sensors a name within the web interface, once they a received the first time.
To extract a single sensor simply match for this name or sensor id
-
+
Attributes:
@@ -6513,13 +6631,13 @@ href="http://www.elv.de/output/controller.aspx?cid=74&detail=10&detail2=29870">U
- disable
Can be applied to at/watchdog/notify/FileLog devices.
- Disables the corresponding at/notify or FileLog device. Note:
+ Disables the corresponding at/notify or FileLog device. Note:
If applied to an at, the command will not be executed,
but the next time will be computed.
- skip_next
- Used for at commands: skip the execution of the command the next
+ Used for at commands: skip the execution of the command the next
time.
@@ -7007,16 +7125,16 @@ href="http://www.elv.de/output/controller.aspx?cid=74&detail=10&detail2=29870">U
contains the last event for any given reading and device.
The columns have the following meaning:
- - TIMESTAMP: timestamp of event, e.g.
2007-12-30 21:45:22
- - DEVICE: device name, e.g.
Wetterstation
- - TYPE: device type, e.g.
KS300
- - EVENT: event specification as full string,
- e.g.
humidity: 71 (%)
- - READING: name of reading extracted from event,
- e.g.
humidity
- - VALUE: actual reading extracted from event,
- e.g.
71
- - UNIT: unit extracted from event, e.g.
%
+ - TIMESTAMP: timestamp of event, e.g.
2007-12-30 21:45:22
+ - DEVICE: device name, e.g.
Wetterstation
+ - TYPE: device type, e.g.
KS300
+ - EVENT: event specification as full string,
+ e.g.
humidity: 71 (%)
+ - READING: name of reading extracted from event,
+ e.g.
humidity
+ - VALUE: actual reading extracted from event,
+ e.g.
71
+ - UNIT: unit extracted from event, e.g.
%
The content of VALUE is optimized for automated post-processing, e.g.
yes is translated to 1 .
@@ -7029,8 +7147,8 @@ href="http://www.elv.de/output/controller.aspx?cid=74&detail=10&detail2=29870">U
Examples:
- # log everything to database
- define logdb DbLog /etc/fhem/db.conf .*:.*
+ # log everything to database
+ define logdb DbLog /etc/fhem/db.conf .*:.*
@@ -7079,7 +7197,7 @@ href="http://www.elv.de/output/controller.aspx?cid=74&detail=10&detail2=29870">U
define lamplog FileLog /var/tmp/lamp.log lamp
define wzlog FileLog /var/tmp/wz-%Y-%U.log
- wz:(measured-temp|actuator).*
+ wz:(measured-temp|actuator).*
@@ -7165,7 +7283,7 @@ href="http://www.elv.de/output/controller.aspx?cid=74&detail=10&detail2=29870">U
archivecmd / archivedir / nrarchive
- When a new FileLog file is opened, the FileLog archiver wil be called.
+ When a new FileLog file is opened, the FileLog archiver wil be called.
This happens only, if the name of the logfile has changed (due to
time-specific wildcards, see the FileLog
section), and there is a new entry to be written into the file.
@@ -7333,18 +7451,18 @@ isday
Define
define <name> FHEMRENDERER [global]
-
+
This defines a new "device", that is of type FHEMRENDERER. The option 'global' can be used if needed for sorting reasons.
Otherwise this option has no real meaning for FHEMRENDERER.
As a side-effect of defining this "device" the following attributes will be set for this "device":
- plotmode gnuplot
- plotsize 800,200
- refresh 00:10:00
- room Unsorted
- status off
- tmpfile /tmp/
- multiprocess off
+ plotmode gnuplot
+ plotsize 800,200
+ refresh 00:10:00
+ room Unsorted
+ status off
+ tmpfile /tmp/
+ multiprocess off
NOTE: The Logfile will report (with LogLevel 2) that the FHEMRENDERER has been defined.
@@ -7356,9 +7474,9 @@ isday
set <name> <value>
Set either on or off.
-
- This switches the timer-based rendering on/off. The attribute 'status' will be modified accordingly.
- NOTE: only WebLink based graphics will be rendered.
+
+ This switches the timer-based rendering on/off. The attribute 'status' will be modified accordingly.
+ NOTE: only WebLink based graphics will be rendered.
@@ -7367,35 +7485,35 @@ isday
Get
get <name> <[[file-name] device type logfile [pos=zoom=XX&off=YY]]>
-
- The get function supports different sets of arguments:
- Arguments:
- NONE: all WebLink based FilePlots will be rerendered
- The resulting filename will be '.png'
- THREE: device type logfile
- In this case only one specific graphic will be rendered:
- A graphic will be rendered for 'device', where device is a FileLog, based on the type 'type' based on the given 'logfile'
- The resulting filename will be 'attr-tmpfile logfile.png'
- FOUR: file-name device type logfile
- In this case only one specific graphic will be rendered:
- A graphic will be rendered for 'device', where device is a FileLog, based on the type 'type' based on the given 'logfile'
- The resulting filename will be 'attr-tmpfile file-name.png'
- FIVE: file-name device type logfile pos=zoom=XX&off=YYY
- In this case only one specific graphic will be rendered assuming that plotmode is 'gnuplot-scroll':
- A graphic will be rendered for 'device', where device is a FileLog, based on the type 'type' based on the given 'logfile'
- The 'zoom' will be either qday/day/week/month/year (same as used in FHEMWEB).
- The offset 'off' is either 0 (then the second part can be omitted), or -1/-2.... to jump back in time.
- The resulting filename will be 'attr-tmpfile file-name.png'
+
+ The get function supports different sets of arguments:
+ Arguments:
+ NONE: all WebLink based FilePlots will be rerendered
+ The resulting filename will be '.png'
+ THREE: device type logfile
+ In this case only one specific graphic will be rendered:
+ A graphic will be rendered for 'device', where device is a FileLog, based on the type 'type' based on the given 'logfile'
+ The resulting filename will be 'attr-tmpfile logfile.png'
+ FOUR: file-name device type logfile
+ In this case only one specific graphic will be rendered:
+ A graphic will be rendered for 'device', where device is a FileLog, based on the type 'type' based on the given 'logfile'
+ The resulting filename will be 'attr-tmpfile file-name.png'
+ FIVE: file-name device type logfile pos=zoom=XX&off=YYY
+ In this case only one specific graphic will be rendered assuming that plotmode is 'gnuplot-scroll':
+ A graphic will be rendered for 'device', where device is a FileLog, based on the type 'type' based on the given 'logfile'
+ The 'zoom' will be either qday/day/week/month/year (same as used in FHEMWEB).
+ The offset 'off' is either 0 (then the second part can be omitted), or -1/-2.... to jump back in time.
+ The resulting filename will be 'attr-tmpfile file-name.png'
- NOTE: If you want to use zoom AND offset then you have to concatenate via '&' !!
+ NOTE: If you want to use zoom AND offset then you have to concatenate via '&' !!
- NOTE: combinations are possible in limited ranges:
- meaning: you can add the 'pos=zoom=XX&off=YY' to any of the first three sets.
+ NOTE: combinations are possible in limited ranges:
+ meaning: you can add the 'pos=zoom=XX&off=YY' to any of the first three sets.
This may e.g. result in rendering all WebLinks with a specific zoom or offset
- (if you just pass the 'pos=zoom=xx&off=yy' parameter);
+ (if you just pass the 'pos=zoom=xx&off=yy' parameter);
- Any rendered image (one or all WebLinks) will be stored in 'attr-tmpfile' followed by a 'filename.png'. The filename will be
- either derived (from weblink-name or logfile-name) or, for single files, can be assigend.
+ Any rendered image (one or all WebLinks) will be stored in 'attr-tmpfile' followed by a 'filename.png'. The filename will be
+ either derived (from weblink-name or logfile-name) or, for single files, can be assigend.
@@ -7450,12 +7568,12 @@ isday
multiprocess
This defines if the Renderer works in a multiprocessing mode.
- You can set multiprocessing either to on / off and the renderer will draw the
- time-scheduled tasks either in multiprocessing mode, or not.
- NOTE: Direct GET calls, except for a general GET (for all weblinks) will be renderer
- in an interactive mode, meaning that the FHEM-Loop will be block as long as the graphics are rendered.
- If you want to use multiprocessing, set the RENDERER and multiprocessing to on and the
- weblink-graphics will be rendered in the background.
+ You can set multiprocessing either to on / off and the renderer will draw the
+ time-scheduled tasks either in multiprocessing mode, or not.
+ NOTE: Direct GET calls, except for a general GET (for all weblinks) will be renderer
+ in an interactive mode, meaning that the FHEM-Loop will be block as long as the graphics are rendered.
+ If you want to use multiprocessing, set the RENDERER and multiprocessing to on and the
+ weblink-graphics will be rendered in the background.
@@ -7475,36 +7593,36 @@ isday
define <name> PachLog <Pachube-API-Key>
<Pachube-API-Key>:
- The Pachube-API-Key however is what you need in your code to authenticate your application's access the Pachube service.
- Don't share this with anyone: it's just like any other password.
- www.pachube.com
+ The Pachube-API-Key however is what you need in your code to authenticate your application's access the Pachube service.
+ Don't share this with anyone: it's just like any other password.
+ www.pachube.com
Set
-
-
- Add a new Device for Logging to www.pachube.com
- set <NAME> ADD <FHEM-DEVICENAME> FEED-NR:ID:READING:ID:READING
- Example: KS300-Weather-Data
- READINGS: temperature humidity wind rain
- 1. Generate Input-Feed on www.pachube.com => Yout get your FEED-NR: 1234
- 2. Add Datastreams to the Feed:
-
-
- ID | 0 | temperature |
- ID | 1 | humidity |
- ID | 2 | wind |
- ID | 3 | rain |
-
- 3. Add the KS300 to your PachLog-Device
- set <NAME> ADD <My-KS300> 1234:0temperature:1:humidity:2:wind:3:rain
- Delete a Device form Logging to www.pachube.com
- set <NAME> DEL <FHEM-DEVICENAME>
-
-
+
+
+ Add a new Device for Logging to www.pachube.com
+ set <NAME> ADD <FHEM-DEVICENAME> FEED-NR:ID:READING:ID:READING
+ Example: KS300-Weather-Data
+ READINGS: temperature humidity wind rain
+ 1. Generate Input-Feed on www.pachube.com => Yout get your FEED-NR: 1234
+ 2. Add Datastreams to the Feed:
+
+
+ ID | 0 | temperature |
+ ID | 1 | humidity |
+ ID | 2 | wind |
+ ID | 3 | rain |
+
+ 3. Add the KS300 to your PachLog-Device
+ set <NAME> ADD <My-KS300> 1234:0temperature:1:humidity:2:wind:3:rain
+ Delete a Device form Logging to www.pachube.com
+ set <NAME> DEL <FHEM-DEVICENAME>
+
+
Get
@@ -7513,11 +7631,11 @@ isday
Attributes
- do_not_notify
- - loglevel
-
+ - loglevel
+
- disable
- Disables PachLog.
- Nor more Logging to www.pachube.com
+ Disables PachLog.
+ Nor more Logging to www.pachube.com
@@ -7528,18 +7646,18 @@ isday
dumpdef <options>
- Data::Dumper for FHEM-Devices/Hashes
- Dumps the content of <options> to FHEMWEB
- Options:
-
-
- FHEM-DEVICENAME | => | %defs{FHEM-DEVICENAME}+%attr{FHEM-DEVICENAME} |
- MOD | => | %modules |
- SEL | => | %selectlist |
- DAT | => | %data |
- CMD | => | %cmd |
-
-
+ Data::Dumper for FHEM-Devices/Hashes
+ Dumps the content of <options> to FHEMWEB
+ Options:
+
+
+ FHEM-DEVICENAME | => | %defs{FHEM-DEVICENAME}+%attr{FHEM-DEVICENAME} |
+ MOD | => | %modules |
+ SEL | => | %selectlist |
+ DAT | => | %data |
+ CMD | => | %cmd |
+
+
Example:
@@ -7559,7 +7677,7 @@ isday
$VAR1 = {
'room' => 'DEF_DUMMY,GRP.TEST'
};
-
+
|