- SVN
  - feature: internal NotifyOrderPrefix: 98_average.pm is more straightforward
  - feature: the usb command tries to flash unflashed CULs on linux
  - feature: FHEMWEB: jsonp support, .holiday and .cfg added to Edit Files
  - feature: SVG: filled area support, some ls/lw fixes
  - feature: WOL (wake on lan) module added (by Matthias)
  - feature: additional groups from /etc/groups are applied (Christopher)
  - feature: updatefhem backup is using tar+gzip now
  - feature: EIB: introduce Get, interpret received values upon defined model
             (by datapoint types) (Maz)
  - feature: NetIO230B module by Andy
  - feature: Retaining configfile comments (not within a define statement)
  - feature: EnOcean PM101 by Ignaz
  - feature: FHEMWEB redirectCmds attribute added
  - feature: CUL_TX minsecs attribute (by Arno)
  - feature: webCmd in smallScreen added
  - feature: TRX modules by Willi
  - feature: FHEMWEB icons (by Joerg)
  - feature: FHEMWEB console (== inform timer)
  - feature: remove dependency on Google::Weather, major rewrite (Boris)
  - feature: started experimental interface implementation (fhem API v2) (Boris)
  - change:  Makefile: additional targets, moderate output (M.Fischer)
  - change:  Housekeeping (M.Fischer)
             - modpath/FHEM: only contains modules
             - modpath/www/pgm2: includes all files from pgm2 now


- 2011-12-31 (5.2)
  - bugfix:  applying smallscreen attributes to firefox/opera
  - feature: CUL_TX added (thanks to Peterp)
  - feature: TCM120/TCM310 + EnOcean parser added
  - feature: eventMap enhanced
  - bugfix:  enabled logging for 59_Weather.pm (Boris)
  - feature: language selection for 59_Weather.pm (Erwin)
  - feature: .gplot files renamed from type to content
  - bugfix:  FS20 on-for-timer error reporting only in the logfile
  - bugfix:  FHEM2FHEM should work with CUL again, after syntax change
  - feature: CUL directio mode (No Device::SerialPort needed)
  - feature: FritzBox 7270 ZIP file
  - bugfix:  prevent fhem from stalling if telnet times out in 66_ECMD.pm
  - feature: added postproc ability to classdef in 66_ECMD.pm (Boris, Heinz)
  - feature: FHEMWEB longpoll mode, small fixes, tuned smallscreen mode
  - feature: average module added
  - change:  moved the berliOS CVS repository to a sourceforge SVN repository
  - feature: all FHEM modules have now a subversion id.
  - bugfix:  new perl compiled for the FritzBox 7270
  - feature: regexp1WontReactivate Attribute added
  - bugfix:  XmlList special handling
  - bugfix:  CUL_WS rain sensor corr1 fix
  - feature: FHEMWEB stylesheet attribute repaced with stylesheetPrefix
  - feature: notify attribute forwardReturnValue
  - change:  move JsonList from contrib to main-modules
  - change:  JsonList output optimized and more structured
  - feature: FHEMWEB save button, smallscreen first screen fix
  - feature: FHEMWEB encoding is now UTF-8, alias attribute is respected
  - change:  HTTPS certs directory moved from cwd into modpath
  - feature: shutdown parameter restart added
  - feature: usb scan/create command added (part of autocreate).
  - feature: SaveAs added to FHEMWEB Edit-Files
  - feature: EnOcean ElTako dimmer by Marc.
  - feature: fhem is started as user fhem on the FB7390

  
- 2011-07-08 (5.1)
  - feature: smallscreen optimizations for iPhone
  - feature: FHT8V rewrite (and moved from contrib into the FHEM directory).
  - feature: PID rewrite (and moved from contrib into the FHEM directory).
  - feature: FHEM2FHEM module
  - bugfix:  CUL get should not digest foreign events (fhtsoftbuffer)
  - bugfix:  S300TH sanity check won't allow negative temperatures.
  - feature: decode CUL uptime
  - feature: USB doc changes, FHZ initFS20_02/stopHMS parameters by Andreas.
  - feature: CUL_HM for some HomeMatic devices.
  - bugfix:  HTML-Syntax check of the pgm2 output and documents (*.html)
  - feature: added date alias for FHT80b (Boris)
  - feature: attr may be a regexp (for CUL_IR)
  - feature: Homepage moved from koeniglich.de/fhem to fhem.de
  - feature: eventMap attribute
  - feature: 64_ESA2000 added (by STefan/Gerd)
  - feature: new modules 66_ECMD.pm and 67_ECMDDevice.pm for ethersex-enabled
             devices and alike.
  - bugfix:  serial port setting on Linux broken if running in the background
  - feature: IPV6 support, FHEMWEB basicAuth and HTTPS support
  - feature: createlog added to the autocreate module
  - feature: contrib/tcptee.pl added
  - feature: HMLAN support
  - feature: Fritzbox7390 image
  - feature: pgm2 tablet support, included into the default configuration
  - feature: TUL/EIB Support (by Maz)
  - feature: updatefhem/CULflash
  - feature: $value{} => Value(), $oldvalue => OldValue()/OldTimestamp()


- 2010-08-15 (5.0)
  - **NOTE*: The default installation path is changed to satisfy lintian
  - feature: KM271
  - bugfix:  99_SUNRISE_EL endless loop bug
  - feature: CUL: optional baudrate spec in definition
  - feature: CUL: sendpool attribute
  - feature: CUL_HOERMANN module added
  - bugfix:  DST change: absolute at and relative sunrise fix
  - feature: FHEMWEB javascript additions for SVG plots (click on lines/labels)
  - feature: FHEMWEB smallscreen attribute (for smartphones)
  - bugfix:  the internal fhem() used in perl oneliners does not return a value
  - feature: Dimmer function of X10 module changed to match FS20
  - feature: allow only meaningful readings (fill level > -5%) in USF1000
  - feature: device attr links in commandref.html
  - bugfix:  make BS known to CUL to avoid lost messages if both FHZ1300 and CUL
             are connected, adjust matching rule
  - feature: Copy&Paste in SVG
  - feature: Debian/Ubuntu Package. Install-path changes to satisfy lintian
  - feature: Allnet 3076/4027/4000T
  - feature: RFXCOMM Module for Oregon Weatherstations
  - feature: Davis VantagePro2
  - feature: ELV USB-WDE1
  - feature: addvaltriggers CUL attribute for adding RSSI as a trigger
  - feature: CUL_WS sanity check for large temp differences.

- 2010-03-13 (4.9)
  - bugfix:  changed the fhem prompt from FHZ> to fhem>
  - bugfix:  CUL_RFR fixes (chaining RFR's should work)
  - bugfix:  Path in the examples fixed (got corrupted)
  - bugfix:  PachLog fixes from Axel
  - bugfix:  HOWTO/Examples revisited for correctness
  - bugfix:  INITIALIZED, DEFINED, RENAMED, DELETED triggers
  - feature: image weblinks from Stefan
  - feature: OWFS support for passive Devices e.g. DS9097 (see commandref.html)
  - bugfix:  OWFS crash fhem with PGM2/3, xmllist (M.Fischer)
  - bugfix:  OWTEMP Defining a device without OWFS now fails (M.Fischer)
  - bugfix:  21_OWTEMP.pm missing trigger fo notify/filelog (M.Fischer)
  - feature: 99_getstate.pm get state from S555TH now (M.Fischer)
  - feature: pgm3: automatic support for CUL_WS (S300TH) added (MartinH)
  - bugfix:  21_OWTEMP.pm missing space within state logging (M.Fischer)
  - bugfix:  21_OWTEMP.pm interval fixed (M.Fischer)
  - bugfix:  21_OWTEMP.pm rewrite with errorcontrol and demo mode (M.Fischer)
  - feature: ignore attribute
  - bugfix:  [pgm3] table-format on Android-Browser optimized
  - feature: [pgm3] Skinable - change the colors.
  - feature: [pgm3] Rooms possible for Webcam and Google-Weather
  - bugfix:  dummy/structure was listed twice in list and xmllist
  - feature: 11_FHT.pm added new readings for warnings on battery, lowtemp,
             window and windowsensor (M.Fischer)
  - feature: autocreate.pm (create undefined RF devices, logs and plots)
  - feature: on-for-timer added for X10 modules (Boris)
  - bugfix:  pgm3: Better check of availability of google-weather (MartinH)
  - feature: pgm3: DBLog added for everything except UserDefs
  	     (Gerhard Pfeffer / MartinH)
  - feature: pgm2 style changes, SVG in background, optional compression

- 2009-11-28 (4.8)
  - bugfix:  loosing data when sending FS20 messages in a group
  - bugfix:  better handling of disconnected CUN
  - feature: softfhtbuffer added to CUL
  - bugfix:  pgm3: Pulldown-Menu FHTDEV with error-check (MartinH)
  - feature: duplicate buffer added for multi-cul/-fhz setups
  - feature: 20_OWFS.pm for 1-Wire via OWFS added (Martin Fischer)
  - feature: 21_OWTEMP.pm for 1-Wire Digital Thermometer added (Martin Fischer)
  - feature: CUL_FHTTK from Kai
  - feature: pgm3: Google-Weather, Battery-Check, Log-View added (MartinH)
  - feature: CUL_RFR (RF_ROUTING) added
  - feature: Command save retains now the order of the old config file
  - feature: List parameter added (list .* RFR_MSGCNT)

- 2009-10-23 (4.7)
  - bugfix:  Reattached corrupted CUL device caused uninitialized message
  - bugfix:  CUL/HMS changes, HMS cleanup
  - bugfix:  EM/EMWZ/EMGZ set changed to work in FHEMWEB
  - bugfix:  Avoid unitialized in xmllist for corrupt readings, reporter Boris
  - bugfix:  Add binmode to 01_fhemweb.pm for windows
  - bugfix:  Uniform check for windows, enable CUL for windows.
  - bugfix:  CUL/HMS parsing patches from Peter
  - bugfix:  Fixes for Windows by Klaus
  - bugfix:  Another "rereadcfg" bugfix
  - feature: Update to the current (1.27) CUL FHT interface
  - feature: suppress inplausible readings from USF1000
  - feature: get time, fwrev, set reopen for CM11 (Boris 2009-09-12)
  - bugfix:  FHZ_ReadAnswer bugfix for Windows (Klaus, 20.8.2009)
  - feature: CUL: device access code reorganized, TCP/IP support added (CUN)
  - feature: Pachube module from Axel
  - feature: dumpdef module from Axel in contrib
  - feature: javascripting support in FHEMWEB (Klaus/Axel)
  - feature: Module 09_BS.pm for brightness sensor added (Boris 2009-09-20)

- 2009-07-03 (4.6)
  - bugfix:  fht actuator message clarification by Klaus
  - feature: getstate command from Martin (25.12)
  - bugfix:  at drifts for relative timespecs
  - bugfix:  Add IODev to CUL/EM/CUL_WS/HMS/KS300
  - bugfix:  FileLog get (pgm2 plots) wont find the first row in the file
  - feature: 00_CUL: Answer CUR requests (status/time/fht)
  - bugfix:  support for second correction factor for EMWZ in 15_CUL_EM added
  - feature: CUL further sets/gets added
  - feature: Removed msghist for multiple FHZ handling, IODev attribute added
  - bugfix:  cut off string "(counter)" from fallback value in 13_KS300.pm
  - feature: daily/monthly cumulated values for EMWZ/EMGZ/EMWM with 15_CUL_EM
  - feature: 01_FHEMWEB.pm: multiple room assignments
  - feature: 01_FHEMWEB.pm: fixedrange with optional [day|week|month|year]
  - feature: 01_FHEMWEB.pm: attr title and label for flexible .gplot files
  - feature: fhem.pl: attr global logdir used by wildcard %ld
  - feature: do not block on disconnected devices (FHZ/CM11/CUL)
  - bugfix:  deleting at definition in the at command
  - bugfix:  deleting a notify/at/watchdog definition in a notify/at/watchdog
  - feature: devspec <attr>=<value>. E.g. set room=kitchen off; list disabled=
  - feature: Common Module calling for CUL/FHZ/CM11
  - feature: Store CUL sensitivity info
  - feature: avoid the "unknown/help me" message for unloaded devices
  - feature: structure module for large installations
  - feature: Cost Control in 15_CUL_EM (CostPerUnit, BasisFeePerMonth)
  - feature: add counter differential per time in 81_M232Counter.pm
  - feature: added USB compendium to documentation
  - feature: pgm3: Documentation for pgm3 updated, HMS100CO added (and bugfix)
  - bugfix:  Defining a repeated at job in a sunrise/sunset at job fails
  - bugfix:  FHT "summer" fix (avoiding a lot of syncnow)
  - feature: FHEMWEB modules added
  - feature: holiday module + doc + example + holiday2we attribute
  - bugfix:  sunrise stuff fixed, doc missing
  - feature: CUL FHT sending added
  - bugfix:  workaround to make M232 counter wraparound
  - feature: sequence module added
  - feature: Google Weather API support for FHEM (Boris 2009-06-01)
  - feature: lazy attribute for FHT devices (Boris 2009-06-09)
  - feature: tmpcorr attribute for FHT devices
  - feature: CUL_EM generates an event for each of the READINGS
  - feature: USF1000S support for FHEM added (Boris 2009-06-20)
  - feature: CUL supports HMS (culfw >= 1.22 needed)
  - feature: CUL shutdown procedure added
  - feature: 14_CUL_WS: better error checking
  - bugfix:  webpgm2 multi line editing is working again

- 2008-12-23 (4.5)
  - bugfix:  further 01_FHEMWEB cleanup
  - feature: CUL support for FS20(r/w), FHT(readonly), KS300 and EM
  - feature: command list outputs the device attributes too
  - bugfix:  rename bugs fixed
  - bugfix:  better integration of ReadyFn (Windows), slight overall speedup
  - bugfix:  Ignore/correct casing when autoloading modules
  - bugfix:  at is executed twice after a modify (rufus99, 2008-09-10)
  - feature: FHT internal modifications (better protocol understanding)
  - feature: add timestamp to inform
  - feature: The strange stty settings in 00_FHEM.pm are optional
  - bugfix:  webpgm2 iPhone fix
  - feature: fullinit and reopen commands for FHZ added (Boris 2008-11-01)
  - bugfix:  undefined NotifyFn in fhem.pl (Boris 2008-11-01)
  - feature: new modules 00_CM11.pm and 20_X10.pm for integration of X10
             devices in fhem (Boris 2008-11-02)
  - feature: X10 support for pgm3 (Boris 2008-11-02)
  - bugfix:  FHT short message warning
  - bugfix:  rereadconfig crashes with active webpgm2 connections (2008-11-13)
  - bugfix:  watchdog crash (2008-11-15)
  - bugfix:  Strange call for nonexistent MyCUL: ReadFn
  - feature: webpgm2: gplot output goes to /tmp/gnuplot.err
  - feature: devspec TYPE,DEF,STATE. e.g. list TYPE:FS20, set DEF:123 on
  - bugfix:  at schedules 2 events after the DST change (fix not verified)
  - feature: commandref.html reorg. There are now device sections.
  - feature: CUL / CUL_EM / CUL_WS documentation
  - feature: do not block fhem when the CUR is disconnected
  - bugfix:  correct correction factors for EMEM in 15_CUL_EM.pm
  - bugfix:  more stable CUL initialization
  - feature: reworked 15_CUL_EM.pm to account for timer wraparounds, more
             readings added
  - feature: speed gain through disabled refreshvalues query to all FHTs at
             definition; if you want it back at a "set myFHT report1 255
             report2 255" command to the config file.
  - feature: fhem commands may be added in modules. XmlList is external now.
  - bugfix:  rereadcfg from webpgm2 does not crash fhem.pl
  - feature: jsonlist command from Martin (contrib/JsonList)
  - feature: contrib/rotateShiftWork from Martin
  - feature: contrib/fhem2speech from Martin
  - bugfix:  attributes of at devices disappear
  - feature: attribute rainadjustment for KS300 (Boris 2008-12-17)
  - bugfix:  deleting at / watchdog while active creates an empty device
  - feature: ExactId trigger added for wildcard HMS devices

- 2008-08-04 (4.4)
  - feature: RM100-2 battery empty warning (mare 23.07.08)
  - feature: optimising the pgm2/SVG memory usage
  - feature: autoloading FHEM modules
  - bugfix:  STATE/$value is carrying again the correct value
  - feature: enhancing the Makefile and the documentation
  - feature: 90_at is using now InternalTimer, subsecond precision added
  - feature: HMS100-FIT added (01.01.08 by Peter and 22.01.08 by Juergen)
  - feature: 91_watchdog added to handle the HMS100-FIT
  - feature: cum_kWh/cum_m3 added to EMWZ/EMGZ (11.01.08 by Peter)

- 2008-07-12 (4.3)
  - bugfix:  KS300 state was wrong after the STATE bugfix
  - feature: HMS100CO (by Peter)
  - feature: EMGZ (by Peter)
  - feature: Generate warning if too many commands were sent in the last hour
  - doc:     linux.html: Introduction (Peter S.)
  - feature: contrib/82_M232Voltage.pm (by Boris, 24.12)
  - feature: delattr renamed to deleteattr (Rudi, 29.12)
  - feature: defattr renamed to setdefaultattr (Rudi, 29.12)
  - feature: device spec (list/range/regexp) for most commands implemented
  - feature: %NAME, %EVENT, %TYPE parameters in notify definition
  - feature: added 93_DbLog.pm, database logging facility (Boris, 30.12.)
  - feature: webfrontend/pgm2 converted to a FHEM module
  - bugfix:  99_SUNRISE_EL.pm: may schedule double events
  - bugfix:  62_EMEM.pl, contrib/em1010.pl: correct readings for energy_kWh
             and energy_kWh_w (Boris, 06.01.08)
  - feature: global attr allowfrom, as wished by Holger (8.1.2008)
  - feature: FHT: multiple commands, softbuffer changes, cmd rename, doc
  - feature: EM1010PC: automatic reset
  - feature: contrib/00_LIRC.pm (25.3, by Bernhard)
  - bugfix : 00_FHZ: additional stty settings for strange Linux versions
  - bugfix : pgm2 wrong temp summary for FHT's (reported by O.D., 16.4.2008)
  - feature: FHEM modules may live on a filesystem with "ignorant" casing (FAT)
  - feature: FileLog "set reopen" for manual tweaking of logfiles.
  - feature: multiline commands are supported through the command line
  - feature: pgm2 installation changes, multiple instances, external css
  - feature: 87_ws2000.pm (thomas 10.05.08)
  - contrib: ws2000_reader.pl Standalone decoder and server (thomas 10.05.08)
  - doc:     update fhem.html and commandline.html reflecting ws2000 and
             windows installation(thomas 10.05.08)
  - feature: add ReadyFn to fhem.pl in main loop to have an alternative for
             select, which is not working on windows (thomas 11.05)
  - feature: set timeout to 0.2s, if HandleTimeout returns undef=forever
  - bugfix : WS2000:fixed serial port access on windows by replacing FD with
             ReadyFn
  - bugfix : FileLog: dont use FH->sync on windows (not implemented there)
  - feature: EM, WS300, FHZ:Add Switch for Device::SerialPort and
             Win32::SerialPort to get it running in Windows (sorry, untested)
  - bugfix:  FileLog undefined $data in FileLog_Get
  - feature: fhem.pl check modules for compiletime errors and do not initialize
             them
  - feature: M232 add windows support (thomas 12.05.08)
  - feature: add simple ELV IPWE1 support (thomas 12.05.08)
  - feature: FileLog get to read logfiles. Used heavily by webpgm2
  - feature: webpgm2: gnuplot-scroll mode to navigate/zoom in logfiles
  - bugfix:  deleting FS20 device won't result in unknown device (Daniel, 11.7)
  - feature: webpgm2 generates SVG's from logs: no need for gnuplot
  - bugfix:  examples corrected to work with current syntax

- 2007-12-02 (4.2)
  - feature: added archivedir/archivecmd to the the main logfile
  - feature: 99_Sunrise_EL.pm (does not need any Date modules)
  - bugfix:  seldom xmllist error resulting in corrupt xml (Martin/Peter, 4.9)
  - bugfix:  FHT mode holiday_short added (9.9, Dirk)
  - bugfix:  Modifying a device from its own trigger crashes (Klaus, 10.9)
  - feature: webpgm2 output reformatted
  - feature: webpgm2 displaying multiple plots
  - feature: FHT lime-protection code discovered by Dirk (7.10)
  - feature: softwarebuffer for FHT devices (Dirk 17.10)
  - feature: FHT low temperatur warning and offset (Dirk 17.10)
  - change:  change FHT state into warnings (Dirk 17.10)
         NOTE: you'll get an undefined type state &
         undefined type unknown_85 after upgrade.
  - feature: Softwarebuffer code simplified (Rudi 22.11)
  - bugfix:  bug #12327 doppeltes my
  - bugfix:  set STATE from trigger
  - bugfix:  readings state vs STATE problem (xmllist/trigger)
  - change:  SUNRISE doc changed (99_SUNRISE.pm -> 99_SUNRISE_EL.pm)
  - feature: support for the M232 ELV device (Boris, 25.11)
  - feature: alternativ Quad-based numbers for the FS20 (Matthias, 24.11)
  - feature: dummy type added (contrib/99_dummy.pm)

- 2007-08-05 (4.1)
  - doc:     linux.html (private udev-rules, not 50-..., ATTRS)
  - bugfix:  setting devices with "-" in their name did not work
  - doc:     fhem.pl and commandref.html (notifyon -> notify, correction
             of examples)
  - feature: modify command added
  - feature: The "-" in the name is not allowed any more
  - bugfix:  disabled notify causes "uninitialized value" (STefan, 1.5)
  - bugfix:  deleted FS20 items are still logging (zombie) (Gerhard, 16.5)
  - bugfix:  added FS20S8, removed stty_parmrk (Martin, 24.5)
  - feature: added archivedir/archivecmd to the FileLog
  - feature: added EM1010PC/EM1000WZ/EM1000EM support
  - bugfix:  undefined messages for unknown HMS devs (Peter, 8.6)
  - bugfix:  em1010 and %oldvalue bugs (Peter, 9.6)
  - bugfix:  SCIVT solar controller (peterp, 1.7)
  - bugfix:  WS300 loglevel change (from 2 to 5 or device specific loglevel)
  - feature: First steps for a Fritz!Box port. See the fritzbox.html

- 2007-04-14 (4.0)
  - bugfix:  deny at +{3}... (only +*{3} allowed), reported by Bernd, 25.01
  - bugfix:  allow numbers greater then 9 in at +{<number>}
  - feature: new 50_WS300.pm from Martin (bugfix + rain statistics, 26.01)
  - feature: renamed fhz1000 to fhem
  - feature: added HISTORY and README.DEV
  - doc:     Added description of attribute "model".
  - bugfix:  delete the pidfile when terminating. (reported by Martin and Peter)
  - feature: attribute showtime in web-pgm2 (show time instead of state)
  - feature: defattr (default attribute for following defines)
  - feature: added em1010.pl to the contrib directory
  - doc:     added linux.html (multiple devices, udev-links)
  - REORGANIZATION:
    - at/notify "renamed" to "define <name> at/notify"
    - logfile/modpath/pidfile/port/verbose "renamed" to "attr global xxx"
    - savefile renamed to "attr global statefile"
    - save command added, it writes the configfile and the statefile
    - delattr added
    - list/xmllist format changed
    - disable attribute for at/notify/filelog
    See HISTORY for details and reasoning
  - added rename command
  - webpgm2 adapted to the new syntax, added device specific attribute
    and "set" support, gnuplot files are configurable, links to the
    documentation added.
  - bugfix: more thorough serial line initialization

- 2007-01-25 (3.3)
  - bugfix:  50_WS300.pm fix from Martin
  - bugfix:  pidfile does not work as expected (reported by Martin)
  - bugfix:  %U in the log-filename is wrong (bugreport by Juergen)
  - feature: %V added to the log-filename
  - feature: KS300 wind calibration possibility added
  - feature: (software) filtering repeater messages (suggested by Martin)
  - feature: the "client" fhz1000.pl can address another host
  - bugfix:  empty FHT battery is not reported (by Holger)
  - feature: new FHT codes, e.g. month/day/hour/minute setting (by Holger)

- 2007-01-14 (3.2)
  - bugfix:  example $state changed to $value (remco)
  - bugfix:  sun*_rel does not work correctly with offset (Sebastian)
  - feature: new HMS100TF codes (Sebastian)
  - feature: logging unknown HMS with both unique and class ID (Sebastian)
  - feature: WS300: "Wetter-Willi-Status", rain_raw/rain_cum added, historic
             data (changes by Martin & Markus)
  - bugfix:  broken rereadcfg / CommandChain after init
             (reported by Sebastian and Peter)
  - bugfix:  sunrise_coord returned "3", which is irritating

- 2007-01-08 (3.1)
  - bugfix:  delete checks the arg first "exactly", then as a regexp
  - bugfix:  sun*_rel does not work correctly with offset (Martin)
  - feature: FAQ entry on how to install the sunrise stuff.
  - feature: the inner core is modified to be able to handle
             more than one "IO" device, i.e multiple FHZ at the same time,
	     or FHZ + FS10 + WS300. Consequences:
    - "fhzdev <usbdevice>" replaced with "define <FHZNAME> FHZ <usbdevice>"
    - "sendraw <fn> <code>" replaced with "set <FHZNAME> raw <fn> <code>"
    - module function parameters changed (for module developers)
    - set FHZ activefor dev
    - select instead sleep after sending FHZ commands
    - the at timer is more exact (around 1msec instead of 1 sec)
    - ignoring FS20 device 0001/00/00
  - feature: contrib/serial.pm to debug serial devices.
  - feature: WS300 integrated: no external program needed (Martin)
  - feature: updated to pgm3-0.7.0, see the CHANGELOG at Martins site

- 2006-12-28 (3.0)
  - bugfix:  KS300: Make the temperature negative, not the humidity
  - bugfix:  generate correct xmllist even with fhzdev none (Martin, 12.12)
  - feature: one set command can handle multiple devices (range and enumeration)
  - feature: new FS20 command on-till
  - feature: perl: the current state is stored in the %value hash
  - feature: perl: sunset renamed to sunset_rel, sunset_abs added (for on-till)
  - feature: perl: isday function added
  - feature: follow-on-for-timer attribute added to set the state to off
  - bugfix:  the ws300pc negative-temp bugfix included (from Martin Klerx)
  - feature: version 0.6.2 of the webpgm3 included (from Martin Haas)

- 2006-11-27 (2.9a)
  - bugfix:  FileLog+Unknown device generates undefined messages
  - bugfix:  trigger with unknown device generates undefined messages

- 2006-11-19 (2.9)
  - bugfix:  fhz1000.pl dies at startup if the savefile does not exist
  - bugfix:  oldvalue hash is not initialized at startup (peter, Nov 09)
  - feature: Notify reorganization (requested by juergen and matthias) :
    - inform will be notified on both real events and set or trigger commands
    - filelogs will additionally be notified on set or trigger commands
    - the extra_notify flag is gone: it is default now, there is a
      do_not_notify flag for the opposite behaviour.
  - feature: at timespec as a function. Example: at +*{sunset()}
    commandref.html and examples revisited.
  - feature: 99_SUNRISE.pm added to use with the new at functionality
    (replaces the old 99_SUNSET.pm)
  - feature: webpgm2 "everything" room, at/notify section, arbitrary command
  - bugfix:  resetting the KS300
  - feature: updated ws300pc (from martin klerx, Nov 08)
  - bugfix:  parsing timed commands implemented => thermo-off,thermo-on and
             activate replaced with timed off-for-timer,on-for-timer and
	     on-old-for-timer (reported by martin klerx, Nov 08)
  - feature: pidfile (requested by peter, Nov 10)
  - bugfix:  function 81 is not allowed

- 2006-11-08 (2.8)
  - feature: store oldvalue for triggers. perl only. requested by peter.
  - feature: inform cmd. Patch by Martin. There are many Martins around here :-)
  - bugfix:  XML: fix & and < and co
  - bugfix:  Accept KS300 negative temperature values
  - change:  the FS20 msg "rain-msg" is called now "activate"
  - feature: start/stop rc script from Stefan (in the contrib directory)
  - feature: attribute extra_notify: setting the device will trigger a notify
  - feature: optional repeat count for the at command
  - feature: skip_next attribute for the at command
  - feature: WS300 support by Martin. Check the contrib/ws300 directory.
  - bugfix:  91_DbLog.pm: retry if the connection is broken by Peter
  - feature: Martin's pgm3-0.5.2 (see the CHANGELOG on his webpage)
  - feature: RRD logging example by Peter (in the contrib/rrd directory)

- 2006-10-03 (2.7)
  - bugfix:  Another try on the > 25.5 problem. (Peters suggestion)
  - feature: 99_ALARM.pm from Martin (in the contrib directory)
  - feature: HMS100TFK von Peter P.
  - feature: attribute loglevel
  - feature: attribute dummy
  - feature: attr command documented
  - feature: the current version (0.5a) of the pgm3 from Martin.

- 2006-09-13 (2.6a)
  - bugfix:  the FHT > 25.5 problem again. A never ending story.

- 2006-09-08 (2.6)
  - bugfix:  updated the examples (hint from Juergen)
  - bugfix:  leading and trailing whitespaces in commands are ignored now
  - feature: making life easier for perl oneliners: see commandref.html
             (motivated by STefans suggestions)
  - feature: include command and multiline commands in the configfiles (\)
  - bugfix:  web/pgm2 KS300 rain plot knows about the avg data
  - bugfix:  the FHT > 25.5 problem. Needs to be tested.
  - feature: log unknown devices (peters idea, see notifyon description)
  - feature: HMS wildcard device id for all HMS devices. See the define/HMS
             section in the commandref.html for details.
	     NOTE: the wildcard for RM100-2 changed from 1001 to 1003.
	     (peters idea)
  - feature: rolwzo_no_off.sh contrib file (for those who were already closed
             out by automatically closing rollades, by Martin)
  - feature: the current version (0.4.5) of the pgm3 from Martin.

- 2006-08-13 (2.5)
  Special thanks to STefan Mayer for a lot of suggestions and bug reports
  - If a command is enclosed in {}, then it will be evaluated as a perl
    expression, if it is enclosed in "" then it is a shell command, else it is
    a "normal" fhz1000 command.
    "at" and "notifyon" follow this convention too.
    Note: a shell command will always be issued in the background.
  - won't die anymore if the at spec contains an unknown command
  - rereadcfg added. Sending a HUP should work better now
  - escaping % and @ in the notify argument is now possible with %% or @@
  - new command trigger to test notify commands
  - where you could specify an fhz command, now you can specify a list of
    them, separated by ";". Escape is ;;
  - KS300 sometimes reports "negative" rain when it begins to rain.  Filter
    such values. israining is set when the raincounter changed or the ks300
    israining bit is set.
  - sleep command, with millisecond accuracy
  - HMS 100MG support by Peter Stark.
  - Making FHT and FS20 messages more uniform
  - contrib/fs20_holidays.sh by STefan Mayer
    (simulate presence while on holiday)
  - webfrontends/pgm4 by STefan Mayer: fs20.php
  - KS300 avg. monthly values fixed (hopefully)
  - deleted undocumented "exec" function (you can write it now as {...})

- 2006-07-23 (2.4)
  - contrib/four2hex (to convert between ELV and our codes) by Peter Stark
  - make dist added to set version (it won't work in a released version)
  - reload function to reload (private) perl modules
  - 20_FHT.pm fix: undef occures once without old data
  - "setstate comment" is replaced with the attr command (i.e. attribute).
    The corresponding xmllist COMMENT tag is replaced with the ATTR tag.
    Devices or logs can have attr definitions.
  - webfrontend/pgm2 (fhzweb.pl) updated to handle "room" attributes(showing
    only devices in this room).
  - version 0.4.2 of webfrontend/pgm3 integrated.
  - contrib/ks300avg.pl to compute daily and monthly avarage values.
  - the 40_KS300.pm module is computing daily and monthly avarages for the
    temp/hum and wind values and sum of the rain. The cum_day and cum_month
    state variables are used as helper values.  To log the avarage use the
    .*avg.* regexp. The regexp for the intraday log will trigger it also.
  - Added the contrib file garden.pl as a more complex example: garden
    irrigation. The program computes the time for irrigation from the avarage
    temperature reported by the ks300-2.
  - Enable uppercase hex codes (Bug reported by STefan Mayer)
  - Renamed the unknown_XX FHT80b codes to code_XXXXXX, this will produce
    "Undefined type" messages when reading the old save file
  - RM100-2 added (thanks for the codes from andikt).

- 2006-6-22 (2.3)
  - CRC checking (i.e. ignoring messages with bad CRC, message on verbose 4)
  - contrib/checkmesg.pl added to check message consistency (debugging)
  - FHT: unknown_aa, unknown_ba codes added. What they are for?
  - Empty modpath / no modpath error messages added (some user think modpath is
    superfluous)
  - Unparsed messages (verbose 5) now printed as hex
  - Try to reattach to the usb device if it disappears: no need to
    restart the server if the device is pulled out from the USB socket and
    plugged in again (old versions go into a busy loop here).
  - Supressing the seldom (ca 1 out of 700) short KS300 messages.
    (not sure how to interpret them)
  - Added KS300 "israining" status flag. Note: this not always triggers when it
    is raining, but there seems to be a correlation. To be evaluated in more
    detail.
  - notifyon can now execute "private" perl code as well (updated
    commandref.html, added the file example/99_PRIV.pm)
  - another "perl code" example is logging the data into the database
    (with DBI), see the file contrib/91_DbLog.pm. Tested with an Oracle DB.
  - logs added to the xmllist
  - FHT80b: Fix measured-temp over 25.5 (handling the tempadd messages better)

- 2006-05-20 (2.2)
  - FHZ1300 support verified (+ doc changes)
  - KS300 support added (with Temperature, Humidity, Wind speed, Rain).
    Not verified/undecoded: subzero temp, weak battery, Is-raining flag,
    wind speed > 100km/h
  - webpgm2 log fix for "offed" FHT devices (with no actuator data)
  - webpgm3 upgrade (by Martin Haas, see webpgm/pgm3/docs/CHANGES for details)
  - HMS logging/state format changed to make it similar to KS300
  - added HMS100WD (thanks to Sascha Pollok)
  - ntfy/logging changed to be able to notify for multiple attributes
    arriving in one message
  - central FHTcode settable (see commandref.html)
  - optionally listen for non-local requests (port <num> global)
  - unknown logging
  - FAQ

- 2006-04-15 (2.1)
  - webfrontend/pgm2 changes:
    - make it work on Asus dsl-routers (no "use warnings")
    - css/readonly configurable
    - Formatting for HMS data
  - comments can be added to each device (setstate <dev> comment:xxx)
  - testbed to dry-test functionality (test directory)
  - added an empty hull for the KS300 weather module
  - added undocumented "exec" function to call arbitrary program parts
    for debugging. Example: exec FhzDecode("81xx04xx0101a0011234030011");
  - webfrontend/pgm3, contributed by Martin Haas
  - fixed pgm1: changing values should work now

- 2006-04-02 (2.0)
  - XmlList and webfrontend/pgm1 programs from Raoul Matthiessen
  - list tries to display the state and not the last command
  - Both log facilities (FileLog and Log) take wildcards
    (week, year, month, etc) to make logfile rotating easier
  - webfrontend/pgm2

- 2006-02-12 (1.9b)
  - Bugfix: Fixing the same bug again (thanks to Martin)

- 2006-02-12 (1.9a)
  - Bugfix: wrong rights for HMS and wrong place for readonly
    (thanks to Juergen)

- 2006-02-10 (1.9)
  (aka as the Juergen release)
  - The FHZ1300 is reported to work
  - Bugfix: spaces before comment in the config file should be ignored
  - added FS20STR codes to 10_FS20.pm
  - names restricted to A-Za-z0-9.:- (especially _ is not allowed)
  - delete calles now an UndefFn in the module
  - implementation of FS20 function group/local master/global master
  - the list command tells you the definition of the device too

- 2006-01-05 (1.8)
  - Bugfix: detailed FS20 status was not set from external event
  - Bugfix: setstate for FS20 returned the last state set
  - Bugfix: undefined FS20 devices (can) crash the server
  - HMS module added by Martin Mueller
    (currently supporting the HMS100T & HMS100TF)
  - Log modules added, the first one being a simple FileLog
    (inspired by Martin Mueller)
  - A little  gnuplot script to display temperature and actuator changes

- 2006-01-04 (1.7)
  - the at command can be used to execute something repeatedly with *
  - ntfy can filter on device or on device+event with a regexp
  - checking the delete and notify regexps if they make sense
  - the FHT init string is now a set command (refreshvalues)
  - shutdown saves the detailed device information too

- 2006-01-03 (1.6)
  - signal handling (to save the state on shutdown)
  - module FHZ addded (for the FHZ1000PC device itself)
  - added the get function (to make the initialization prettier)
  - the module ST was renamed to FS20
  - FS20 timer commands added
  - modules command removed (we are loading everything from the modpath
    directory)
  - FHT80b module added (yes, it is already useful, you can set
    and view a lot of values)
  - documentation adapted
  - Added a TODO file

- 2005-12-26 (1.5)
  - "modularized" in preparation for the FHT80B -> each device has a type
  - added relative "at" commands (with +HH:MM:SS)
  - multiple commands on one line separated with ;
  - sleeping 0.22 seconds after an ST command
  - some commands/syntax changed:
    - switch => set
    - device => fhzdevice
    - define <name> ... => define <name> <type> ...
  - the state of the devices and the at commands are saved
  - at start always sending a "set 0001 00 01" to enable the FHZ receiever.
    This is a workaround.
  - doc rewrite, examples directory

- 2005-11-10 (1.4)
  - Reformatting the package and the documentation
  - New links

- 2005-10-27 (1.3)
  - Bugfix: multiple at commands at the same time.