Hubitat with Homemade Temperature, Humidity, Pressure and Light sensor

@JohnRob, thanks for your feedback and support on this project.

Since the latest 2 iterations of the module that I made have access to one digital input and output. It also support one analog input.

They are exposed as Binary Input/Output and Analog Cluster in zigbee world. This is what the Dth will be talking through to get access to the pins. I can give you more detail on this if needed.

If you need 2 digital pin, I suppose the analog input can be interpreted as digital level.

Thanks
Iman

Thank you,

That sounds good, but before I go too far I must verify I can access the signals I need to monitor.
BR
John

Let me know when you are ready. In the meantime, if you can share what sort of sensor would you be interested on connecting, I may be able to double check whether the idea should work.

Thanks
Iman

Thank you,

The long story is I have an LG washer and dryer. Both are nearly 10 years old. As an option I purchased a Remote monitor. It would sit on a table upstairs and report the remaining washer and dryer times. Really helpful :slight_smile:
I've gone through one set already and the 2nd one failed 3 weeks ago. They communicate through a power line modem (similar to X-10).

My plan is to cannibalize the PLModems on the appliances and tap into the data lines. My goal would be to simply know if they are running or not. I do not plan on spending the time to decode the data. Then using an opto-isolator and likely a filter I would pass that signal to your digital or analog inputs. Really very simple. I just have to pull one of the modems apart and look at the signals with a scope.

BR
John

Washer and Dryer monitoring seems to be popular thing to monitor.

A while back, I have play around CT sensor. It is a current transformer sensor. It is much less intrusive than tapping the appliance circuity. The basic idea is here.

I do not apply it to measure the energy consumption. I use the sine wave output and look at it to determine a Legacy appliance consuming electricity or not hence, whether it is on or off. I play around using hacked audio detector sensor to get a digital signal. I also tried the circuit on the link and connect them to analog input. I write a simple DTH which monitor voltage changes. Here is a demo.

Further tuning to make it more reliable can be done. The above is just a proof of concept. I suppose we can design much better electronic if enough people want it.

This should be able to monitor your washer and dryer. vibration sensor could work if you can get proper tune of the sensitivity.

1 Like

Hi Iman,

Thanks for the suggestion. However these appliances have an external PLC Modem plugged into the rear of the appliance.
I took one apart and I can see the V+(red) data(yellow) and gnd(black). I simply have to pull some of the guts out to make room for a FET and opto isolator then I should be good to go.

But first I do need to look at the signals and verify the are usable. I do have the wiring diagram / schematic from the service manual.

John

DSC07387 !

Hi Everyone,

I have been meaning to recap what we have done with the module/sensor project in 2018. I want to thanks to community members here with your feedback and donation.

Here is a picture how the project evolved.

  1. This is the first module that I shared with the community. It is just a simple Zigbee Repeater.
  2. In the second iteration, the module gains Temperature, Humidity, Pressure and Light sensor.
  3. The next improvement, the module allow user to add additional sensor or component through exposed Digital Input/Output pin and Analog Input.
  4. In latest iteration, as we are closing out the year 2018, the module add battery backup

Through out these iterations, I try to focus on adding feature to improve our experience with our Smart Home. In summary, here are highlights of what we have so far.

  • A Zigbee 3.0 repeaters(routers) compatible with Major Zigbee devices in the market. (work nicely with Xiaomi devices).
  • An Environmental Sensor for your room with reliable and prompt reporting sensor reading.
  • Expand-able module with additional sensor for DIY-er.
  • Battery backed up module that combine the best of both world of battery operated sensor and dc powered sensor.

Moving forward, I want to share what I think a good investment for the project. I would like to optimize the parts and board design. In turn, I would like to make more consistent build across modules. I also would like to see whether we can scale the build to higher quantity.

Again, I want to thanks everyone for the feedback. For those who take risk on this project and donate, I really appreciate it. My goal is to build a working module on every steps for all of us.

Thanks
Iman

7 Likes

Just want to update everyone that I do not have the small module to share anymore. I still have six of the bigger (with 18650 battery case) module left.

1 Like

@iharyadi Your routers are working quite well.

For those out there considering to buy some of these. I just migrated from ST to hubitat. In the process I setup two of Iman's routers along with 3 Ikea outlets. I got the 5 "routers" in place before I started to pair all of my 30 Xiaomi sensors.

I have been running solid since Saturday and I finally had a chance to setup my xbee to scan the mesh. As it turns out, one of Iman's routers has 19 Xiaomi's, the other has 7.

As for the Ikea outlets. Outlet A, has 2 Xiaomis, Outlet B has 0, Outlet C has 0.

The remaining Xiaomi sensors paired to the hub directly.

The Ikea outlets are evenly distributed through my two story. One of Iman's is up in a far corner of my 2nd story, the other is in the opposite corner in my garage. So if anything the Ikea outlets should have had a better chance of picking up children.

Considering Iman's new routers can have a battery, I would say your MUCH better off purchasing them over the Ikea outlets. Unless you truely plan to control something with the Ikea Outlet.

2 Likes

@brianspranger, thanks for the feedback. I am happy that the module work well for you.

@iharyadi I'm interested in the latest. PM the info thanks.

Playing round if I can easily hook something up to use the module detecting a power loss like here.

@SmartHomePrimer, I had a chance to get the AD8495 recently. It is quite good an interface board for a temperature probe.

5 Likes

That’s cool. Nice demo!
I forgot to follow-up on this. My girls bought me this cool gadget for Christmas. It’s an incredibly well engineered device. Measuring internal temperature of the meat and External temp of a the BBQ or oven. Bluetooth connection and charging via a battery in the holder when you clip the thermometer back into it.

Great app, Just tell it what kind and cut of meat you’re cooking and it calculates the rest, then notifies you when it’s done. You can check time to finished and temps from the app or via their cloud connection you can just ask Alexa. The cloud connection also allows you to connect a spare phone or tablet to the thermometer, and then login with a second phone or tablet to monitor or receive notifications anywhere you have internet access.

It looks like really nice BBQ probe. Perhaps, I would get one next Christmas.

1 Like

Why wait? Start hinting for your birthday!

Birthday would work too.:pray::pray::pray:

@iharyadi received my sensors yesterday, thanks for the fast shipping!

Unfortunately I'm struggling a little:-)

I loaded the device handler from hubitat/Environment SensorEx at master · iharyadi/hubitat · GitHub

I've only tried one so far and it seems to have paired OK, but doesn't seem to do much after that!

How often should it transmit? The blue LED is permanently on, is that right?

After the initial pairing activity in the ZigBee logs I don't see anything else from the device. Hitting Refresh or Configure doesn't do anything.

If I put HE back into Discovery mode I see a single packet from the device:

profileId:0x0, clusterId:0x13, sourceEndpoint:0, destinationEndpoint:0 , groupId:0, lastHopLqi:254, lastHopRssi:-81

and then nothing at all.

If I put HE into Discovery mode again and hold the button in on the device for 3 or 4 seconds then it seems to transmit a bunch of stuff again but only while the Discovery window is open (it seems to loop). If I close the Discovery it goes quiet again.

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:19:15.067 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 2B26080B050C0401210400, dni: 2B26, endpoint: 08, cluster: 0B05, size: 0C, attrId: 0104, encoding: 21, value: 0004

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:19:13.078 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 2B26080B050C0000210000, dni: 2B26, endpoint: 08, cluster: 0B05, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:19:11.058 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 2B26080B050C2001290200, dni: 2B26, endpoint: 08, cluster: 0B05, size: 0C, attrId: 0120, encoding: 29, value: 0002

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:19:09.058 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 2B26080B050C1F01290000, dni: 2B26, endpoint: 08, cluster: 0B05, size: 0C, attrId: 011F, encoding: 29, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:19:07.044 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 2B260804000C0000210000, dni: 2B26, endpoint: 08, cluster: 0400, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:19:05.052 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 2B260804030C0000210000, dni: 2B26, endpoint: 08, cluster: 0403, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:19:03.040 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 2B260804050C0000210000, dni: 2B26, endpoint: 08, cluster: 0405, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:19:01.060 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 2B260804020C0000290000, dni: 2B26, endpoint: 08, cluster: 0402, size: 0C, attrId: 0000, encoding: 29, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:59.348 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0001 08 01 0040 00 2B26 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:59.347 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0001 08 01 0040 00 2B26 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:55.137 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0400 08 01 0040 00 2B26 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:55.136 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0400 08 01 0040 00 2B26 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:51.126 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0403 08 01 0040 00 2B26 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:51.125 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0403 08 01 0040 00 2B26 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:40.911 [info](http://IPADDRESS/device/edit/140)Refresh

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:40.899 [info](http://IPADDRESS/device/edit/140)Configuring Reporting and Bindings.

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:28.657 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: FBE2080B050C2001290200, dni: FBE2, endpoint: 08, cluster: 0B05, size: 0C, attrId: 0120, encoding: 29, value: 0002

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:26.646 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: FBE2080B050C1F01290000, dni: FBE2, endpoint: 08, cluster: 0B05, size: 0C, attrId: 011F, encoding: 29, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:24.644 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: FBE20804000C0000210000, dni: FBE2, endpoint: 08, cluster: 0400, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:22.640 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: FBE20804030C0000210000, dni: FBE2, endpoint: 08, cluster: 0403, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:20.638 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: FBE20804050C0000210000, dni: FBE2, endpoint: 08, cluster: 0405, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:18.665 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: FBE20804020C0000290000, dni: FBE2, endpoint: 08, cluster: 0402, size: 0C, attrId: 0000, encoding: 29, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:16.755 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0001 08 01 0040 00 FBE2 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:16.754 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0001 08 01 0040 00 FBE2 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:12.732 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0400 08 01 0040 00 FBE2 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:12.729 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0400 08 01 0040 00 FBE2 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:08.851 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0403 08 01 0040 00 FBE2 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:08.850 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0403 08 01 0040 00 FBE2 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:04.746 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0405 08 01 0040 00 FBE2 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:04.742 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0405 08 01 0040 00 FBE2 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:00.880 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0402 08 01 0040 00 FBE2 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:18:00.878 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0402 08 01 0040 00 FBE2 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:58.521 [info](http://IPADDRESS/device/edit/140)Refresh

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:58.509 [info](http://IPADDRESS/device/edit/140)Configuring Reporting and Bindings.

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:46.884 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE8080B050C1501210200, dni: 1DE8, endpoint: 08, cluster: 0B05, size: 0C, attrId: 0115, encoding: 21, value: 0002

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:44.863 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE8080B050A1D0128D1, dni: 1DE8, endpoint: 08, cluster: 0B05, size: 0A, attrId: 011D, encoding: 28, value: D1

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:42.871 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE8080B050C0501210A00, dni: 1DE8, endpoint: 08, cluster: 0B05, size: 0C, attrId: 0105, encoding: 21, value: 000A

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:40.856 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE8080B050C0401210A00, dni: 1DE8, endpoint: 08, cluster: 0B05, size: 0C, attrId: 0104, encoding: 21, value: 000A

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:38.862 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE8080B050C0000210000, dni: 1DE8, endpoint: 08, cluster: 0B05, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:36.852 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE8080B050C2001290200, dni: 1DE8, endpoint: 08, cluster: 0B05, size: 0C, attrId: 0120, encoding: 29, value: 0002

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:34.847 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE8080B050C1F01290000, dni: 1DE8, endpoint: 08, cluster: 0B05, size: 0C, attrId: 011F, encoding: 29, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:32.861 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE80804000C0000210000, dni: 1DE8, endpoint: 08, cluster: 0400, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:30.848 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE80804030C0000210000, dni: 1DE8, endpoint: 08, cluster: 0403, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:28.844 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE80804050C0000210000, dni: 1DE8, endpoint: 08, cluster: 0405, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:26.841 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 1DE80804020C0000290000, dni: 1DE8, endpoint: 08, cluster: 0402, size: 0C, attrId: 0000, encoding: 29, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:25.109 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0001 08 01 0040 00 1DE8 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:25.108 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0001 08 01 0040 00 1DE8 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:21.386 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0400 08 01 0040 00 1DE8 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:21.384 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0400 08 01 0040 00 1DE8 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:06.738 [info](http://IPADDRESS/device/edit/140)Refresh

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:17:06.731 [info](http://IPADDRESS/device/edit/140)Configuring Reporting and Bindings.

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:54.341 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 93410804030C0000210000, dni: 9341, endpoint: 08, cluster: 0403, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:52.418 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 93410804050C0000210000, dni: 9341, endpoint: 08, cluster: 0405, size: 0C, attrId: 0000, encoding: 21, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:50.377 [info](http://IPADDRESS/device/edit/140)description is read attr - raw: 93410804020C0000290000, dni: 9341, endpoint: 08, cluster: 0402, size: 0C, attrId: 0000, encoding: 29, value: 0000

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:48.520 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0001 08 01 0040 00 9341 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:48.516 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0001 08 01 0040 00 9341 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:44.521 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0400 08 01 0040 00 9341 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:44.518 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0400 08 01 0040 00 9341 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:40.732 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0403 08 01 0040 00 9341 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:40.729 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0403 08 01 0040 00 9341 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:36.511 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0405 08 01 0040 00 9341 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:36.508 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0405 08 01 0040 00 9341 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:32.433 [info](http://IPADDRESS/device/edit/140)DID NOT PARSE MESSAGE : catchall: 0104 0402 08 01 0040 00 9341 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:32.430 [info](http://IPADDRESS/device/edit/140)description is catchall: 0104 0402 08 01 0040 00 9341 00 00 0000 07 01 00

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:30.224 [info](http://IPADDRESS/device/edit/140)Refresh

[dev:140](http://IPADDRESS/logs#dev140)2019-01-22 10:16:30.217 [info](http://IPADDRESS/device/edit/140)Configuring Reporting and Bindings.

Any thoughts?

It should transmit data quite often. You should have something within a couple minutes.

Based on your images, it seems that it struggles to get data. There should be a lot more attributes than that.

The second thing is the humidity value and temperature and illumination is approximately 0. Something is wrong there.

This is like all the sensor is dead. It is strange since I test individually each sensor before I ship out.

You can try to remove the sensor and try to start again. To set the sensor to factory reset. Unplug the sensor from power and battery. Press the button on the back. Plugs the sensor to power while pressing on the button. Keep pressing for 4 seconds and release.

I typically like to recommend to pair as close as possible to the hub initially. You can move the sensor afterward.

Do you have other zigbee device?

The looping is a concern.

I have not seen something like this on my end. It is like it loop in the configuration mode. The hub is calling configure multiple times. This happen if it is like the sensor never pair at all. The hub think that there is a new sensor joining but in fact it is already join.

Hmm this is strange.