2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-01-31 12:49:34 +00:00

correction, clarifications, update

git-svn-id: https://svn.fhem.de/fhem/trunk@1127 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
rudolfkoenig 2011-12-04 11:24:12 +00:00
parent ea5bc36e2c
commit 24f5984bef
5 changed files with 100 additions and 66 deletions

View File

@ -36,15 +36,22 @@
<a name="starting"></a>
<h3>Starting fhem</h3>
<ul>
Skip this section if you installed fhem via the Debian
<a href="http://fhem.de/fhem-=VERS=.deb">package</a> or via the Fritzbox7390
<a href="http://fhem.de/fhem-=VERS=-fb7390.image">image</a><br><br>
Skip this section if you installed fhem via the Debian <a
href="http://fhem.de/fhem-=VERS=.deb">package</a>, the Fritz!Box 7390
<a href="http://fhem.de/fhem-=VERS=-fb7390.image">image</a>, or the FB
7170/7270 <a href="http://fhem.de/fhem-=VERS=.fb7270.zip">zip file</a>.
<br><br>
First install the Device::SerialPort (or Win32::SerialPort) perl module
with the command <code>"sudo cpan Device::SerialPort"</code>. There are
also precompiled debian packages (libdevice-serialport-perl), and this
module is already installed on OSX. You will need it to access the USB
devices<br><br>
As most fhem installations access the "outer world" via a USB device
connected to the fhem computer (CUL, FHZ1x00, etc), we most probably need
the perl serial module.<br>
This is why you should first install the Device::SerialPort (or
Win32::SerialPort) perl module with the command <code>"sudo cpan
Device::SerialPort"</code>. There are also precompiled debian packages
(libdevice-serialport-perl), and this module is already installed on OSX
10.6. If you cannot install it, you then take a look at the directio
option<br><br>
The default configuration will install fhem into /usr/bin,
/usr/share/fhem and /var/log/fhem and /etc/fhem.cfg, according to the
@ -62,7 +69,7 @@
</ul>
<a name="FHZ"></a>
<h3>Attaching the USB device for the PC (CUL / FHZ1x00PC / EM1010PC)</h3>
<h3>Attaching the USB device for the PC (CUL / FHZ1x00PC / etc)</h3>
<ul>
Connect to fhem with an internet browser:
<a href="http://localhost:8083/fhem">http://fhem-host:8083/fhem</a>
@ -72,7 +79,7 @@
<a href="http://localhost:8084/fhem">http://fhem-host:8085/fhem</a> if
you are using a tablet like the iPad.<br><br>
Attach the USB device (CUL, FHZ1000PC/FHZ1300, EM1010PC) to your
Attach the USB device (CUL, FHZ1000PC/FHZ1300, TUL, EUL, etc) to your
computer, and look for the corresponding device in the /dev
directory. For <a href="commandref.html#CUL">CUL</a> a file named
/dev/ttyACM* will be created under
@ -105,7 +112,7 @@
</ul>
<a name="autocreate"></a>
<h3>Configuring transmitter devices</h3>
<h3>Configuring transmitter devices (sensors)</h3>
<ul>
The sample configuration file installed via "make install-pgm2" has
configured an <a href="commandref.html#autocreate">autocreate</a>
@ -155,7 +162,7 @@
</ul>
<a name="FS20rx"></a>
<h3>Configuring FS20 receivers</h3>
<h3>Configuring FS20 receivers (actors)</h3>
<ul>
Configure the <a href="commandref.html#FS20">FS20</a> device in
fhem first with:<pre>
@ -168,7 +175,11 @@
Now set the model attribute of the device:<pre>
attr lamp1 model fs20st</pre>
to get only the commands available for this device.
to get only the commands available for this device.<br><br>
Other systems (EnOcean/HomeMatic) require a more elaborate procedure, and
the corresponding USB device is to be set into a pairing mode first. See
the commandref entry for your device.
</ul>
@ -194,7 +205,13 @@
notifies/watchdogs do. You can even simulate events by using the
<a href="commandref.html#trigger">trigger</a> command:<pre>
trigger lamp1 on</pre>
</ul>
For a more complex automation you can either control fhem by an external
program via telnet or HTTP, or (the usual way) do this via the fhem at
and notify commands. at and notify takes either simple fhem commands,
shell skripts or "perl oneliners" as argument. For details and tips on
the perl oneliners read the <a href="commandref.html#perl">Perl
specials</a> section in the commandref.html</ul>
<a name="rooms"></a>
<h3>FHEMWEB (pgm2) look and feel</h3>
@ -203,12 +220,21 @@
attribute. FHEMWEB puts devices without a room attribute into the
"Unsorted" room. Devices in the room "hidden" will not be shown.
<br><br>
You can also define a stripped down FHEMWEB instance, by defining the
Menu entries to be hidden in the
<a href="commandref.html#hiddenroom">hiddenroom</a> FHEMWEB attribute.
<br><br>
Set the title of the webpage by setting the <code>title</code> attribute of the global
device ("All together" -> global)<br><br>
Set the title of the webpage by setting the <code>title</code> attribute
of the global device ("All together" -> global)<br><br>
Edit the colors / fonts by changing the style.css ("Edit files" ->
style.css)<br><br>
style.css), or create you own style (see <a
href="commandref.html#stylesheetPrefix">stylesheetPrefix</a> , so it
won't be overwritten by the next <a
href="commandref.html#updatefhem">updatefhem</a> command.
<br><br>
Further FHEMWEB attributes:
<a href="commandref.html#webname">webname</a>,
@ -245,7 +271,8 @@
<h3>Plotting logs</h3>
<ul>
Autocreate will create weblinks (i.e. plots) for newly detected devices.
The following section describes how to do it manually.<br><br>
The following section describes how to do it manually, e.g. if you want
to plot data from different sensors together.<br><br>
To convert a FileLog into a plot (chart) in FHEMWEB, set the
<a href="commandref.html#logtype">logtype</a> attribute of the
@ -260,22 +287,21 @@
attr hms100th_log logtype temp4hum6:Plot,text
</pre>
When displaying the plot, you can convert it into a "weblink" device,
so that we can in turn have a room attribute to group more than one Plot
together. If the weblink refers to the current logfile, then it will be
stored as a CURRENT weblink, and it will always display the most recent
log (you do not have to redefine it if the logfile changes due to
year/month/date parameters in its name).
When displaying the plot, you can convert it into a
<a href="commandref.html#weblink">weblink</a>, which
has its own attributes. If the weblink refers to the current
logfile, then it will be stored as a CURRENT weblink, and it will always
display the most recent log (you do not have to redefine it if the
logfile changes due to year/month/date parameters in its name).
<br><br>
The logs can be converted to a plot either with gnuplot (which must be
installed and in your PATH), or via the builtin SVG module, in this case
your browser must support SVG. Firefox, Opera, Chrome, Safari
(both on OSX and iOS) support SVG out of the box, Internet Explorer
from version 9. IE prior to version 9 does it via the Adobe "SVG viewer"
plugin, on Android you need Opera or Firefox.<br><br>
your browser must support SVG. All browsers support SVG, the notable
exception is Internet Explorer prior to version 9 and Android prior to
version 3.0. For such Android devices try Opera or Firefox.<br><br>
SVG mode is the default, to change it set the <a
href="commandref.html#plotmode">plotmode</a> attribute to gnuplot or
@ -288,17 +314,17 @@
magnifier icons at the top of the page.<br><br>
Note: the gnuplot files must have #FileLog entries in order to be useable
with gnuplot-scroll or SVG, as the filtering happens with the FileLog get
with gnuplot-scroll or SVG (these lines are treated as comment by
gnuplot, but not by fhem!), as the filtering happens with the FileLog get
function, see the supplied gnuplot files or the column_spec paragraph <a
href="commandref.html#FileLogget">here</a> for the syntax.<br><br>
The order of the #FileLog lines must match the corresponding 'awk'
entries.<br><br>
It make sense to build large logfiles for scrolling in them (year
resolution), or smaller ones if you do not want to use the zoom/scroll
feature. The size of the logfiles will be determined by its wildcard
characters (year/month/week/day), look at the FileLog definition.
I recommend using log files with year resolution, this is determined by
its wildcard characters (year/month/week/day), look at the FileLog
definition.
</ul>
<a name="tips"></a>
@ -313,7 +339,11 @@
<ul>
<li>Using the builtin features of FHEMWEB for <a
href="commandref.html#basicAuth">basic</a> html authentication and <a
href="commandref.html#HTTPS">HTTPS</a>. <br><br>
href="commandref.html#HTTPS">HTTPS</a>. The perl modules needed for
HTTPS are missing from the FritzBox distribution, I recommend a direct
VPN connection here.<br><br>
<li>Using apache to implement this features, and redirect a certain prefix to
each FHEMWEB instance.<br>
@ -348,7 +378,7 @@
<br><br>
</ul>
To display "foreign" (non fhem) files as a plot or a just as plain text,
To display "foreign" (non fhem) files as a plot or just as plain text,
configure a fake logfile with the correct filename and an unused regexp,
e.g.<br><pre>
define messages FileLog /var/log/messages fakelog</pre>

View File

@ -31,6 +31,7 @@
<a href="#attr">attr</a> &nbsp;
<a href="#CULflash">CULflash</a> &nbsp;
<a href="#createlog">createlog</a> &nbsp;
<a href="#define">define</a> &nbsp;
<a href="#delete">delete</a> &nbsp;
<a href="#deleteattr">deleteattr</a> &nbsp;
@ -542,7 +543,8 @@ A line ending with \ will be concatenated with the next one, so long lines
<code>jsonlist [&lt;devspec&gt;|&lt;typespec&gt;|ROOMS]</code>
<br><br>
Returns an JSON tree of all definitions, all notify settings and all at
entries if no parameter is given.
entries if no parameter is given. Can also be called via HTTP by
http://fhemhost:8083/fhem?cmd=jsonlist&XHR=1
<br><br>
Example:
<pre><code> fhem> jsonlist
@ -732,7 +734,9 @@ A line ending with \ will be concatenated with the next one, so long lines
Download the CUL firmware from a nightly SVN chekout and flash the
hardware. Currently only the CUL is supported with its versions:
CUL_V2, CUL_V2_HM, CUL_V3, CUL_V4.<br>
<b>Note:</b> dfu-programmer has to be installed in the path.<br>
<b>Note:</b> dfu-programmer has to be installed in the path, this is
already the case with the Fritz!Box 7390 image from fhem.de<br>
If the CUL is not yet flashed, then first define a <a href="#CUL">CUL</a>
device (even if fhem won't be able to open the device), insert it with the
button pressed (this will set the device into flash-mode), then issue the
@ -8093,13 +8097,7 @@ isday</pre>
<li>min(a,b), max(a,b)</li>
<li>time_str2num("YYYY-MM-DD HH:MM:SS") returns a numerical value,
which makes computation of time differences easier</li>
<li>abstime2rel("HH:MM:SS") converts an absolute time to a relative one,
to compare it with the sunrise commands in the following example:<br>
# Switch lamp1 on at sunrise, but not before 07:00<br>
define a13 at +*{max(abstime2rel("07:00"),sunrise_rel())} set lamp1
on<br>
# Note that this functionality is easier to achieve with:<br>
define a13 at +*{sunrise_rel(0,"07:00",undef)} set lamp1 on<br>
<li>abstime2rel("HH:MM:SS") converts an absolute time to a relative one
</li>
</ul>
</li>
@ -8136,10 +8134,8 @@ isday</pre>
By using the 99_SUNRISE_EL.pm module, you have access to the following
functions: <br>
<ul>
sunset_rel($offset, $min, $max)<br>
sunset_abs($offset, $min, $max)<br>
sunrise_rel($offset, $min, $max)<br>
sunrise_abs($offset, $min, $max)<br>
sunset($offset, $min, $max)<br>
sunrise($offset, $min, $max)<br>
isday()<br>
</ul>
offset is in seconds, and the format of min/max is "HH:MM" or "HH:MM:SS".

View File

@ -81,8 +81,9 @@
Builtin pgm2 / external pgm5 web frontend:
<a href="pgm2-1.png">overview</a>,
the same rendered for <a href="pgm2-4.png">smartphones</a>,
<a href="pgm2-2.png">detail</a>, <a
href="pgm2-3.png">SVG-plots</a>.
<a href="pgm2-2.png">detail</a>,
<a href="pgm2-3.png">SVG-plots</a>,
<a href="pgm2-5.png">dark style</a>.
<br><br>
pgm3 web frontend: <a

View File

@ -35,25 +35,32 @@
The bad news with this fhem-image is, that it will start fhem in a chroot
environment, i.e. you will not be able to trigger arbitrary FritzBox
functions out of fhem, e.g. sending mail, enabling WLAN, etc.
<br><br>
functions out of fhem, e.g. sending mail, enabling WLAN, etc., it relies
only on the commands provided by a busybox copied to the chroot
environment. <br><br>
<a href="fhem-=VERS=-fb7390.image">This</a> image from fhem.de contains a
stripped down version of the perl package from the AVM fhem-image, the fhem
package, a dfu-programmer for flashing the CUL, and a modified installation
script.
The main difference is starting fhem in a normal (non-chroot) environment,
and enabling autocreate. When installing it, you have to confirm with an
extra click that it does not have a valid AVM signature. It will reuse your
old logfiles and configuration, unlike the "original" AVM firmware.
Autocreate is on, and there are NO CUL devices defined in the initial
configuration, you'll have to do this manually, e.g. by following the HOWTO
or the command reference.
<a href="fhem-=VERS=-fb7390.image">This</a> fhem-image contains a stripped
down version of the perl package from the AVM fhem-image, a newer version
of fhem, and a modified installation script. The main difference is
starting fhem in a normal (non-chroot) environment, and enabling
autocreate. When installing it, you have to confirm with an extra click
that it does not have a valid AVM signature. It will reuse your old
logfiles and configuration, unlike the "original" AVM firmware. Autocreate
is on, and there are NO CUL devices defined in the initial configuration,
you'll have to do this manually, e.g. by following the HOWTO or the command
reference.
</ul>
<h3>Fritz!Box 7270 (as of 2011-09-03)</h3>
<h3>Fritz!Box 7170/7270 (as of 2011-09-03)</h3>
<ul>
Thank to Eyk's work there is also a <a
href="fhem-=VERS=-fb7270.zip">ZIP</a> file for the Fritz!Box7270. To install it:
href="fhem-=VERS=-fb7270.zip">ZIP</a> file for the Fritz!Box 7170 and 7270
models. As the FB720/7170 has not enough internal storage to install fhem
on it, you have to use an external USB Drive, and this package follows a
different approach than the FB7390 image.To install it:
<ul>
<li>First unzip the .ZIP file in the root directory of the USB-disk/USB-stick.
<li>Attach the stick to the FB
@ -61,8 +68,8 @@
<li>With the command df check the name of the stick on the FB.
<li>Execute the following command in the FB telnet window to start fhem
when the FB reboots:<br>
echo "&lt;name-of-the-stick&gt;/fhem/startfhem" >> /var/flash/debug.cfg
<li>Start fhem manually with "&lt;name-of-the-stick&gt;/fhem/startfhem"
echo "&lt;path-of-the-stick&gt;/fhem/startfhem" >> /var/flash/debug.cfg
<li>Start fhem manually with "&lt;path-of-the-stick&gt;/fhem/startfhem"
</ul>
</ul>

BIN
fhem/docs/pgm2-5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB