home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
68.71k stars 28.05k forks source link

Anova precision cooker not found #92457

Open calabresemic opened 12 months ago

calabresemic commented 12 months ago

The problem

I have an anova precision cooker in my app and it is currently online and allows me to control it but I am unable to add the integration because it does not find any devices.

What version of Home Assistant Core has the issue?

Core-2023.5.0

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant OS

Integration causing the issue

Anova

Link to integration documentation on our website

No response

Diagnostics information

No response

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

home-assistant[bot] commented 12 months ago

Hey there @lash-l, mind taking a look at this issue as it has been labeled with an integration (anova) you are listed as a code owner for? Thanks!

Code owner commands Code owners of `anova` can trigger bot actions by commenting: - `@home-assistant close` Closes the issue. - `@home-assistant rename Awesome new title` Renames the issue. - `@home-assistant reopen` Reopen the issue. - `@home-assistant unassign anova` Removes the current integration label and assignees on the issue, add the integration domain after the command.

(message by CodeOwnersMention)


anova documentation anova source (message by IssueLinks)

Lash-L commented 12 months ago

What device do you have? Can you give me the model number located on the device?

wielhelmus commented 12 months ago

i'm also having the same result. The model number is only: Anova PC. I think one of the first models. it has a blue wheel where i can control the temperature. I can ping the device (ESP-28C651) it's also online in the app.

Cooker details from the app: Model Number A3 Firmware 4.6.4 20230504_161322 20230504_161328

calabresemic commented 12 months ago

Mine is also the Anova PC but it's the 110v version.

Lash-L commented 12 months ago

Interesting...

Thank you both for this info. I'm going to try to get a version out with some logging on the custom component version. Once I do I would appreciate if you could try installing that version and sending me the logs.

I'm pretty confident I know what is wrong.

calabresemic commented 12 months ago

Interesting...

Thank you both for this info. I'm going to try to get a version out with some logging on the custom component version. Once I do I would appreciate if you could try installing that version and sending me the logs.

I'm pretty confident I know what is wrong.

Anything you need, just let me know.

Lash-L commented 12 months ago

Okay download the latest version through HACS. https://github.com/Lash-L/anova-wifi-hacs

make sure you download 'master'

then go into your configuration.yaml and add 'custom_components.anova_sous_vide: debug' in loggers

Then try starting up and send me your debug logs

Lash-L commented 12 months ago

Actually - looks like I was too fast with trying to change things. I don't have the time right now but I need to fix a few things.

belenkiy-lab commented 11 months ago

I have a similar issue.

App/Cooker Information:

Platform: Android (33) App Version: 3.4.6 Model Number: A3 Device ID: anova f56-a01ffded44a Connection Type: Wi-Fi Firmware Version: ver 5.5.1

alvinchen1 commented 11 months ago

I do as well, "Retrying setup: Cannot connect to sous vide - perhaps it is not online?"

Platform: Android (33) App Version: 3.4.6 Model Number: A3 Device ID: anova f56-a81ca1697c4 Connection Type: Wi-Fi Firmware Version: ver 6.1.1

Lash-L commented 11 months ago

Sorry for the delay everyone - The 2023.6 update includes a new debug changes, so if you have debug enabled while setting up, I should be able to get the information I need

gradius-v commented 10 months ago

home-assistant_2023-06-07T20-51-22.425Z.log

Lash-L commented 10 months ago

@gradius-v your device id is formatted differently than most I have seen. seems to be the case for all A3 devices that people listed their ids for.

I use a url to get the state of the device: https://anovaculinary.io/devices/COOKERID/states/?limit=1

Where cooker id is your cooker id. Is your device online now? Are you able to try to reach that url?

try https://anovaculinary.io/devices/anova%f56-a814c1638c0/states/?limit=1 https://anovaculinary.io/devices/f56-a814c1638c0/states/?limit=1 https://anovaculinary.io/devices/a814c1638c0/states/?limit=1

Let me know if you get data back from any of those.

nkiest commented 10 months ago

So does latest HAOS version with debug work, or do I need the HACS version? I'm looking at a similar but more complicated question: Support the the Precision Oven, their combi-steam oven product. I'm not seeing anything at all with debug for this.

Lash-L commented 10 months ago

@nkiest The HAOS version works with debug, but it wont show the precision over.

The Websocket url I use to get the needed information is as follows:

f"https://devices.anovaculinary.io/?token={self._firebase_jwt}&supportedAccessories=APC&platform=android"

You can potentially remove the supportedAccessories=APC portion from the ws url, which is what I used to do, but that has seemingly been patched. There was a user who started working on adding the Precision Oven, but I have not heard from them for months.

Seemingly you would need to do supportedAccessories=APO or something similar. I'd be more than happy to try to help you get the device added if you are comfortable programming in Python

The user who started trying to add the oven made a write up of their findings here: https://mcolyer.github.io/anova-oven-api/#introduction

gradius-v commented 10 months ago

try https://anovaculinary.io/devices/anova%f56-a814c1638c0/states/?limit=1 https://anovaculinary.io/devices/f56-a814c1638c0/states/?limit=1 https://anovaculinary.io/devices/a814c1638c0/states/?limit=1

Let me know if you get data back from any of those.

I get no data from any of these.

Lash-L commented 10 months ago

And if you open your app and go to Settings -> Cooker Details, what is the device id there?

gradius-v commented 10 months ago

It's the same as in the log and in the same format as the other posts with A3 cookers.

anova f56-a814c1638c0

m0wlheld commented 10 months ago

Same here. It‘s an Anova Precision Cooker Wi-Fi and Bluetooth, quite old. Can only connect to 2.4 GHz Wifi and no spaces in SSID allowed.

Cooker Details from Anova App:

App/Cooker Information:

Platform: iOS (16.5) App Version: 3.4.6 Model Number: A3 Device ID: anova f56-a814c1640aa Connection Type: Wi-Fi Firmware Version: ver 6.1.1

Lash-L commented 10 months ago

I need to figure out a way to get the status for these devices since we can't use the device id.

I could use the websocket, but that is not really the approach I would like to do.

There may be a rest call similar to the call I make to set values, but I have not been able to figure it out and it still needs the device id in the link

gradius-v commented 10 months ago

I came across this https://github.com/ammarzuberi/pyanova-api/issues/2 and this https://github.com/bmedicke/anova.py/issues/1 I got my secret by using a rooted Android phone and an old Anova app version 3.2.13 (and then updating the app via Playstore, because disconnecting the cooker from the app changes the secret and I could't find it in the files of the latest Anova app version).

https://api.anovaculinary.com/cookers/anova%20f56-a814c1638c0?secret=XXXXXXXXXX gives me this: {"status":{"cooker_id":"anova f56-a814c1638c0","firmware_version":"ver 6.1.1","is_running":false,"current_temp":25.2,"target_temp":49,"temp_unit":"c","speaker_mode":true,"is_timer_running":false}}

edit: I get this when the coocker is actually cooking. {"status":{"cooker_id":"anova f56-a814c1638c0","firmware_version":"ver 6.1.1","is_running":true,"current_temp":49,"target_temp":49,"temp_unit":"c","speaker_mode":true,"current_job_id":"14f2f7d8-7152-4bd6-887d-8441d721205b","current_job":{"job_id":"14f2f7d8-7152-4bd6-887d-8441d721205b","job_type":"manual_cook","job_stage":"cooking","is_running":true,"target_temp":49,"temp_unit":"c","job_start_time":"2023-06-18T11:01:01.918125Z","job_update_time":"0001-01-01T00:00:00Z","max_circulation_interval":300,"threshold_temp":4.444444444444444},"is_timer_running":false}}

Friday13th87 commented 9 months ago

any updates here? I have the same anova stick, which is not working as well.

Lash-L commented 9 months ago

Seems like right now the only real way is to get the secret, but I don't feel like that is a real approach as there are a lot of different ways of getting the secret that don't always work.

Realistically, I could potentially use the websocket connection - but it's kind of difficult to figure out without having one of those devices myself.

I'm always open to contributions and potentially I can try something's out when I have time. But I have another integration that takes most of my hobby time

prenda commented 9 months ago

I am having the same issue

madtraxx18 commented 9 months ago

Seems like right now the only real way is to get the secret, but I don't feel like that is a real approach as there are a lot of different ways of getting the secret that don't always work.

Realistically, I could potentially use the websocket connection - but it's kind of difficult to figure out without having one of those devices myself.

I'm always open to contributions and potentially I can try something's out when I have time. But I have another integration that takes most of my hobby time

Where are you located?

RestNPizza commented 9 months ago

Same issue here but I have one of the new models...the Anova Precision Cooker 3. How would we get support for this new model added?

Lash-L commented 8 months ago

Where are you located?

@madtraxx18 Southern United states

Same issue here but I have one of the new models...the Anova Precision Cooker 3. How would we get support for this new model added?

I can try to give some love to this integration this week/next maybe. I spend most of my time on my Roborock integration as that has a far larger amount of users. Realistically, another person willing to develop would go a long way for this integration

RestNPizza commented 8 months ago

Where are you located?

@madtraxx18 Southern United states

Same issue here but I have one of the new models...the Anova Precision Cooker 3. How would we get support for this new model added?

I can try to give some love to this integration this week/next maybe. I spend most of my time on my Roborock integration as that has a far larger amount of users. Realistically, another person willing to develop would go a long way for this integration

Thanks! I personally don't know how to do it or else I would jump in and help. Let me know if there's any info you need from me regarding the anova precision cooker 3.0. I've included a screenshot of the info in the app. I wasn't sure if the device ID should be secret so I hid it but it's a 22 character alpha numerical ID (random letters and numbers - doesn't say anova in it like a lot of other users showed for their older devices)Screenshot_20230809_144658_Anova.jpg

parnas commented 7 months ago

I need to figure out a way to get the status for these devices since we can't use the device id.

I could use the websocket, but that is not really the approach I would like to do.

There may be a rest call similar to the call I make to set values, but I have not been able to figure it out and it still needs the device id in the link

Hi. I've checked how the app works with my first gen Annova (using man in the middle proxy and Android app). And it is indeed just using websocket to get the data, no rest calls, unfortunately.

And Bluetooth, of course.

Is there already something in HomeAssistant to handle incoming websockets? A quick glance gave no results.

bngtzn commented 5 months ago

I'm having the same model and the same issue.

Would love to help with logs and testing etc. Unfortunately not a coder..

i-93 commented 5 months ago

+1

Same device, same issue.

vyper144 commented 4 months ago

Same issue. Model A3.

JohnnyCarcinogen commented 4 months ago

Same Issue. Same model. IMG_4922

Lash-L commented 4 months ago

Hello everyone - sorry for such a long period without any kind of update on this. I was able to decompile the underlying react code inside the decompiled Java apk. This means I was able to get all of the websocket commands, and how all of the different devices will respond.

So what does this mean?

I am currently working on implementing it in my python package. Once that is done, I will implement it in my Core integration. It will be a significant change as I am moving from REST calls to Websocket connections. aka cloud_polling to cloud_push. My goal is to have the entire refactor done this month, but then it also needs to be approved for use in Core. So you will probably be able to use it either in 2024.2 or 2024.3, but it all depends on the review cycle.

mcolyer commented 3 months ago

I'm looking at a similar but more complicated question: Support the the Precision Oven, their combi-steam oven product. I'm not seeing anything at all with debug for this.

@Lash-L sorry for not replying earlier (life intervened). I'm taking another look at adding APO support now. I need to extend anova_wifi a bit and am wondering if I should hold off on your refactor? (APO only uses websockets for commands so it need to support cloud_polling)

Lash-L commented 2 months ago

Okay everyone sorry for the long delay!

PR is up so fingers crossed it gets merged before the end of the month and all of you have been very patiently waiting will get support in 2024.3

Following this getting merged, I will add support for controlling the device.

Bleasel commented 2 months ago

I have the same version of the Anova Precision Cooker (Wifi plus Bluetooth). I also have a Nano as well (bluetooth only). Neither will connect to my iPhone 13 Max by Bluetooth., and neither shows up as bluetooth device. However using an old iPad (mini4 running 15.8.1), both devices are seen as discoverable, and I can connect both devices (simultaneously) to the iPad , and once connected I can connect the Wifi of the Anova Precision Cooker Wifi to the 2.4G network, and then it shows up on the iPhone 13 Max. At this stage my assumption is that later Apple devices have a version of Bluetooth that is not compatible with the earlier Precision cookers.

doctorkb commented 3 weeks ago

Okay everyone sorry for the long delay!

PR is up so fingers crossed it gets merged before the end of the month and all of you have been very patiently waiting will get support in 2024.3

Following this getting merged, I will add support for controlling the device.

Looking at the PR, it appears to be waiting for you to address the reviewers' concerns...

Lash-L commented 3 weeks ago

Okay everyone sorry for the long delay! PR is up so fingers crossed it gets merged before the end of the month and all of you have been very patiently waiting will get support in 2024.3 Following this getting merged, I will add support for controlling the device.

Looking at the PR, it appears to be waiting for you to address the reviewers' concerns...

If you check the comments - none of them are outstanding on my side

doctorkb commented 3 weeks ago

I have the same version of the Anova Precision Cooker (Wifi plus Bluetooth). I also have a Nano as well (bluetooth only). Neither will connect to my iPhone 13 Max by Bluetooth., and neither shows up as bluetooth device. However using an old iPad (mini4 running 15.8.1), both devices are seen as discoverable, and I can connect both devices (simultaneously) to the iPad , and once connected I can connect the Wifi of the Anova Precision Cooker Wifi to the 2.4G network, and then it shows up on the iPhone 13 Max. At this stage my assumption is that later Apple devices have a version of Bluetooth that is not compatible with the earlier Precision cookers.

I have an iPhone 14 Pro Max and have no trouble configuring my Anova Precision Cooker (model A3) that is several years old. I haven't ever tried to just use Bluetooth, but I can use this iPhone to configure the wifi (which presumably connects via Bluetooth).

I think the app talks directly to the device, without actually pairing through the iOS settings.

doctorkb commented 3 weeks ago

Okay everyone sorry for the long delay! PR is up so fingers crossed it gets merged before the end of the month and all of you have been very patiently waiting will get support in 2024.3 Following this getting merged, I will add support for controlling the device.

Looking at the PR, it appears to be waiting for you to address the reviewers' concerns...

If you check the comments - none of them are outstanding on my side

I did try to understand it, and noticed you did a lot of work after their comments, so the only thing I could think of is that you needed to click a "done" button or something for them to re-review. 🤷‍♂️

Lash-L commented 3 weeks ago

Okay everyone sorry for the long delay! PR is up so fingers crossed it gets merged before the end of the month and all of you have been very patiently waiting will get support in 2024.3 Following this getting merged, I will add support for controlling the device.

Looking at the PR, it appears to be waiting for you to address the reviewers' concerns...

If you check the comments - none of them are outstanding on my side

I did try to understand it, and noticed you did a lot of work after their comments, so the only thing I could think of is that you needed to click a "done" button or something for them to re-review. 🤷‍♂️

Yeah there is - but that was done a bit ago: image

For future reference, as github PRs can be a bit complicated to understand, at the top of the page, there is a section on the PR that says reviewers and you can see that it is pending from both of the reviewers. If they approved or if it was waiting for me to update something there would be a different icon.

doctorkb commented 3 weeks ago

Yeah there is - but that was done a bit ago:

So the bit at the bottom about those requested changes is waiting on the reviewers to mark as resolved? image

Lash-L commented 3 weeks ago

Yeah there is - but that was done a bit ago:

So the bit at the bottom about those requested changes is waiting on the reviewers to mark as resolved? image

Yeah that just means that they requested changes at one point - but have not yet approved the PR. It stays there until the PR is approved by them.

skorpioskorpio commented 2 weeks ago

Same issue with A3s BTW, I have several. I do see that you need to sign in with a non-canned email address for this to even have a shot (no google or facebook). They were originally marketed as "Controllable with Alexa (coming soon)". Soon never came. Fingers crossed that this is that "soon" from somewhere else, though 5 years later is hardly soon :) .

Kernald commented 1 week ago

Just putting my name down - I have a Precision 3.0 cooker (model A7), happy to help in any way that I can once the PR is merged. For what it's worth, my device ID is a bit different than the ones posted above for the A3 model - it's a 22 characters long string starting with two digits and then just uppercase and lowercase letters.

Lash-L commented 1 week ago

For anyone coming across this - I appreciate you notifying that you have the same issue, but unfortunately I cannot do anything until the outstanding PR gets approved and merged. That should add support for all the sous vides you guys are asking about.