Meater thermometer

This repository was moved or is hidden. @JayBinks, where did it go?

I have my Meater+ working with Home Assistant and am currently building a Docker image for my current solution which I will also test with the Meater Block. Alongside this, I am writing an ESPHome integration.

4 Likes

The meater is looking more and more like my father’s day gift this year. How do you like it so far? I’d be interested in testing out your integration if and when I get it. Is it communicating locally with HA or hitting meater’s cloud?

1 Like

It would be a fantastic fathers day gift. I’ve just got my Meater Block up and running too.

I’m using a Raspberry Pi and a modified version of nathanfaber/meaterble python script to connect to the Meater probe locally, due to this the app won’t work due to the connection limitation. I then pass this data over MQTT. The long term goal would be to work with Meater to make an official integration that allows you to still use their app but still be able to receive tip and ambient temperature in Home Assistant.

2 Likes

Sorry folks, it will be back, but I did hide it.
I just have to tidy up some bits before I put it public again, ill try and do that today.

Im happy to discuss / share what ive found.

But it is 100% protocol buffers, I’ve managed to reverse engineer the proto file sufficiently to send and receive discovery and update packets. in fact I almost have a fully functional esp32 solution, that connects to the probes over BT and sends the data over UDP to your phone (on WIFI).

MQTT to their cloud would be nice, but im trying to navigate away from any potential legal minefields, and I feel like extracting certificates from the APK, and connecting to their cloud is a little more next level. Im much more comfortable reverse engineering unencrypted UDP packets and emulating that protocol. :slight_smile:

2 Likes

Regarding using their MQTT. In the end I realized they didn’t have self-signed certificates, I just failed to use my MQTT client correctly with SSL. I have only used it on LAN before and haven’t cared about SSL. This works just fine:

mosquitto_sub -h cloud.meater.com -p 8883 -u 'my-email-address-' -P 'my-meater-password' -t 'MEATERCloud/Devices/some-id-I-dont-know/MASTER' --verbose -d --capath /etc/ssl/certs/

My issue is that I can’t figure out from the code which topics they use. They use some form of unique ID per device/account, and I can’t manage to follow the code to understand it. I have tried everything that looked unique on the stickers of my device without success.

Subscribing to wildcards seems to be disabled, because that surely doesn’t work. If just subscribing to topic test, and then making a publish to that topic, it sure works.

But. If I am not wrong, it’s publishing the same packages to MQTT as it sends via UDP/BT anyway. So the understanding of the protocol is needed regardless. I haven’t been able to confirm this yet though. But, it opens up for three variants to get the same data:

  • UDP
  • BT
  • WAN MQTT

To me Bluetooth is the least attractive option, due to the range issues. I also find it less interesting when using Meater Block.

1 Like

Man getting this into HA would be so awesome…you guys are the real MVPs

1 Like

Any updates?

I was able to reverse the probe temperature but I am having a time with the ambient/grill temperature. I used a BLE sniffer to capture the communication between my Meater and an iPhone. Bytes 0 and 1 appear to be a little-endian 16 bit Integer. Here is a Wireshark capture value from yesterday Value: 9e01240009000800. 9E01 decodes to 414.

From the Android decompile I pulled the code

 public static int toFahrenheit(int i) {
        return ((((i * 9) + 3) / 5) / 16) + 32;
    }

Which coverts the integer to 78 Fahrenheit.

Apption Labs released the first version of the MEATER Cloud REST API.

https://github.com/apption-labs/meater-cloud-public-rest-api

2 Likes

I see already some wrappers on github - https://github.com/Sotolotl/meater-python

Someone who can build a custom component for this, i’m willing to help where needed but im a programming n00b

1 Like

Awesome, you beat me too it - Just received mine today and had already started looking at reverse engineering the BLE - want to integrate it into my home automation system. I have started listening to your github thread…

1 Like

Any updates on this?

Would really like to see this happen as well! (and a Traeger integration too :slight_smile: )

for suresies

I have done some work on the udp packet and now have my probes in Home Assistant. This does not use the Meater Cloud, but does still require wifi and setting up cooks on a phone.

Does it only work with block? or it would also work with a single probe?

Care to share the steps / components used to get it setup in HASS ?
Thanks

I have added the hass setup in the repository now. The python code is currently written for a block, but could easily be modified for a Meater+. The packets from a Meater+ and the block for the probe parts will be the same I believe. I only have a block so I can’t test for a Meater+. This python code does not work for just bluetooth probes it needs the UDP packets over wifi.

Here is a new screenshot:

The badges:
image

1 Like