diff --git a/fhem/CHANGED b/fhem/CHANGED
index 7626b026d..dddbc623e 100644
--- a/fhem/CHANGED
+++ b/fhem/CHANGED
@@ -568,4 +568,5 @@
   - 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)
diff --git a/fhem/FHEM/11_FHT.pm b/fhem/FHEM/11_FHT.pm
index afe678e50..1183110f8 100755
--- a/fhem/FHEM/11_FHT.pm
+++ b/fhem/FHEM/11_FHT.pm
@@ -84,15 +84,19 @@ my %codes = (
 my %cantset = (
   "ack"           => 1,
   "ack2"          => 1,
+  "battery"       => 1,
   "can-xmit"      => 1,
   "can-rcv"       => 1,
   "start-xmit"    => 1,
   "end-xmit"      => 1,
 
+  "lowtemp"       => 1,
   "measured-temp" => 1,
   "measured-high" => 1,
   "measured-low"  => 1,
   "warnings"      => 1,
+  "window"        => 1,
+  "windowsensor"  => 1,
 );
 
 
@@ -370,6 +374,25 @@ FHT_Parse($$)
 
   my $tn = TimeNow();
 
+  ###########################
+  # Set default values for battery, lowtemp, window and windowsensor warnings.
+  my $warnBattery = "ok";
+  my $warnTempLow = "ok";
+  my $warnWindowSensor = "ok";
+  my $warnWindow  = "closed";
+
+  $def->{READINGS}{'battery'}{TIME} = $tn;
+  $def->{READINGS}{'battery'}{VAL} = $warnBattery;
+
+  $def->{READINGS}{'lowtemp'}{TIME} = $tn;
+  $def->{READINGS}{'lowtemp'}{VAL} = $warnTempLow;
+
+  $def->{READINGS}{'window'}{TIME} = $tn;
+  $def->{READINGS}{'window'}{VAL} = $warnWindow;
+
+  $def->{READINGS}{'windowsensor'}{TIME} = $tn;
+  $def->{READINGS}{'windowsensor'}{VAL} = $warnWindowSensor;
+
   ###########################
   # Reformat the values so they are readable.
   # The first four are confirmation messages, so they must be converted to
@@ -430,10 +453,30 @@ FHT_Parse($$)
 
   } elsif($cmd eq "warnings") {
     my $nVal;
-    if($val & 1) {                          $nVal  = "Battery low"; }
-    if($val & 2) { $nVal .= "; " if($nVal); $nVal .= "Temperature too low"; }
-    if($val &32) { $nVal .= "; " if($nVal); $nVal .= "Window open"; }
-    if($val &16) { $nVal .= "; " if($nVal); $nVal .= "Fault on window sensor"; }
+    if($val & 1) {
+      $nVal  = "Battery low";
+      $warnBattery = "low";
+      $def->{READINGS}{'battery'}{TIME} = $tn;
+      $def->{READINGS}{'battery'}{VAL} = $warnBattery;
+    }
+    if($val & 2) {
+      $nVal .= "; " if($nVal); $nVal .= "Temperature too low";
+      $warnTempLow = "warn";
+      $def->{READINGS}{'lowtemp'}{TIME} = $tn;
+      $def->{READINGS}{'lowtemp'}{VAL} = $warnTempLow;
+      }
+    if($val &32) {
+      $nVal .= "; " if($nVal); $nVal .= "Window open";
+      $warnWindow = "open";
+      $def->{READINGS}{'window'}{TIME} = $tn;
+      $def->{READINGS}{'window'}{VAL} = $warnWindow;
+      }
+    if($val &16) {
+      $nVal .= "; " if($nVal); $nVal .= "Fault on window sensor";
+      $warnWindowSensor = "fault";
+      $def->{READINGS}{'windowsensor'}{TIME} = $tn;
+      $def->{READINGS}{'windowsensor'}{VAL} = $warnWindowSensor;
+    }
     $val = $nVal? $nVal : "none";
 
   }
@@ -449,6 +492,18 @@ FHT_Parse($$)
 
   Log 4, "FHT $name $cmd: $val";
 
+  if ($cmd eq "warnings") {
+    $def->{CHANGED}[1] = "battery: $warnBattery";
+    Log 4, "FHT $name battery: $warnBattery";
+    $def->{CHANGED}[2] = "lowtemp: $warnTempLow";
+    Log 4, "FHT $name lowtemp: $warnTempLow";
+    $def->{CHANGED}[3] = "window: $warnWindow";
+    Log 4, "FHT $name window: $warnWindow";
+    $def->{CHANGED}[4] = "windowsensor: $warnWindowSensor";
+    Log 4, "FHT $name windowsensor: $warnWindowSensor";
+  }
+
+
   ################################
   # Softbuffer: delete confirmed commands
   if($confirm) {
diff --git a/fhem/docs/commandref.html b/fhem/docs/commandref.html
index 08bbac54a..e79b5fa4c 100644
--- a/fhem/docs/commandref.html
+++ b/fhem/docs/commandref.html
@@ -1341,8 +1341,15 @@ A line ending with \ will be concatenated with the next one, so long lines
           <ul>
             <li>warnings can contain following strings:
                 none, Battery low,Temperature too low, Window open,
-                Fault on window sensor
-                </li>
+                Fault on window sensor.<br>
+                In addition, the current warnings are reported separately:
+                <ul>
+                   <li>battery: ok / low</li>
+                   <li>lowtemp: ok / low</li>
+                   <li>window: open / closed</li>
+                   <li>windowsensor: ok / fault</li>
+                </ul>
+            </li>
             <li>actuator (without a suffix) stands for all actuators.
             <li>actuator or actuator1..8 can take following values:
                 <ul>
@@ -1362,9 +1369,9 @@ A line ending with \ will be concatenated with the next one, so long lines
                   <li>pair<br>
                      The the FHT80b sent a "you-belong-to-me" to this actuator.
                 </ul>
-                Note:
           </ul>
-          <br>
+       </li>
+      <br>
 
       <li>The FHT is very economical (or lazy), it accepts one message from the
           FHZ1x00 every 115+x seconds, where x depends on the housecode. Don't