ZitatDas Gerät ist momentan aktiv.
Erstmalig mit der FRITZ!Box verbunden als fhempi-3
} elsif ($st eq "tempHumiSensor.02") {
# Temperatur and Humidity Sensor(EEP A5-04-02)
# [Eltako FAFT60, FIFT63AP]
# $db[3] is the voltage where 0x59 = 2.5V ... 0x9B = 4V, only at Eltako
# $db[2] is the humidity where 0x00 = 0%rH ... 0xFA = 100%rH
# $db[1] is the temperature where 0x00 = -20°C ... 0xFA = +60°C
my $humi = sprintf "%d", $db[2] / 2.5;
my $temp = sprintf "%0.1f", -20 + $db[1] * 80 / 250;
my $battery = "unknown";
if ($manufID eq "00D" && $db[3] > 0) {
# Eltako sensor
my $voltage = sprintf "%0.1f", $db[3] * 6.58 / 255;
my $energyStorage = "unknown";
if ($db[3] <= 0x58) {
$energyStorage = "empty";
$battery = "low";
}
elsif ($db[3] <= 0xDC) {
$energyStorage = "charged";
$battery = "ok";
}
else {
$energyStorage = "full";
$battery = "ok";
}
if (!exists($hash->{helper}{battery}) || $hash->{helper}{battery} ne $battery) {
push @event, "3:battery:$battery";
$hash->{helper}{battery} = $battery;
}
push @event, "3:energyStorage:$energyStorage";
push @event, "3:voltage:$voltage";
}
push @event, "3:state:T: $temp H: $humi B: $battery";
push @event, "3:humidity:$humi";
push @event, "3:temperature:$temp";
EnOcean_ReadingsDelete($hash, 'alarm', 'reset', 1);
if (AttrVal($name, "signOfLife", 'off') eq 'on') {
RemoveInternalTimer($hash->{helper}{timer}{alarm}) if (exists $hash->{helper}{timer}{alarm});
@{$hash->{helper}{timer}{alarm}} = ($hash, 'alarm', 'dead_sensor', 1, 5, AttrVal($name, "signOfLifeInterval", 3300), 0);
InternalTimer(gettimeofday() + $hash->{helper}{timer}{alarm}[5], 'EnOcean_ctrlAlarmEvent', $hash->{helper}{timer}{alarm}, 0);
}
Einfachattr <device> signOfLife on
einschalten und des wird ein Alarm gesetzt, wenn der Aktor nicht mehr sendet. Optionen dazu findet man in der commandref.V 4.2.4-dev260212 SIGNALduinoAdv Pico cc1101 (R: B0*) - compiled at Feb 12 2026 13:07:33
V 4.2.4-dev260212 SIGNALduinoAdv PicoLAN cc1101 (R: B0*) - compiled at Feb 12 2026 13:40:090 UNKNOWN_RESET
1 PWRON_RESET
2 RUN_PIN_RESET
3 SOFT_RESET
4 WDT_RESET
5 DEBUG_RESET
6 GLITCH_RESET
7 BROWNOUT_RESET/opt/fhem/contrib/commandref_join.pl in die eigene aufnehmen.
.