From c1ae6b8218306c04cf2baa622a4d774a22587d5b Mon Sep 17 00:00:00 2001 From: direct Date: Tue, 23 Mar 2021 14:49:40 +1000 Subject: [PATCH] =?utf8?q?=D0=A3=D0=BB=D1=83=D1=87=D1=88=D0=B5=D0=BD=D0=BE?= =?utf8?q?=20=D1=87=D1=82=D0=B5=D0=BD=D0=B8=D0=B5=20=D1=81=20=D0=B4=D0=B0?= =?utf8?q?=D1=82=D1=87=D0=B8=D0=BA=D0=BE=D0=B2=20=D1=82=D0=B5=D0=BC=D0=BF?= =?utf8?q?=D0=B5=D1=80=D0=B0=D1=82=D1=83=D1=80=D1=8B,=20=D1=83=D1=87=D0=B8?= =?utf8?q?=D1=82=D1=8B=D0=B2=D0=B0=D0=B5=D1=82=D1=81=D1=8F=20=D0=BA=D0=BE?= =?utf8?q?=D0=BD=D1=82=D1=80=D0=BE=D0=BB=D1=8C=D0=BD=D0=B0=D1=8F=20=D1=81?= =?utf8?q?=D1=83=D0=BC=D0=BC=D0=B0,=20=D0=B4=D0=B5=D0=BB=D0=B0=D0=B5=D1=82?= =?utf8?q?=D1=81=D1=8F=203=20=D0=BF=D0=BE=D0=BF=D1=8B=D1=82=D0=BA=D0=B8=20?= =?utf8?q?=D0=B2=20=D1=81=D0=BB=D1=83=D1=87=D0=B0=D0=B5=20=D0=BD=D0=B5?= =?utf8?q?=D1=83=D0=B4=D0=B0=D1=87=D0=B8.?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- sens/sens.php | 36 ++++++++++++++++++++++++++++++------ 1 file changed, 30 insertions(+), 6 deletions(-) diff --git a/sens/sens.php b/sens/sens.php index cbd005e..384dac0 100644 --- a/sens/sens.php +++ b/sens/sens.php @@ -33,12 +33,33 @@ class temp_reader extends Children protected function readTempData($device) { - $value = @file_get_contents('/sys/bus/w1/devices/'.$device.'/temperature'); - if ($value === FALSE) + for ($try = 0; $try <3; $try++) { - return FALSE; + $value = @file_get_contents('/sys/bus/w1/devices/'.$device.'/w1_slave'); + if ($value === FALSE) + { + continue; + } + $C = preg_match('/.*crc=..\s(.*)\n.*t=(.*)\n/m', $value, $match); + if ($C == 0) + { + continue; + } + if ($match[1] != 'YES') + { + continue; + } + $result = $match[2]; + break; + } + if (isset($result)) + { + return $result; + } + else + { + return false; } - return $value; } protected function ChildBody($data) @@ -51,8 +72,11 @@ class temp_reader extends Children foreach ($DEVS as $DEV) { - $DATA[$DEV] = $this->readTempData($DEV); - + $RDATA = $this->readTempData($DEV); + if ($RDATA !== false) + { + $DATA[$DEV] = $this->readTempData($DEV); + } } $SR = $this->SendEvent('data', $DATA); sleep(30); -- 2.39.5