Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ClearGlass CGG1 flashed with ATC sensors recognition #1286

Closed
hallard opened this issue Oct 14, 2022 · 60 comments
Closed

ClearGlass CGG1 flashed with ATC sensors recognition #1286

hallard opened this issue Oct 14, 2022 · 60 comments

Comments

@hallard
Copy link
Contributor

hallard commented Oct 14, 2022

Since ATC device are working fine, just surprised that my ClearGlass CGG1 flashed wit ATC is not decoded (ATC are), may be it's just a matter of name?

Here what is received for information

{
"id":"58:2D:34:12:33:DC",
"mac_type":0,
"name":"CGG_1233DC",
"rssi":-64,
"servicedata":"582d341233dc00e03e4d0b4e0a",
"servicedatauuid":"0x181a"
}
@DigiH
Copy link
Collaborator

DigiH commented Oct 14, 2022

Hi @hallard,

thanks for poinying this out. The ClearGlass CGG1 flashed with ATC is aparently not being decoded with the sample you have provided above, even though we already account for two different firmware broadcasting versions for the CGG1.

As the data you provided is very different, both in servicedata length as well as the service uuid, we can create a third decoding option with your help.

Are you able to create your own OpenMQTTGateway builds in Platformio, so as to be able to try out some test decoder in the next days?

@hallard
Copy link
Contributor Author

hallard commented Oct 14, 2022

@DigiH

Thanks for your quick answer, sure I'm able to do that

Interesting, I switched frame format in TelinkMiFlasher from ATC441 to Mija MiHome frame is different but stil not decoded, strange

{
"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-49,
"servicedata":"5058480b5cdc3312342d580a10014d",
"servicedatauuid":"0xfe95"
}

{
"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-47,
"servicedata":"5058480b5ddc3312342d580d1004ed005b02",
"servicedatauuid":"0xfe95"
}

just curious Are PVVX frame supported?

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

Yes, there seem to be four different advertising formats for the ATC firmware, three applicable to the BLE Decoder library with OpenMQTTGateway as the fourth is encrypted.

To be honest, I'd have to look further into all the different formats, as the currently two supported formats are not specified ;) also not having a CGG1 myself I'll work together with a colleague to hopefully get all the different formats correctly decoded soon.

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

I can help on this (decoding stuff) if you point me out where I need to go, if you have a chance of creating skeleton empty code for these advertisement, I can fill them with decoded values with a PR
just synced my old fork of this repo

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

And here the 3 applicable as a reminder

# ATC441
charles@mini-m1:explorer$ mosquitto_sub -h 192.168.1.8 -t 'OMG/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/582D341233DC' 
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-55,"servicedata":"582d341233dc00e03e490b2c2e","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-61,"servicedata":"582d341233dc00e03e4b0b3c32","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-56,"servicedata":"582d341233dc00e03e4b0b3c35","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-64,"servicedata":"582d341233dc00e03e4b0b3c38","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-63,"servicedata":"582d341233dc00e13e4a0b353b","servicedatauuid":"0x181a"}

#MI
charles@mini-m1:explorermosquitto_sub -h 192.168.1.8 -t 'OMG/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/582D341233DC' 
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-49,"servicedata":"5058480b5cdc3312342d580a10014d","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-47,"servicedata":"5058480b5ddc3312342d580d1004ed005b02","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-44,"servicedata":"5058480b69dc3312342d580d1004ec005d02","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-44,"servicedata":"5058480b70dc3312342d580a100148","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-43,"servicedata":"5058480b77dc3312342d580d1004eb005e02","servicedatauuid":"0xfe95"}

# PVXX
charles@mini-m1:explorer$ mosquitto_sub -h 192.168.1.8 -t 'OMG/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/582D341233DC' 
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-45,"servicedata":"dc3312342d582f09aa173d0b4b7c05","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-47,"servicedata":"dc3312342d582909a1172a0b498305","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-50,"servicedata":"dc3312342d582809ac173c0b4b8605","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-45,"servicedata":"dc3312342d582909c017350b4a8c05","servicedatauuid":"0x181a"}

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

And these are the three formats from the pvvx firmware you linked to above.

Thanks, that will give us a good sample along with the format definitions on the pvvx page.

You can have a look at the current two decoder versions included so far at
https://github.com/theengs/decoder/blob/development/src/devices/CGG1_json.h

with a description of the decoder definitions at
https://decoder.theengs.io/participate/adding-decoders.html

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

OMG thought it was in raw C code, need to check theengs, looks very cool

Any on line decoder tester (I'm coming from LoRaWAN where lot of suppliers does this)

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

The BLE decoding has been moved from being directly in OMG in C to the Theengs Decoder library.

Bit of background reading on it at
https://1technophile.blogspot.com/2021/10/externalize-ble-devices-decoding-in.html

Any on line decoder tester

Not quite yet ;) but any changes to a fork of Decoder can easily be specified in the decoder library URL in platformio.ini for a quick test build.

I won't be able to look at this much further tonight as the bed is desperately calling me, but will have a closer look again tomorrow.

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

Thank you very much
Something not clear to me since ATC441 works fine for LYWSD03MMC_ATC devices that adverstise on UUID 0x181A.

So if in LYWSD03MMC_ATC we use uuid instead of servicedata, it should works ROOB for every ATC devices?

changing

 "condition":["servicedata", "index", 0, "a4c138"],

by

 "condition":["uuid", "index", 0, "181a"],

should to the trick correct (adding check on index)?

Yes same here 3AM time to go to bed, have a good night

@h2zero
Copy link
Collaborator

h2zero commented Oct 15, 2022

The uuid 181A is a Bluetooth standardized uuid for environmental sensing. The proposed change would detect any device that advertises this uuid as a LYWSD03MMC_ATC device, which will potentially be problematic. We might need a generic handler for this.

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

Agree, but since ATC decoding for LYWSD03MMC_ATC is the same than CGG1_ATC (and may be future) it should be no problem and by the way I think we don't have ultimate solution because today check is done based on 3 bytes of the mac address that would expose same issues than checking uuid.
May be we could combine both and also checking frame size would limit errors. No best idea for now may be tomorrow :-)

Anyway generic json for ATC with
uuid==181a And (servicedata==a4c138 Or servicedata==582d34)
json for PVX with
uuid==181a And (servicedata==38c1a4 Or servicedata==342d58)

should both do the trick until manufacturer change one of the first 3 bytes mac address :-)

@h2zero
Copy link
Collaborator

h2zero commented Oct 15, 2022

Yes, the additional check to differentiate would be necessary for this case, and we need to consider the options for it. I just wanted to point that out in case it was not known.

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

Take your breath, I'm on the PR :-)

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

Ok looks like succeded to PR and do my own build based on the PR of decoder, but looks like I never see anymore my CGG1 device I may have missed something, I copied ATC and PVXX from LYWSD03MMC_ATC and LYWSD03MMC_PVXX and changed MAC address to detect, but I may have missed something, I need to take a rest going to sleep.
If you had a chance to look at this PR if you see something wrong just in case

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

OMG you won't believe it, sensor was just freezed (too much association during test may be) it does works fine after removing replacing battery (BTW never saw a so stupid battery cover, headache each time)

charles@mini-m1:decoder$ mosquitto_sub -h 192.168.1.8 -t 'OMG/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/582D341233DC' 
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-49,"brand":"Qingping","model":"CGG1","model_id":"CGG1_ATC","tempc":26.3,"tempf":79.34,"hum":55,"batt":72,"volt":2.856}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-50,"brand":"Qingping","model":"CGG1","model_id":"CGG1_ATC","tempc":25.9,"tempf":78.62,"hum":54,"batt":73,"volt":2.858}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-57,"brand":"Qingping","model":"CGG1","model_id":"CGG1_ATC","tempc":25.5,"tempf":77.9,"hum":55,"batt":71,"volt":2.847}

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

Hi @hallard,

nicely done with adding the decoders! Just a few thoughts:
I think we should keep all the different format decoders in one decoder file for a clearer overview
As you stated, having the model conditions include part of your device's MAC address obviously was great for a test decoder. For a general decoder we'd need to adjust this to be compatible with everybody's CGG1.

The uuid 181A is a Bluetooth standardized uuid for environmental sensing. The proposed change would detect any device that advertises this uuid as a LYWSD03MMC_ATC device, which will potentially be problematic. We might need a generic handler for this.

With the CGG1 broadcasting its name and using the data length as well I think this can work nicely in the model condition.

With these thoughts I published the branch
https://github.com/DigiH/decoder/tree/CGG1

This also required to create a new test case possibility, which shows how important these test cases are for avoiding regressions and testing and clearing new decoders.

I've currently left out the voltage to be able to use the existing common properties, but this can easily be added once we decide this is the way forward.

Please have a look at it and run some real world tests with your CGG1 and the different formats. And there are five different formats now ;) so we probably need to talk through them to clarify each one.

decoder = https://github.com/DigiH/decoder#CGG1

Thanks

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

Hi @DigiH

I think we should keep all the different format decoders in one decoder file for a clearer overview

Yes that was my thought afterward, better like that. Sorry about my 1st time learning when coding onto new project.
By the way instead of naming _CGG1_json_v2 (it took me some time to understand why) why not using something more friendly such as _CGG1_json_atc441, easier to follow when there are more and more, just my 2 cents

This also required to create a new test case possibility, which shows how important these test cases are for avoiding regressions and testing and clearing new decoders.

I saw that with auto build error but too lazy to check where was the error, given the time of the night on my side.

I've currently left out the voltage to be able to use the existing common properties, but this can easily be added once we decide this is the way forward.

Oh yes, would love to see that one, in fact I better trust voltage than percent at least I see real values and depending on devices and battery type it can be a little bit different.

Please have a look at it and run some real world tests with your CGG1 and the different formats. And there are five different formats now ;) so we probably need to talk through them to clarify each one.

Sure, I will unbox my 2nd CGG1 and set it up to PVVX

Thank you for your help

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

Sorry about my 1st time learning when coding onto new project.

Absolutely no need to apologise, it's great when someone dives into it all anew!

By the way instead of naming _CGG1_json_v2 (it took me some time to understand why) why not using something more friendly such as _CGG1_json_atc441, easier to follow when there are more and more, just my 2 cents

That is also an option, and equally for the reported model_id naming. For the time being though, until we sort out the decoders and if we really need all of them the v1-5 makes it easier to talk about and look up for any changes.

Sure, I will unbox my 2nd CGG1 and set it up to PVVX

Great, thanks. If you could also do some testing with the stock firmware that the CGG1s came with, that would be good to verify the default firmware decoder.

Thanks

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

Great, thanks. If you could also do some testing with the stock firmware that the CGG1s came with, that would be good to verify the default firmware decoder.

Thanks for pointing that one out, I will start by this one doing nothing except unbox :-)

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

BTW, would it also be possible for you to install the esp32dev-ble-datatest environment/binary for this testing?

We included this to allow to still show all relevant data along with decoded messages.

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

BTW, would it also be possible for you to install the esp32dev-ble-datatest environment/binary for this testing?

Yeah was my idea to dive into that one to have more information to see

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

OMG Thought I got 2 I have 3, damned compulsive Ali buy

image

image

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

Ok just to let you know that with the PR you made, stock firmware is not decoded but ATC1441 and PVVX are fine

Stock FW

{
"id":"58:2D:34:12:33:F7",
"mac_type":0,
"name":"Qingping Temp & RH ",
"rssi":-41,
"servicedata":"3058480b01f73312342d58280100",
"servicedatauuid":"0xfe95"
}

ATC1441 (strange I see volt you already made some changes?) answer is yes just saw your commit

{
"id":"58:2D:34:12:33:DC",
"mac_type":0,
"name":"CGG_1233DC",
"rssi":-63,
"brand":"Cleargrass/Qingping",
"model":"Round TH v2",
"model_id":"CGG1_ATC1441",
"tempc":22.4,
"tempf":72.32,
"hum":63,
"batt":74,
"volt":2.872
}

PVVX

{
"id":"58:2D:34:12:33:F7",
"mac_type":0,
"name":"CGG_1233F7",
"rssi":-42,
"brand":"Cleargrass/Qingping",
"model":"Round TH v3",
"model_id":"CGG1_PVVX",
"tempc":24.48,
"tempf":76.064,
"hum":61.41,
"batt":100,
"volt":3.199
}

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

BTW more for @1technophile may be an option to prefix (before MAC) MQTT topic by model_id because on my side I got so much devices that's it's a total mess on MQTT Explorer

So something like that
OMG/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/582D341233F7

could becomes
OMG/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/CGG1_ATC1441/582D341233F7

But may be it already exists need to check

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

OMG Thought I got 2 I have 3, damned compulsive Ali buy

LOL, yeah, I know that as well, but keep trying to avoid it these days.

stock firmware is not decoded

"name":"Qingping Temp & RH ",

servicedata":"3058480b01f73312342d58280100",

I think we also will have to try and differentiate between the different hardware revisions of the CGG1, between 2020-2021 and 2022+ and their stock firmware, which doesn't make things easier. But correct, so far we do not have any decoder for an 28 long servicedata as described here. Do you know from when this version is? From the Bluetooth 5.0 in the picture I would assume it's one of the newer models. I think this might fall under the v5 decoder, which would need reworking, but I was never sure for exactly which model/firmware it was applicable.

ATC1441 (strange I see volt you already made some changes?) answer is yes just saw your commit

Yes, and the v2 and v3 model_id renaming as well I did before dinner here :)

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

BTW, which firmware did you have installed/refer to with the

#MI
charles@mini-m1:explorermosquitto_sub -h 192.168.1.8 -t 'OMG/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/582D341233DC'
{"id":"58:2D:34:12:33:DC","mac_type":0…

above? As this should also already be implemented as v3.

@1technophile
Copy link
Owner

Hello @hallard

Yeah, with random beacons plus changing mac addresses, I understand your point.
Note that you can already white list your mac address or ask the gateway to publish recognized beacons only (=detected by the decoder)
https://docs.openmqttgateway.com/use/ble.html#setting-if-the-gateway-publishes-all-the-ble-devices-scanned-or-only-the-detected-sensors

@1technophile
Copy link
Owner

@hallard your puck.js could be interesting to integrate

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

your puck.js could be interesting to integrate

For sure but depends on FW on it I know there are classic iBeacon or Edison version what do you need from me to test them?

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

your puck.js could be interesting to integrate

For sure but depends on FW on it I know there are classic iBeacon or Edison version what do you need from me to test them?

Guys, let's stick with the multiple CGG1 versions for now ;) Enough time to get into different firmware versions of the puck.js after that LOL

@hallard
Copy link
Contributor Author

hallard commented Oct 15, 2022

Oh my bad, should have wait, looks like I got good frames now and even stock FW works

{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-45,"brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":23.5,"tempf":74.3,"hum":58.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-68,"servicedata":"582d341233dc00df3f4c0b4ca0","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-51,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-57,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-61,"servicedata":"582d341233dc00e03f4b0b3da6","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-59,"brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.4,"tempf":72.32,"hum":63,"batt":74,"volt":2.87}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-53,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-52,"brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":23.5,"tempf":74.3,"hum":58.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-57,"brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.4,"tempf":72.32,"hum":63,"batt":74,"volt":2.867}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-60,"brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":23.5,"tempf":74.3,"hum":58.5,"batt":100}

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-51,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-57,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}

Apart from these, which are not caught yet at all, and @1technophile seeing the same with his CGG!. I think it is the different name braodcast, compared to your above #MI example, as otherwie they seem to be the same.

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

Just updated the decoder.

Could you Clean and reBuild please and Upload, to verify if the last undecoded occurrences are now decoded

But we also see that each CGG1 send out decoded PLUS undecoded data under different servbiceuuids, e.g.
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-45,"brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":23.5,"tempf":74.3,"hum":58.5,"batt":100}
with
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-51,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}

and
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-59,"brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.4,"tempf":72.32,"hum":63,"batt":74,"volt":2.87}
with
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-61,"servicedata":"582d341233dc00e03f4b0b3da6","servicedatauuid":"0x181a"}

So do we really need to decode both?

BTW @hallard you didn't seem to like the esp32dev-ble-datatest environment, as the decoded messages do not have the raw servicedata in them ;)

@DigiH
Copy link
Collaborator

DigiH commented Oct 15, 2022

Ok, the fact that @hallard's CGG1 with stock firmware behaves differently to @1technophile's CGG1 with stock firmware, possibly due to different version due to the hardware revisions, plus the fact of:

pvvx/ATC_MiThermometer#41 (comment)

being either the true or fake FCC-ID 2AQ3F-CGG1, makes it even harder ;)

I think we need to, step by step, confirm/eliminate the different decoder versions, ideally starting with the v2 (ATC1441) and v3 (PVVX) version, which are most likely to be the most consistent formats.

So white-listed message logs of both these versions for a couple of minutes should show all the possible broadcast data, to hopefully allow these two decoders to be confirmed and GM'd.

Then several minutes of the stock firmware for @1technophile's device, plus all three of @hallard's CGG1s with esp32dev-ble-datatest message logging should show up any deficiencies in the remaining decoders, and/or if it is only due to the ClearGrass/Qingping protocol/serviceuuid differences, and enough decoded messages come through with only either.

The above mentioned
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-61,"servicedata":"582d341233dc00e03f4b0b3da6","servicedatauuid":"0x181a"}
will likely remain undecoded, as there doesn't seem to be a name broadcast with it, and with the universal 181a uuid and only the data length it would be a bit to ambiguous as a model condition.

All a bit cumbersome, but I think this is the only way we will get nicely formatted properly decoded messages - for all existing test devices at least.

Comments or suggestions on this? :)

@hallard
Copy link
Contributor Author

hallard commented Oct 16, 2022

@DigiH

BTW @hallard you didn't seem to like the esp32dev-ble-datatest environment, as the decoded messages do not have the raw servicedata in them ;)

Of course not, I like it, in fact I was in a hurry saturday and didn't find it "as I would" because on VScode+PIO, targets are not sorted by name (my bad) so now just rebuild from scratch.

here are results, I need to check something the PVVX version looks like to be more verbose they are 3 at the same place with same config that is strange.

As a reminder here MAC vs Firmware

58:2D:34:12:3C:E8 is stock FW
58:2D:34:12:33:DC is ATC
58:2D:34:12:33:F7 is PVVX

logs

{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-52,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-56,"brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.8,"tempf":73.04,"hum":66,"batt":74,"volt":2.873}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-59,"servicedata":"582d341233dc00e4424d0b4ed1","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.8,"tempf":73.04,"hum":66,"batt":77,"volt":2.894}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-53,"servicedata":"8816e83c12342d580104d800b102020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":21.6,"tempf":70.88,"hum":68.9,"batt":100}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-54,"servicedata":"8816e83c12342d580104e200a102020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.6,"tempf":72.68,"hum":67.3,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-60,"servicedata":"582d341233dc00e4424a0b36d8","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-56,"servicedata":"582d341233dc00e4424a0b37db","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.8,"tempf":73.04,"hum":66,"batt":74,"volt":2.871}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"8816e83c12342d580104df00a502020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.3,"tempf":72.14,"hum":67.7,"batt":100}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-51,"servicedata":"f73312342d58d709c917290b490205","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":25.19,"tempf":77.342,"hum":60.89,"batt":73,"volt":2.857}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-54,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-55,"servicedata":"582d341233dc00e442490b2ee5","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.8,"tempf":73.04,"hum":66,"batt":73,"volt":2.862}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-56,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e5424b0b3fec","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.9,"tempf":73.22,"hum":66,"batt":75,"volt":2.879}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"rssi":-69,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-55,"servicedata":"582d341233dc00e4424d0b50ef","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.8,"tempf":73.04,"hum":66,"batt":77,"volt":2.896}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-54,"servicedata":"f73312342d58910937182c0b491205","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":24.49,"tempf":76.082,"hum":61.99,"batt":73,"volt":2.86}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"rssi":-67,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-55,"servicedata":"582d341233dc00e5424d0b50f2","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.9,"tempf":73.22,"hum":66,"batt":77,"volt":2.896}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-54,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-56,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-61,"servicedata":"582d341233dc00e5424d0b4f02","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.9,"tempf":73.22,"hum":66,"batt":77,"volt":2.895}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-54,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-53,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-56,"servicedata":"582d341233dc00e5424a0b3806","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.9,"tempf":73.22,"hum":66,"batt":74,"volt":2.872}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-54,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-55,"servicedata":"582d341233dc00e542490b2c09","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.9,"tempf":73.22,"hum":66,"batt":73,"volt":2.86}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-54,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-56,"servicedata":"582d341233dc00e6424a0b3710","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":66,"batt":74,"volt":2.871}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-60,"servicedata":"582d341233dc00e6424d0b4f16","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":66,"batt":77,"volt":2.895}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-54,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-62,"servicedata":"582d341233dc00e6424a0b3419","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":66,"batt":74,"volt":2.868}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-60,"servicedata":"f73312342d587e093918310b491605","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":24.3,"tempf":75.74,"hum":62.01,"batt":73,"volt":2.865}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-54,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-60,"servicedata":"582d341233dc00e6424a0b351c","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":66,"batt":74,"volt":2.869}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-66,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-61,"servicedata":"582d341233dc00e6424d0b4e20","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":66,"batt":77,"volt":2.894}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-66,"servicedata":"f73312342d587e093c184a0b4c1905","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":24.3,"tempf":75.74,"hum":62.04,"batt":76,"volt":2.89}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-57,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-57,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-52,"servicedata":"f73312342d587b0941184d0b4d1d05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":24.27,"tempf":75.686,"hum":62.09,"batt":77,"volt":2.893}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-54,"servicedata":"f73312342d587d093e183a0b4a1f05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":24.29,"tempf":75.722,"hum":62.06,"batt":74,"volt":2.874}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-59,"servicedata":"582d341233dc00e6424d0b4f2a","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":66,"batt":77,"volt":2.895}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-54,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-60,"servicedata":"582d341233dc00e6424d0b4e30","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":66,"batt":77,"volt":2.894}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-53,"servicedata":"f73312342d5879094e18430b4b2605","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":24.25,"tempf":75.65,"hum":62.22,"batt":75,"volt":2.883}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-57,"servicedata":"582d341233dc00e6424d0b5234","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":66,"batt":77,"volt":2.898}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-61,"servicedata":"f73312342d5875095c184d0b4d2a05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":24.21,"tempf":75.578,"hum":62.36,"batt":77,"volt":2.893}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-69,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e6414d0b523a","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":65,"batt":77,"volt":2.898}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-69,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-60,"servicedata":"f73312342d586e095818440b4c2c05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":24.14,"tempf":75.452,"hum":62.32,"batt":76,"volt":2.884}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e6414d0b4d3d","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":65,"batt":77,"volt":2.893}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-54,"servicedata":"f73312342d586e096018430b4b2e05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":24.14,"tempf":75.452,"hum":62.4,"batt":75,"volt":2.883}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e641490b2d41","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":65,"batt":73,"volt":2.861}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-58,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-57,"servicedata":"582d341233dc00e6414a0b354e","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":65,"batt":74,"volt":2.869}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-54,"servicedata":"f73312342d5862098418410b4b3905","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":24.02,"tempf":75.236,"hum":62.76,"batt":75,"volt":2.881}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7414a0b3751","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":74,"volt":2.871}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-57,"servicedata":"f73312342d585e098318530b4d3c05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.98,"tempf":75.164,"hum":62.75,"batt":77,"volt":2.899}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-69,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-57,"servicedata":"f73312342d585a098118450b4c3e05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.94,"tempf":75.092,"hum":62.73,"batt":76,"volt":2.885}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-59,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-57,"servicedata":"f73312342d5857099218540b4d4405","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.91,"tempf":75.038,"hum":62.9,"batt":77,"volt":2.9}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-64,"servicedata":"582d341233dc00e7414a0b3861","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":74,"volt":2.872}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-61,"servicedata":"f73312342d5852099818410b4b4b05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.86,"tempf":74.948,"hum":62.96,"batt":75,"volt":2.881}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-53,"servicedata":"f73312342d5850099b184c0b4c4d05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.84,"tempf":74.912,"hum":62.99,"batt":76,"volt":2.892}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-57,"servicedata":"582d341233dc00e7414d0b4f6f","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":77,"volt":2.895}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-57,"servicedata":"f73312342d584c09a718450b4c4f05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.8,"tempf":74.84,"hum":63.11,"batt":76,"volt":2.885}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-69,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-57,"servicedata":"582d341233dc00e7414b0b3d72","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":75,"volt":2.877}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7414b0b3c75","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":75,"volt":2.876}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7414a0b3778","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":74,"volt":2.871}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-57,"servicedata":"f73312342d584c09aa18450b4c5305","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.8,"tempf":74.84,"hum":63.14,"batt":76,"volt":2.885}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-61,"servicedata":"f73312342d584b09ae184c0b4c5405","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.79,"tempf":74.822,"hum":63.18,"batt":76,"volt":2.892}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-54,"servicedata":"f73312342d584b09aa18470b4c5605","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.79,"tempf":74.822,"hum":63.14,"batt":76,"volt":2.887}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-59,"servicedata":"582d341233dc00e7414a0b377c","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":74,"volt":2.871}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-59,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-60,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7414b0b3b82","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":75,"volt":2.875}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-56,"servicedata":"f73312342d584a09b518430b4b5a05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.78,"tempf":74.804,"hum":63.25,"batt":75,"volt":2.883}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"rssi":-69,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-59,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-65,"servicedata":"582d341233dc00e7414b0b3b85","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":75,"volt":2.875}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-54,"servicedata":"f73312342d584709b7184a0b4c5c05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.75,"tempf":74.75,"hum":63.27,"batt":76,"volt":2.89}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-57,"servicedata":"f73312342d584809be18580b4e5e05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.76,"tempf":74.768,"hum":63.34,"batt":78,"volt":2.904}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-70,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-59,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-60,"servicedata":"f73312342d584609bd184c0b4c6305","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.74,"tempf":74.732,"hum":63.33,"batt":76,"volt":2.892}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-61,"servicedata":"f73312342d584309c318590b4e6505","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.71,"tempf":74.678,"hum":63.39,"batt":78,"volt":2.905}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-58,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-57,"servicedata":"582d341233dc00e7414b0b3b96","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":75,"volt":2.875}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-53,"servicedata":"f73312342d584609c818490b4c6705","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.74,"tempf":74.732,"hum":63.44,"batt":76,"volt":2.889}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e741490b2a99","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":65,"batt":73,"volt":2.858}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-60,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-61,"servicedata":"f73312342d584309cb184f0b4d6905","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.71,"tempf":74.678,"hum":63.47,"batt":77,"volt":2.895}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-69,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7404a0b389c","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":74,"volt":2.872}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7404a0b36a0","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":74,"volt":2.87}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-57,"servicedata":"f73312342d584009ca18440b4c6e05","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7404a0b37a6","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":74,"volt":2.871}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-60,"servicedata":"f73312342d584209d5184b0b4c7205","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.7,"tempf":74.66,"hum":63.57,"batt":76,"volt":2.891}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-60,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-57,"servicedata":"582d341233dc00e7404d0b4ead","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":77,"volt":2.894}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"rssi":-69,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-53,"servicedata":"f73312342d583c09d318540b4d7905","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.64,"tempf":74.552,"hum":63.55,"batt":77,"volt":2.9}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-68,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-59,"servicedata":"f73312342d583b09d418500b4d7d05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.63,"tempf":74.534,"hum":63.56,"batt":77,"volt":2.896}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-57,"servicedata":"f73312342d583b09d8184d0b4d7f05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.63,"tempf":74.534,"hum":63.6,"batt":77,"volt":2.893}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-59,"servicedata":"f73312342d583709d9185f0b4f8105","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.59,"tempf":74.462,"hum":63.61,"batt":79,"volt":2.911}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-53,"servicedata":"f73312342d583709db184c0b4c8405","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.59,"tempf":74.462,"hum":63.63,"batt":76,"volt":2.892}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-57,"servicedata":"582d341233dc00e7404d0b4dc0","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":77,"volt":2.893}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-57,"servicedata":"f73312342d583909db18520b4d8605","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.61,"tempf":74.498,"hum":63.63,"batt":77,"volt":2.898}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-58,"servicedata":"582d341233dc00e7404a0b37c4","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7404a0b37c7","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":74,"volt":2.871}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7404a0b38ca","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":74,"volt":2.872}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-58,"servicedata":"f73312342d583309dd18540b4d8a05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.55,"tempf":74.39,"hum":63.65,"batt":77,"volt":2.9}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e740490b2dcd","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":73,"volt":2.861}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-53,"servicedata":"f73312342d583809dd18520b4d8c05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.6,"tempf":74.48,"hum":63.65,"batt":77,"volt":2.898}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-68,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-60,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-60,"servicedata":"f73312342d583309dc18530b4d8e05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.55,"tempf":74.39,"hum":63.64,"batt":77,"volt":2.899}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-59,"servicedata":"f73312342d583309dc185f0b4f9105","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.55,"tempf":74.39,"hum":63.64,"batt":79,"volt":2.911}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7404a0b35d4","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":74,"volt":2.869}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-58,"servicedata":"f73312342d583209e2184d0b4d9505","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.54,"tempf":74.372,"hum":63.7,"batt":77,"volt":2.893}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-64,"servicedata":"582d341233dc00e740490b2dda","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":73,"volt":2.861}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-65,"servicedata":"582d341233dc00e7404d0b4de8","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":77,"volt":2.893}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-59,"servicedata":"582d341233dc00e740490b2eeb","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":73,"volt":2.862}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-57,"servicedata":"f73312342d583109e718440b4ca205","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.53,"tempf":74.354,"hum":63.75,"batt":76,"volt":2.884}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7404d0b4ff2","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":77,"volt":2.895}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-68,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-59,"servicedata":"582d341233dc00e7404a0b37f5","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":74,"volt":2.871}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-68,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-58,"servicedata":"582d341233dc00e7404a0b36f8","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":64,"batt":74,"volt":2.87}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-53,"servicedata":"f73312342d582d09e918620b4fa905","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.49,"tempf":74.282,"hum":63.77,"batt":79,"volt":2.914}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-57,"servicedata":"582d341233dc00e8404b0b3bfb","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.2,"tempf":73.76,"hum":64,"batt":75,"volt":2.875}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-58,"servicedata":"f73312342d582f09f9183b0b4bab05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":23.51,"tempf":74.318,"hum":63.93,"batt":75,"volt":2.875}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-54,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-55,"servicedata":"8816e83c12342d580104dc00ad02020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22,"tempf":71.6,"hum":68.5,"batt":100}

Hope this helps

@DigiH
Copy link
Collaborator

DigiH commented Oct 16, 2022

Great! Thanks a lot @hallard , this helps a lot!

No worries about the sorting, was quickly done here, and also showed me that for PVVX there are only three messages, whereas the stock firmware and ATC have between 13, respectively 18 messages. I take it they were all taken during the same time period, initially unsorted as above above as they came in. But could have to do something with the individual firmware reporting setting.

I'll tale a closer look and will amend the test decoder accordingly. Would be great if you could then give it another test run in the next days with all three devices with the firmware they have now :)

@hallard
Copy link
Contributor Author

hallard commented Oct 16, 2022

@DigiH

No problem I will leave them as is for few days, I've updated the logs above with more data

@hallard
Copy link
Contributor Author

hallard commented Oct 17, 2022

Here few more with some not decoded

{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-77,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-69,"servicedata":"582d341233dc00e3424d0b4ea5","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-69,"servicedata":"582d341233dc00e341490b29a8","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-70,"servicedata":"582d341233dc00e3424d0b4fab","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-68,"servicedata":"f73312342d58de08cd197e0b52f405","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"rssi":-73,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-69,"servicedata":"582d341233dc00e3424d0b50b2","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.7,"tempf":72.86,"hum":66,"batt":77,"volt":2.896}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-68,"servicedata":"f73312342d58e008cf198d0b54f605","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-69,"servicedata":"582d341233dc00e2424b0b3eb5","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-68,"servicedata":"f73312342d58e008e1198d0b54fa05","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-67,"servicedata":"f73312342d58de08db197e0b52fc05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.7,"tempf":72.86,"hum":66.19,"batt":82,"volt":2.942}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-78,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-68,"servicedata":"f73312342d58db08f419770b510e05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.67,"tempf":72.806,"hum":66.44,"batt":81,"volt":2.935}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-69,"servicedata":"582d341233dc00e3424d0b4fd5","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"rssi":-73,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-68,"servicedata":"f73312342d58df08ee198f0b541005","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"rssi":-71,"servicedata":"8816e83c12342d580104e3008602020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.7,"tempf":72.86,"hum":64.6,"batt":100}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-69,"servicedata":"f73312342d58df08f519890b531205","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-69,"servicedata":"582d341233dc00e242490b2edc","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-68,"servicedata":"f73312342d58df08e619780b511405","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.71,"tempf":72.878,"hum":66.3,"batt":81,"volt":2.936}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-81,"servicedata":"8816e83c12342d580104e3008602020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.7,"tempf":72.86,"hum":64.6,"batt":100}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-82,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-69,"servicedata":"582d341233dc00e342480b25e3","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-69,"servicedata":"f73312342d58d808fc19780b511705","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-73,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-69,"servicedata":"582d341233dc00e3424d0b4fec","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.7,"tempf":72.86,"hum":66,"batt":77,"volt":2.895}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-68,"servicedata":"f73312342d58da08fa198d0b541d05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.66,"tempf":72.788,"hum":66.5,"batt":84,"volt":2.957}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-73,"servicedata":"8816e83c12342d580104e3009102020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.7,"tempf":72.86,"hum":65.7,"batt":100}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-68,"servicedata":"f73312342d58dd08fc19800b521f05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.69,"tempf":72.842,"hum":66.52,"batt":82,"volt":2.944}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-69,"servicedata":"582d341233dc00e3424d0b53f0","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-82,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-69,"servicedata":"582d341233dc00e3424a0b37f3","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-68,"servicedata":"f73312342d58dc08001a790b512105","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-69,"servicedata":"f73312342d58da08fe19780b512405","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.66,"tempf":72.788,"hum":66.54,"batt":81,"volt":2.936}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"rssi":-80,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-69,"servicedata":"582d341233dc00e3424d0b4efa","servicedatauuid":"0x181a"}

@DigiH
Copy link
Collaborator

DigiH commented Oct 17, 2022

Thanks @hallard,

I think we can safely say now that CGG1 decoder v2 (CGG1_ATC1441) and v3 (CGG1_PVVX) are working as expected, and are good for final release as they are.
The only undecoded messages from these two are when no name is recorded in a few transmissions every now and then, which we wouldn't want to do, due to the generic nature of "servicedatauuid":"0x181a".

This leaves us with your undecoded shorter messages for v1 (stock firmware) along with the properly decoded messages.

Looking at these - undecoded with "servicedatauuid":"0xfe95" - the servicedata never changes in all your samples, in the middle there is the MAC address in reverse, but with no changes and no obvious similar temp/hum encodings as with the decoded "servicedatauuid":"0xfdcd" I think these are non-relevant broadcasts to our decoding purpose.

With the decoded "servicedatauuid":"0xfdcd" messages I still have one issue/question though. Is you battery really always at 100% in the "58:2D:34:12:3C:E8"device?

Would you mind trying with the battery from one of the other devices, just to test my theory that the stock firmware actually doesn't send proper battery level information?

@bbacskay - do you have any further insight into this? Is the battery transmission dependant on the CGG1 hardware revision and its relating firmware?

From the stock firmware data I have seen so far, the 16 ID always seems to have 100% battery, whereas 07 ID models seem to hover around the 11-14% mark, but for each individual device it never changes.

Once we have this sorted out I would say that the stock firmware, ATC1441 and PVVX are ok - at least for your devices, and thanks to your help and extensive testing!

@hallard
Copy link
Contributor Author

hallard commented Oct 17, 2022

@DigiH the 58:2D:34:12:3C:E8 is the latest I used, just outboxed 2 days ago like the 58:2D:34:12:33:F7 at the same time and both ordered may be one year ago.

So yo need me to swap battery between 58:2D:34:12:3C:E8 and 58:2D:34:12:33:F7 correct? If so I will do that once at home.

@DigiH
Copy link
Collaborator

DigiH commented Oct 17, 2022

So yo need me to swap battery between 58:2D:34:12:3C:E8 and 58:2D:34:12:33:F7 correct? If so I will do that once at home.

That would be great, or the battery from 58:2D:34:12:33:DC into 58:2D:34:12:3C:E8 - either one will do to see if 58:2D:34:12:3C:E8 with the stock firmware is still reporting 100% or if it has changed to more what ATC1441 and PVVX were reporting with the same battery.

Thanks

@hallard
Copy link
Contributor Author

hallard commented Oct 17, 2022

That would be great, or the battery from 58:2D:34:12:33:DC into 58:2D:34:12:3C:E8

may be better correct since this one is quite old and may be EOL, I'll let you know

@hallard
Copy link
Contributor Author

hallard commented Oct 17, 2022

That would be great, or the battery from 58:2D:34:12:33:DC into 58:2D:34:12:3C:E8

Here we go

{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-71,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-71,"servicedata":"f73312342d58eb08161b770b514005","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.83,"tempf":73.094,"hum":69.34,"batt":81,"volt":2.935}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-77,"servicedata":"582d341233dc00ec445c0bd8a1","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.6,"tempf":74.48,"hum":68,"batt":92,"volt":3.032}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-74,"servicedata":"8816e83c12342d580104e800a50202015a","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":23.2,"tempf":73.76,"hum":67.7,"batt":90}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-79,"servicedata":"582d341233dc00e9435c0bdca4","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.3,"tempf":73.94,"hum":67,"batt":92,"volt":3.036}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-77,"servicedata":"f73312342d58e808ff1a7c0b524405","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.8,"tempf":73.04,"hum":69.11,"batt":82,"volt":2.94}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-67,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-79,"servicedata":"582d341233dc00e8445c0bd8aa","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.2,"tempf":73.76,"hum":68,"batt":92,"volt":3.032}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-71,"servicedata":"f73312342d58e508081b950b554605","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.77,"tempf":72.986,"hum":69.2,"batt":85,"volt":2.965}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-75,"servicedata":"582d341233dc00e7445c0bd8ae","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23.1,"tempf":73.58,"hum":68,"batt":92,"volt":3.032}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-70,"servicedata":"f73312342d58e608041b950b554805","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-72,"servicedata":"8816e83c12342d580104e800a50202015a","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":23.2,"tempf":73.76,"hum":67.7,"batt":90}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-72,"servicedata":"f73312342d58e708f91a960b554b05","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-78,"servicedata":"582d341233dc00e6445b0bcfb4","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":68,"batt":91,"volt":3.023}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-67,"servicedata":"8816e83c12342d580104e500a30202015a","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.9,"tempf":73.22,"hum":67.5,"batt":90}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-69,"servicedata":"f73312342d58e608ef1a920b544d05","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-71,"servicedata":"f73312342d58e808e91a960b554f05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.8,"tempf":73.04,"hum":68.89,"batt":85,"volt":2.966}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-77,"servicedata":"582d341233dc00e6445b0bcfba","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":23,"tempf":73.4,"hum":68,"batt":91,"volt":3.023}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-67,"servicedata":"8816e83c12342d580104e500a30202015a","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.9,"tempf":73.22,"hum":67.5,"batt":90}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-70,"servicedata":"f73312342d58e708e51a860b535105","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.79,"tempf":73.022,"hum":68.85,"batt":83,"volt":2.95}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-76,"servicedata":"582d341233dc00e5445d0bddbe","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"rssi":-71,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-65,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-81,"servicedata":"582d341233dc00e4445c0bd8c8","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.8,"tempf":73.04,"hum":68,"batt":92,"volt":3.032}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-67,"servicedata":"8816e83c12342d580104e500a30202015a","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.9,"tempf":73.22,"hum":67.5,"batt":90}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-86,"servicedata":"582d341233dc00e4445c0bdad2","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.8,"tempf":73.04,"hum":68,"batt":92,"volt":3.034}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-80,"servicedata":"8816e83c12342d580104e500a30202015a","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.9,"tempf":73.22,"hum":67.5,"batt":90}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-83,"servicedata":"582d341233dc00e3445c0bdadb","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.7,"tempf":72.86,"hum":68,"batt":92,"volt":3.034}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-77,"servicedata":"f73312342d58e308c51a810b526905","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-79,"servicedata":"f73312342d58e308c21a7f0b526b05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.75,"tempf":72.95,"hum":68.5,"batt":82,"volt":2.943}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-80,"servicedata":"8816e83c12342d580104e500a30202015a","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.9,"tempf":73.22,"hum":67.5,"batt":90}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-79,"servicedata":"582d341233dc00e3445d0bdee2","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-81,"servicedata":"f73312342d58e208c01a770b516d05","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.74,"tempf":72.932,"hum":68.48,"batt":81,"volt":2.935}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-80,"servicedata":"582d341233dc00e4445b0bd0e5","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.8,"tempf":73.04,"hum":68,"batt":91,"volt":3.024}
{"id":"58:2D:34:12:33:DC","mac_type":0,"name":"CGG_1233DC","rssi":-80,"servicedata":"582d341233dc00e3445c0bdce8","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v2","model_id":"CGG1_ATC1441","tempc":22.7,"tempf":72.86,"hum":68,"batt":92,"volt":3.036}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-80,"servicedata":"f73312342d58e008bd1a950b557005","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.72,"tempf":72.896,"hum":68.45,"batt":85,"volt":2.965}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-78,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-86,"servicedata":"8816e83c12342d580104e500a30202015a","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.9,"tempf":73.22,"hum":67.5,"batt":90}
{"id":"58:2D:34:12:33:F7","mac_type":0,"rssi":-80,"servicedata":"f73312342d58e208bc1a960b557205","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-77,"servicedata":"f73312342d58e308c41a970b557405","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.75,"tempf":72.95,"hum":68.52,"batt":85,"volt":2.967}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"rssi":-79,"servicedata":"3058480b01e83c12342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:33:DC","mac_type":0,"rssi":-80,"servicedata":"582d341233dc00e3445e0bedef","servicedatauuid":"0x181a"}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-77,"servicedata":"f73312342d58e308c61a840b537605","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.75,"tempf":72.95,"hum":68.54,"batt":83,"volt":2.948}
{"id":"58:2D:34:12:33:F7","mac_type":0,"name":"CGG_1233F7","rssi":-74,"servicedata":"f73312342d58e208be1a970b557805","servicedatauuid":"0x181a","brand":"Cleargrass/Qingping","model":"Round TH v3","model_id":"CGG1_PVVX","tempc":22.74,"tempf":72.932,"hum":68.46,"batt":85,"volt":2.967}
{"id":"58:2D:34:12:3C:E8","mac_type":0,"name":"Qingping Temp & RH M","rssi":-82,"servicedata":"8816e83c12342d580104e500a30202015a","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH v1","model_id":"CGG1","tempc":22.9,"tempf":73.22,"hum":67.5,"batt":90}

@DigiH
Copy link
Collaborator

DigiH commented Oct 18, 2022

Great, thanks a lot @hallard!

So newer CGG1s work fine with the stock firmware reporting the battery level, even though it seem it might only be in full 10% steps.

I have uploaded the changes to the STOCK, ATC1441 and PVVX decoders as we can view them as final now.

I will have to look a bit more into why some old version with the stock firmware seem to report a never changing battery level, and pull some of the current v4/v5 together, but for the new CGG1 hardware versions all looks fine now, thanks to your help and very extensive testing and reporting.

You can go back to installing your preferred firmware on all your CGG1 again 👍 and if you want to rebuild OMG with the latest above mentioned changes please make sure to CLEAN/CLEAN ALL before a new build and upload with the current test decoder.

You might also want to open an issue in the Theengs Decoder repo, submit a PR or start a discussion there, about the inclusion of your Puck.js 😀

@hallard
Copy link
Contributor Author

hallard commented Oct 18, 2022

Great, thanks a lot @hallard!

your welcome, it will be cool to have them on my HA system now with OpenMQTTGateway

You can go back to installing your preferred firmware on all your CGG1 again 👍 and if you want to rebuild OMG with the latest above mentioned changes please make sure to CLEAN/CLEAN ALL before a new build and upload with the current test decoder.

Yes I will use ATC, PVVX does fancy temperature on my homey plugins (not decoded I think)

You might also want to open an issue in the Theengs Decoder repo, submit a PR or start a discussion there, about the inclusion of your Puck.js 😀

Yeah, need to find some spare time for that :-)

@DigiH
Copy link
Collaborator

DigiH commented Oct 18, 2022

PVVX does fancy temperature on my homey plugins (not decoded I think)

Just out of curiosity, doesn't Homey allow to receive MQTT data from OMG for example? Or are you talking about Homey (Bridge) directly receiving the BLE broadcasts - so a Theengs app/plug-in using the same decoders as OMG might be a preferred option?

@hallard
Copy link
Contributor Author

hallard commented Oct 18, 2022

Just out of curiosity, doesn't Homey allow to receive MQTT data from OMG for example?

Absolutely it can do that, but I need then to fire a flow when data arrive from MQTT to update virtual sensor values and as now I can't get raw data value in topic (need to parse json that can't be done for virtual device easily ) it's by far more complicated see

Or are you talking about Homey (Bridge) directly receiving the BLE broadcasts - so a Theengs app/plug-in using the same decoders as OMG might be a preferred option?

Nope it's a classic homey (old one) with this plugins that works fine also but only ATC (and PVVX is wrong may be because triggered only with the classic uuid 0x181a

@DigiH
Copy link
Collaborator

DigiH commented Oct 18, 2022

Ok, I have to admit I don't know much and haven't got any experience with Homey, but recently saw the very interesting looking Homey Pro announcement.

as now I can't get raw data value in topic (need to parse json that can't be done for virtual device easily ) it's by far more complicated see

simplePublishing is still active in OMG, so you should be ok with receiving the simple individual messages, or are you still having issues with it?

https://github.com/1technophile/OpenMQTTGateway/blob/development/main/main.ino#L340

or what are you referring to as raw data values?

@hallard
Copy link
Contributor Author

hallard commented Oct 18, 2022

Ok, I have to admit I don't know much and haven't got any experience with Homey, but recently saw the very interesting looking Homey Pro announcement.

Trust me I used a lot (Fibaro, Eeedomus, Jeedom, ...) homey is the one I kept, the UX is so nice and good and it's so easy to make flow thru the smartphone no need to do any coding or script, that the goal isnt' it, place and use without any "oh something wrong let me fix it", it's just works, and fine. Worth it so much and WAF compliant :-)

simplePublishing is still active in OMG, so you should be ok with receiving the simple individual messages, or are you still having issues with it?

yes exactly this one that I tried, didn't not succeeded to get it to work, maybe I missed something if it's still active it should work, I'll try agin tonight.

@DigiH
Copy link
Collaborator

DigiH commented Oct 18, 2022

simplePublishing is still active in OMG, so you should be ok with receiving the simple individual messages, or are you still having issues with it?

yes exactly this one that I tried, didn't not succeeded to get it to work, maybe I missed something if it's still active it should work, I'll try agin tonight.

I just quickly tested it here with my BLE gateway, just added

'-DsimplePublishing=true'

to my build_flags, rebuilt, uploaded and then all the devices' messages were split into each individual property. Best monitored with some app like MQTT-Explorer.

Obviously all topics now get extended by each property name, so possibly that threw your Homey reception?

@hallard
Copy link
Contributor Author

hallard commented Oct 18, 2022

I tried with mosquitto_sub, did not looked into MQTT Explorer that was running in background BTW because I was sure of my subscription (my bad)

mosquitto_sub -h 192.168.1.8 -t 'OMG/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/582D341233DC' -t 'OMG/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/582D341233DC/#'

I'll try back tonight, that's perfect if it is working and I need to whitelist also

@hallard
Copy link
Contributor Author

hallard commented Oct 18, 2022

Ok I tried back with M5StackCP plus but unable to get it work and thus far from stable this board, looks like I'm unable to flash it back, no time to investigate so I tried back to my ThingPulse ESP32 gateway rebuilding all, does works fine, sorry about that.

image

@hallard
Copy link
Contributor Author

hallard commented Oct 19, 2022

@DigiH just sorted out my puck.js it's an espruino device, and need to be programmed (in js) with an application.
So what app you want me to try?
There are so much may be Bluetooth Advertiser - Everything!

I'm creating a new issue #1293 for puck.js to leave this one with it own subject

@hallard hallard closed this as completed Oct 19, 2022
@hallard
Copy link
Contributor Author

hallard commented Nov 5, 2022

Hi There,

Received today 2 new Clear glass, one is the H version (Apple Home Kit) the most expensive and this one has no battery provided

image

The other is classic CCG1 (with battery provided)

image

Stock firmware plugged the battery, got 2 OMG running one with debug message the other not, don't be surprised

json

{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0001000102868c3a3e","rssi":-65}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qin","manufacturerdata":"4c000631012bae0af558540a0001000102868c3a3e","rssi":-73}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0001000102868c3a3e","rssi":-64}
{"id":"58:2D:34:12:31:4E","mac_type":0,"name":"Qingping Temp & RH M","rssi":-67,"servicedata":"3058480b014e3112342d58280100","servicedatauuid":"0xfe95"}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0001000102868c3a3e","rssi":-72}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-64}
{"id":"58:2D:34:12:31:4E","mac_type":0,"name":"Qingping Temp & RH M","rssi":-83,"servicedata":"3058480b014e3112342d58280100","servicedatauuid":"0xfe95"}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-61}
{"id":"58:2D:34:12:31:4E","mac_type":0,"name":"Qingping Temp & RH M","rssi":-66,"servicedata":"08164e3112342d580104df00f001020164","servicedatauuid":"0xfdcd","brand":"Cleargrass/Qingping","model":"Round TH","model_id":"CGG1","tempc":22.3,"tempf":72.14,"hum":49.6,"batt":100}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-72}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-64}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-63}
{"id":"58:2D:34:12:31:4E","mac_type":0,"name":"Qingping Temp & RH M","rssi":-65,"servicedata":"3058480b014e3112342d58280100","servicedatauuid":"0xfe95"}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qin","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-74}
{"id":"58:2D:34:12:31:4E","mac_type":0,"rssi":-85,"brand":"Cleargrass/Qingping","model":"Round TH","model_id":"CGG1","tempc":22.3,"tempf":72.14,"hum":49.6,"batt":100}
{"id":"58:2D:34:12:31:4E","mac_type":0,"name":"Qingping Temp & RH M","rssi":-65,"servicedata":"3058480b014e3112342d58280100","servicedatauuid":"0xfe95"}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-74}
{"id":"58:2D:34:12:31:4E","mac_type":0,"name":"Qingping Temp & RH M","rssi":-71,"servicedata":"3058480b014e3112342d58280100","servicedatauuid":"0xfe95"}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-63}
{"id":"58:2D:34:12:31:4E","mac_type":0,"name":"Qingping Temp & RH M","rssi":-67,"brand":"Cleargrass/Qingping","model":"Round TH","model_id":"CGG1","tempc":22.3,"tempf":72.14,"hum":49.6,"batt":100}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-63}
{"id":"58:2D:34:12:31:4E","mac_type":0,"name":"Qingping Temp & RH M","rssi":-66,"servicedata":"3058480b014e3112342d58280100","servicedatauuid":"0xfe95"}
{"id":"58:2D:34:12:31:4E","mac_type":0,"name":"Qingping Temp & RH M","rssi":-66,"servicedata":"3058480b014e3112342d58280100","servicedatauuid":"0xfe95"}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qin","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-73}
{"id":"F8:1B:54:2B:DC:79","mac_type":1,"name":"Qingping Temp RH H","manufacturerdata":"4c000631012bae0af558540a0002000102868c3a3e","rssi":-58}
{"id":"58:2D:34:12:31:4E","mac_type":0,"name":"Qingping Temp & RH M","rssi":-84,"servicedata":"3058480b014e3112342d58280100","servicedatauuid":"0xfe95"}

Only the classic is decoded 58:2D:34:12:31:4E

@DigiH
Copy link
Collaborator

DigiH commented Nov 5, 2022

Hi @hallard

one is the H version (Apple Home Kit) the most expensive and this one has no battery provided

Yes, this one sends its data in manufacturerdata format only - with the Apple company ID 4c00 leading, but not quite iBeacon format. Also with a slightly different name. Will have to have a closer look tomorrow if and what info is encoded where.

If not specifically bought for direct HomeKit compatibility, but mainly for using with OMG, Decoder or other similar BLE scanning software, not worth the extra expense.

Might actually make it harder for 3rd party firmware to be installable on this version as well.

@hallard
Copy link
Contributor Author

hallard commented Nov 5, 2022

If not specifically bought for direct HomeKit compatibility, but mainly for using with OMG, Decoder or other similar BLE scanning software, not worth the extra expense.

Absolutely, but I wanted to give it a try and was pretty sure you would be interested to see frame :-)

@hallard
Copy link
Contributor Author

hallard commented Nov 5, 2022

Worked ROOB on my iPhone

image

@DigiH
Copy link
Collaborator

DigiH commented Nov 5, 2022

Hi @hallard , could you do some more logging of the CGG1H? Also with making sure that there will be different temperature reading, like putting it outside for a bit, holding it in your hands to warm up … also some manufacturerdata broadcasts while you get the correct temp and humidity from the app at the same time … as currently I'm not seeing any obvious encoded data.

Could you also connect the CGG1H with the Qingping+ app, to see if after the pairing the broadcasts are different, and possibly also contain servicedata then?

Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants