simbaja / ha_gehome

GE Home Appliances (SmartHQ) for Home Assistant
MIT License
333 stars 80 forks source link

One oven not showing up #12

Closed TKpizza closed 3 years ago

TKpizza commented 3 years ago

I'm having an issue connecting my second oven.

I first installed the integration and both ovens shower up but one was unavailable. So I deleted the integration and tried again and now it only shows one oven and it says integration not loaded check logs.

This is the error code I get 2021-06-21 23:42:51 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved Traceback (most recent call last): File "/config/custom_components/ge_home/update_coordinator.py", line 285, in on_device_initial_update self.maybe_add_appliance_api(appliance) File "/config/custom_components/ge_home/update_coordinator.py", line 121, in maybe_add_appliance_api api.build_entities_list() File "/config/custom_components/ge_home/devices/base.py", line 112, in build_entities_list e for e in self.get_all_entities() File "/config/custom_components/ge_home/devices/oven.py", line 34, in get_all_entities cooktop_config: ErdCooktopConfig = self.appliance.get_erd_value(ErdCode.COOKTOP_CONFIG) File "/usr/local/lib/python3.8/site-packages/gehomesdk/ge_appliance.py", line 119, in get_erd_value return self._property_cache[erd_code] KeyError: <ErdCode.COOKTOP_CONFIG: '0x551c'>

simbaja commented 3 years ago

Can you use the sdk so we can get some debug logs for this? I'm guessing that perhaps the cooktop config doesn't match what we've seen so far (this is all reverse engineered, no public api is available, so we may be wrong at times).

TKpizza commented 3 years ago

I'm not really sure how to use the sdk. Can you point me in the direction where I can learn how to use it?

simbaja commented 3 years ago

sure:

  1. clone the gehome repository
  2. open the folder in vscode
  3. create a venv in vscode (python -m venv .venv)
  4. activate the venv (should be able to activate by trying to open the activate.ps1 script in the new venv folder). It will show (venv) as part of the integrated shell command line
  5. install the gehome sdk locally (pip3 install -e .)
  6. create a new file called secrets.py under the examples folder. In this file, put two lines:
USERNAME = {your username}
PASSWORD = {your password}

replacing the {your username} and {your password} with your user account details

  1. click on the websocket_example.py to open it
  2. click run -> start debugging. Make sure that it's got the right interpreter (from your venv) and you can select the "single file" option

That should get you into the sdk and once you hit run, it'll enumerate things and give more detailed messages that we can the use to diagnose the issue. Hope this helps.

TKpizza commented 3 years ago

im running into this error:

Traceback (most recent call last): File "c:\Users\Sklahr\Downloads\gehome-master\examples\websocket_example.py", line 15, in from gehomesdk import ( File "c:\users\sklahr\downloads\gehome-master\gehomesdk__init.py", line 6, in from .clients import * File "c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\init__.py", line 17, in from .base_client import GeBaseClient File "c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\base_client.py", line 4, in from gehomesdk.clients.async_login_flows import async_get_oauth2_token, async_refresh_oauth2_token File "c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\async_login_flows.py", line 2, in from lxml import etree ModuleNotFoundError: No module named 'lxml'

simbaja commented 3 years ago

Should be able to do a pip install lxml to clear that one, also might need to do pip install slixmpp to resolve a few others.

TKpizza commented 3 years ago

Now i get this

2021-07-20 12:48:32,895 DEBUG Using selector: SelectSelector c:\Users\Sklahr\Downloads\gehome-master\examples\websocket_example.py:74: DeprecationWarning: The object should be created within an async function session = aiohttp.ClientSession() 2021-07-20 12:48:32,897 DEBUG Getting OAuth2 token 2021-07-20 12:48:32,942 DEBUG Client changed state: GeClientState.INITIALIZING to GeClientState.AUTHORIZING_OAUTH 2021-07-20 12:48:33,127 ERROR Task exception was never retrieved future: <Task finished name='Task-1' coro=<GeBaseClient.async_get_credentials_and_run() done, defined at c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\base_client.py:114> exception=TypeError('expected string or bytes-like object')> Traceback (most recent call last): File "c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\base_client.py", line 116, in async_get_credentials_and_run await self.async_get_credentials(session) File "c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\base_client.py", line 187, in async_get_credentials await self.async_do_full_login_flow() File "c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\base_client.py", line 191, in async_do_full_login_flow self.credentials = await self._async_do_full_login_flow() File "c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\websocket_client.py", line 63, in _async_do_full_login_flow await self._async_get_oauth2_token() File "c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\base_client.py", line 214, in _async_get_oauth2_token oauth_token = await async_get_oauth2_token(self._session, self.account_username, self.account_password) File "c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\async_login_flows.py", line 131, in async_get_oauth2_token code = await async_get_authorization_code(session, account_username, account_password) File "c:\users\sklahr\downloads\gehome-master\gehomesdk\clients\async_login_flows.py", line 40, in async_get_authorization_code clean_username = re.sub(email_regex, r'\1', account_username) File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.1776.0_x64__qbz5n2kfra8p0\lib\re.py", line 210, in sub return _compile(pattern, flags).sub(repl, string, count) TypeError: expected string or bytes-like object

simbaja commented 3 years ago

Did you create a secrets.py file under the examples? The values should be quoted (apologize for not making it clear before), so something like:

USERNAME = "test@test.com" PASSWORD = "password1234"

I'm guessing you may have used the {} in there, which would have actually created a dictionary object. Again, sorry for not being more clear.

TKpizza commented 3 years ago

is this what im supposed to be trying to get?

(.venv) PS C:\Users\Sklahr\Downloads\gehome-master> & c:/Users/Sklahr/Downloads/gehome-master/.venv/Scripts/python.exe c:/Users/Sklahr/Downloads/gehome-master/examples/websocket_example.py 2021-07-20 12:58:20,068 DEBUG Using selector: SelectSelector c:\Users\Sklahr\Downloads\gehome-master\examples\websocket_example.py:74: DeprecationWarning: The object should be created within an async function session = aiohttp.ClientSession() 2021-07-20 12:58:20,070 DEBUG Getting OAuth2 token 2021-07-20 12:58:20,123 DEBUG Client changed state: GeClientState.INITIALIZING to GeClientState.AUTHORIZING_OAUTH 2021-07-20 12:58:21,218 DEBUG Getting WS credentials 2021-07-20 12:58:21,219 DEBUG Client changed state: GeClientState.AUTHORIZING_OAUTH to GeClientState.AUTHORIZING_CLIENT 2021-07-20 12:58:21,345 INFO Starting GE Appliances client 2021-07-20 12:58:21,445 DEBUG Client changed state: GeClientState.AUTHORIZING_CLIENT to GeClientState.CONNECTING 2021-07-20 12:58:21,500 DEBUG client - state = CONNECTING 2021-07-20 12:58:21,617 DEBUG client - event = connection_made(<asyncio.sslproto._SSLProtocolTransport object at 0x000001D6C7DC55E0>) 2021-07-20 12:58:21,618 DEBUG client ! failing CONNECTING WebSocket connection with code 1006 2021-07-20 12:58:21,618 DEBUG client x closing TCP connection 2021-07-20 12:58:21,640 DEBUG client - event = eof_received() 2021-07-20 12:58:21,640 DEBUG client - event = connection_lost(None) 2021-07-20 12:58:21,640 DEBUG client - state = CLOSED 2021-07-20 12:58:21,641 DEBUG client x code = 1006, reason = [no reason] 2021-07-20 12:58:21,641 WARNING Unhandled exception on first connect attempt: module 'secrets' has no attribute 'token_bytes', disconnecting
2021-07-20 12:58:21,642 DEBUG Waiting before reconnecting 2021-07-20 12:58:21,642 DEBUG Client changed state: GeClientState.CONNECTING to GeClientState.DROPPED 2021-07-20 12:58:21,642 DEBUG Client changed state: GeClientState.DROPPED to GeClientState.WAITING 2021-07-20 12:58:23,663 DEBUG Refreshing authentication before reconnecting 2021-07-20 12:58:23,665 DEBUG Refreshing OAuth2 token 2021-07-20 12:58:23,668 DEBUG Client changed state: GeClientState.WAITING to GeClientState.AUTHORIZING_OAUTH 2021-07-20 12:58:23,898 DEBUG Getting WS credentials 2021-07-20 12:58:23,901 DEBUG Client changed state: GeClientState.AUTHORIZING_OAUTH to GeClientState.AUTHORIZING_CLIENT 2021-07-20 12:58:23,969 INFO Disconnecting 2021-07-20 12:58:23,970 DEBUG Client changed state: GeClientState.AUTHORIZING_CLIENT to GeClientState.DISCONNECTING 2021-07-20 12:58:23,970 DEBUG Client changed state: GeClientState.DISCONNECTING to GeClientState.DISCONNECTED

simbaja commented 3 years ago

Closer. We've run into this one before, so hopefully one more step will get you going.

Please rename the "secrets.py" file to "secret.py". Then in the webclient_example.py, change the reference to examples.secrets to examples.secret (line 13). Hopefully that'll get it going.

TKpizza commented 3 years ago

ok the code is running now. and it looks like its finding the double oven, but im not sure about the single oven. what do i do now?

BTW thanks so much for your help!

simbaja commented 3 years ago

Fantastic. Can you post the output from what it's generating so we can see what it's seeing? Also, do you have both ovens listed in the SmartHQ app?

TKpizza commented 3 years ago

I have both ovens listed. the output keeps running do you want me to send all of it?

simbaja commented 3 years ago

Yep, just kill it after the initial bout of activity and send what it generated. It keeps going so that we can monitor changes and such and figure out what is happening as we hit buttons and such.

TKpizza commented 3 years ago

Here you go 2021-07-20 13:27:41,672 DEBUG Using selector: SelectSelector c:\Users\Sklahr\Downloads\gehome-master\examples\websocket_example.py:74: DeprecationWarning: The object should be created within an async function session = aiohttp.ClientSession() 2021-07-20 13:27:41,679 DEBUG Getting OAuth2 token 2021-07-20 13:27:41,725 DEBUG Client changed state: GeClientState.INITIALIZING to GeClientState.AUTHORIZING_OAUTH 2021-07-20 13:27:42,786 DEBUG Getting WS credentials 2021-07-20 13:27:42,788 DEBUG Client changed state: GeClientState.AUTHORIZING_OAUTH to GeClientState.AUTHORIZING_CLIENT 2021-07-20 13:27:42,937 INFO Starting GE Appliances client 2021-07-20 13:27:42,976 DEBUG Client changed state: GeClientState.AUTHORIZING_CLIENT to GeClientState.CONNECTING 2021-07-20 13:27:43,033 DEBUG client - state = CONNECTING 2021-07-20 13:27:43,121 DEBUG client - event = connection_made(<asyncio.sslproto._SSLProtocolTransport object at 0x000001BE578916A0>) 2021-07-20 13:27:43,122 DEBUG client > GET /?access_token=ue1cp31e0i1mwszr8dq6gzsrbemcrg98 HTTP/1.1 2021-07-20 13:27:43,122 DEBUG client > Headers([('Host', 'ws-us-east-1.brillion.geappliances.com'), ('Upgrade', 'websocket'), ('Connection', 'Upgrade'), ('Sec-WebSocket-Key', 'wwQ77T2+DiaENWRrzgVedg=='), ('Sec-WebSocket-Version', '13'), ('Sec-WebSocket-Extensions', 'permessage-deflate; client_max_window_bits'), ('User-Agent', 'Python/3.9 websockets/9.1')]) 2021-07-20 13:27:43,366 DEBUG client - event = data_received(<212 bytes>) 2021-07-20 13:27:43,367 DEBUG client < HTTP/1.1 101 Switching Protocols 2021-07-20 13:27:43,368 DEBUG client < Headers([('Date', 'Tue, 20 Jul 2021 17:27:43 GMT'), ('Connection', 'upgrade'), ('upgrade', 'websocket'), ('sec-websocket-accept', '2bIrIYCAAdVDqpU9XmxV4xpoIE0='), ('sec-websocket-extensions', 'permessage-deflate')]) 2021-07-20 13:27:43,369 DEBUG client - state = OPEN 2021-07-20 13:27:43,371 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#subscribe", "action": "subscribe", "resources": ["/appliance//erd/"]}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,373 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#api", "action": "api", "host": "api.brillion.geappliances.com", "method": "GET", "path": "/v1/appliance", "id": "List-appliances"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,376 DEBUG Client changed state: GeClientState.CONNECTING to GeClientState.CONNECTED 2021-07-20 13:27:43,438 DEBUG client - event = data_received(<49 bytes>) 2021-07-20 13:27:43,440 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#subscribe","success":true}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,623 DEBUG client - event = data_received(<16 bytes>) 2021-07-20 13:27:43,624 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#connect","success":true}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,694 DEBUG client - event = data_received(<256 bytes>) 2021-07-20 13:27:43,694 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#api","id":"List-appliances","request":{"host":"api.brillion.geappliances.com","method":"GET","path":"/v1/appliance"},"success":true,"code":200,"body":{"kind":"appliance#applianceList","userId":"54325g8m1gszbyw","items":[{"applianceId":"D828C9562025","type":"Oven","brand":"Unknown","jid":"d828c9562025_54325g8m1gszbyw","nickname":"Double Oven","online":"ONLINE"},{"applianceId":"D828C9572971","type":"Oven","brand":"Unknown","jid":"d828c9572971_54325g8m1gszbyw","nickname":"Single Oven","online":"ONLINE"}]}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,702 DEBUG D828C9562025 marked available 2021-07-20 13:27:43,703 DEBUG Adding appliance D828C9562025 2021-07-20 13:27:43,703 DEBUG Requesting update for client D828C9562025 2021-07-20 13:27:43,704 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#api", "action": "api", "host": "api.brillion.geappliances.com", "method": "GET", "path": "/v1/appliance/D828C9562025/erd", "id": "D828C9562025-allErd"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,705 DEBUG Requesting features for client D828C9562025 2021-07-20 13:27:43,706 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#api", "action": "api", "host": "api.brillion.geappliances.com", "method": "GET", "path": "/v1/appliance/D828C9562025/feature", "id": "Request-features"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,712 DEBUG D828C9572971 marked available 2021-07-20 13:27:43,712 DEBUG Adding appliance D828C9572971 2021-07-20 13:27:43,713 DEBUG Requesting update for client D828C9572971 2021-07-20 13:27:43,714 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#api", "action": "api", "host": "api.brillion.geappliances.com", "method": "GET", "path": "/v1/appliance/D828C9572971/erd", "id": "D828C9572971-allErd"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,715 DEBUG Requesting features for client D828C9572971 2021-07-20 13:27:43,716 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#api", "action": "api", "host": "api.brillion.geappliances.com", "method": "GET", "path": "/v1/appliance/D828C9572971/feature", "id": "Request-features"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,718 DEBUG Registering update callback for GeAppliance(D828C9562025) (Unknown Type) 2021-07-20 13:27:43,718 DEBUG Registering update callback for GeAppliance(D828C9572971) (Unknown Type) 2021-07-20 13:27:43,810 DEBUG client - event = data_received(<52 bytes>) 2021-07-20 13:27:43,810 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"resource":"/appliance//erd/","kind":"websocket#subscription","success":true,"change":"ADDED"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,879 DEBUG client - event = data_received(<409 bytes>) 2021-07-20 13:27:43,881 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#api","id":"D828C9562025-allErd","request":{"host":"api.brillion.geappliances.com","method":"GET","path":"/v1/appliance/D828C9562025/erd"},"success":true,"code":200,"body":{"kind":"appliance#erdList","userId":"54325g8m1gszbyw","applianceId":"D828C9562025","items":[{"erd":"0x0001","value":"0C5A544439304453534E31535300000000000000000000000000000000000000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0002","value":"0B534E5652313334333032510000000000000000000000000000000000000000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0006","value":"00","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0007","value":"00","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0008","value":"07","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0009","value":"00","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x000A","value":"03","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0100","value":"0000024D","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0101","value":"00000000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0105","value":"00","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0106","value":"00000419","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0107","value":"00000000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x0108","value":"00","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5000","value":"01","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5001","value":"01","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5003","value":"01","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5007","value":"08D8","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5008","value":"022600AA","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5100","value":"00000000000000000000000000","time":"2021-07-20T17:17:09.738Z"},{"erd":"0x5101","value":"00","time":"2021-07-20T17:17:09.757Z"},{"erd":"0x5102","value":"0000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5103","value":"0000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5104","value":"0000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5105","value":"0000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5106","value":"00","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5107","value":"00","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5108","value":"FFFF","time":"2021-07-19T23:07:45.806Z"},{"erd":"0x5109","value":"0000","time":"2021-07-20T17:17:16.584Z"},{"erd":"0x510A","value":"01","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x510B","value":"0000000E6673399CBCCF","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x510D","value":"00DA","time":"2021-07-20T17:27:17.926Z"},{"erd":"0x5113","value":"00014000000000000000000000000000000000000000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5200","value":"00000000000000000000000000","time":"2021-07-19T23:42:31.156Z"},{"erd":"0x5201","value":"00","time":"2021-07-19T23:42:31.191Z"},{"erd":"0x5202","value":"0000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5204","value":"0000","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5206","value":"00","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x5208","value":"FFFF","time":"2021-07-19T23:42:31.191Z"},{"erd":"0x5209","value":"0000","time":"2021-07-19T23:42:31.768Z"},{"erd":"0x520A","value":"01","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x520B","value":"0000000E6673399CBCCF","time":"2021-07-18T23:06:57.339Z"},{"erd":"0x520D","value":"0064","time":"2021-07-20T03:23:21.919Z"},{"erd":"0x5213","value":"00014000000000000000000000000000000000000000","time":"2021-07-18T23:06:57.339Z"}]}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,892 DEBUG Setting ErdCode.MODEL_NUMBER to ZTD90DSSN1SS 2021-07-20 13:27:43,893 DEBUG Setting ErdCode.SERIAL_NUMBER to SNVR134302Q 2021-07-20 13:27:43,894 DEBUG Setting ErdCode.CLOCK_FORMAT to ErdClockFormat.TWELVE_HOUR 2021-07-20 13:27:43,895 DEBUG Setting ErdCode.TEMPERATURE_UNIT to ErdMeasurementUnits.IMPERIAL 2021-07-20 13:27:43,897 DEBUG Setting ErdCode.APPLIANCE_TYPE to ErdApplianceType.OVEN 2021-07-20 13:27:43,898 DEBUG Setting ErdCode.SABBATH_MODE to False 2021-07-20 13:27:43,898 DEBUG Setting ErdCode.SOUND_LEVEL to ErdSoundLevel.HIGH 2021-07-20 13:27:43,901 DEBUG Setting ErdCode.WIFI_MODULE_SW_VERSION to 0.0.2.77 2021-07-20 13:27:43,902 DEBUG Setting ErdCode.WIFI_MODULE_SW_VERSION_AVAILABLE to 0.0.0.0 2021-07-20 13:27:43,903 DEBUG Setting ErdCode.APPLIANCE_UPDATING to False 2021-07-20 13:27:43,903 DEBUG Setting ErdCode.LCD_SW_VERSION to 0.0.4.25 2021-07-20 13:27:43,905 DEBUG Setting ErdCode.LCD_SW_VERSION_AVAILABLE to 0.0.0.0 2021-07-20 13:27:43,906 DEBUG Setting ErdCode.LCD_UPDATING to False 2021-07-20 13:27:43,906 DEBUG Setting ErdCode.HOUR_12_SHUTOFF_ENABLED to True 2021-07-20 13:27:43,907 DEBUG Setting ErdCode.END_TONE to ErdEndTone.REPEATED_BEEP 2021-07-20 13:27:43,908 DEBUG Setting ErdCode.CONVECTION_CONVERSION to True 2021-07-20 13:27:43,909 DEBUG Setting ErdCode.OVEN_CONFIGURATION to OvenConfiguration(has_knob=False, has_warming_drawer=False, has_light_bar=False, has_lower_oven=True, has_lower_oven_kitchen_timer=True, raw_value='08D8') 2021-07-20 13:27:43,909 DEBUG Setting ErdCode.OVEN_MODE_MIN_MAX_TEMP to OvenRanges(lower=170, upper=550) 2021-07-20 13:27:43,911 DEBUG Setting ErdCode.UPPER_OVEN_COOK_MODE to Off 2021-07-20 13:27:43,912 DEBUG Setting ErdCode.UPPER_OVEN_CURRENT_STATE to Off 2021-07-20 13:27:43,912 DEBUG Setting ErdCode.UPPER_OVEN_DELAY_TIME_REMAINING to 0:00:00 2021-07-20 13:27:43,913 DEBUG Setting ErdCode.UPPER_OVEN_PROBE_DISPLAY_TEMP to 0 2021-07-20 13:27:43,914 DEBUG Setting ErdCode.UPPER_OVEN_COOK_TIME_REMAINING to 0:00:00 2021-07-20 13:27:43,915 DEBUG Setting ErdCode.UPPER_OVEN_KITCHEN_TIMER to 0:00:00 2021-07-20 13:27:43,916 DEBUG Setting ErdCode.UPPER_OVEN_USER_TEMP_OFFSET to 0 2021-07-20 13:27:43,917 DEBUG Setting ErdCode.UPPER_OVEN_PROBE_PRESENT to False 2021-07-20 13:27:43,917 DEBUG Got timespan value of 65535. Treating as None. 2021-07-20 13:27:43,918 DEBUG Setting ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE to 0 2021-07-20 13:27:43,918 DEBUG Setting ErdCode.UPPER_OVEN_REMOTE_ENABLED to True 2021-07-20 13:27:43,919 DEBUG Setting ErdCode.UPPER_OVEN_AVAILABLE_COOK_MODES to {<ErdOvenCookMode.BAKE_NOOPTION: 1>, <ErdOvenCookMode.CONVMULTIBAKE_NOOPTION: 27>, <ErdOvenCookMode.CONVROAST_NOOPTION: 36>, <ErdOvenCookMode.CONVBAKE_NOOPTION: 18>} 2021-07-20 13:27:43,920 DEBUG Setting ErdCode.UPPER_OVEN_RAW_TEMPERATURE to 218 2021-07-20 13:27:43,921 DEBUG Setting 0x5113 to b'\x00\x01@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
2021-07-20 13:27:43,922 DEBUG Setting ErdCode.LOWER_OVEN_COOK_MODE to Off 2021-07-20 13:27:43,922 DEBUG Setting ErdCode.LOWER_OVEN_CURRENT_STATE to Off 2021-07-20 13:27:43,923 DEBUG Setting ErdCode.LOWER_OVEN_DELAY_TIME_REMAINING to 0:00:00 2021-07-20 13:27:43,923 DEBUG Setting ErdCode.LOWER_OVEN_COOK_TIME_REMAINING to 0:00:00 2021-07-20 13:27:43,924 DEBUG Setting ErdCode.LOWER_OVEN_USER_TEMP_OFFSET to 0 2021-07-20 13:27:43,924 DEBUG Got timespan value of 65535. Treating as None. 2021-07-20 13:27:43,925 DEBUG Setting ErdCode.LOWER_OVEN_DISPLAY_TEMPERATURE to 0 2021-07-20 13:27:43,925 DEBUG Setting ErdCode.LOWER_OVEN_REMOTE_ENABLED to True 2021-07-20 13:27:43,926 DEBUG Setting ErdCode.LOWER_OVEN_AVAILABLE_COOK_MODES to {<ErdOvenCookMode.BAKE_NOOPTION: 1>, <ErdOvenCookMode.CONVMULTIBAKE_NOOPTION: 27>, <ErdOvenCookMode.CONVROAST_NOOPTION: 36>, <ErdOvenCookMode.CONVBAKE_NOOPTION: 18>} 2021-07-20 13:27:43,926 DEBUG Setting ErdCode.LOWER_OVEN_RAW_TEMPERATURE to 100 2021-07-20 13:27:43,927 DEBUG Setting 0x5213 to b'\x00\x01@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
2021-07-20 13:27:43,927 DEBUG Got initial appliance type for GeAppliance(D828C9562025) (ErdApplianceType.OVEN) 2021-07-20 13:27:43,928 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.MODEL_NUMBER, ErdCode.SERIAL_NUMBER, ErdCode.CLOCK_FORMAT, ErdCode.TEMPERATURE_UNIT, ErdCode.APPLIANCE_TYPE, ErdCode.SABBATH_MODE, ErdCode.SOUND_LEVEL, ErdCode.WIFI_MODULE_SW_VERSION, ErdCode.WIFI_MODULE_SW_VERSION_AVAILABLE, ErdCode.APPLIANCE_UPDATING, ErdCode.LCD_SW_VERSION, ErdCode.LCD_SW_VERSION_AVAILABLE, ErdCode.LCD_UPDATING, ErdCode.HOUR_12_SHUTOFF_ENABLED, ErdCode.END_TONE, ErdCode.CONVECTION_CONVERSION, ErdCode.OVEN_CONFIGURATION, ErdCode.OVEN_MODE_MIN_MAX_TEMP, ErdCode.UPPER_OVEN_COOK_MODE, ErdCode.UPPER_OVEN_CURRENT_STATE, ErdCode.UPPER_OVEN_DELAY_TIME_REMAINING, ErdCode.UPPER_OVEN_PROBE_DISPLAY_TEMP, ErdCode.UPPER_OVEN_COOK_TIME_REMAINING, ErdCode.UPPER_OVEN_KITCHEN_TIMER, ErdCode.UPPER_OVEN_USER_TEMP_OFFSET, ErdCode.UPPER_OVEN_PROBE_PRESENT, ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE, ErdCode.UPPER_OVEN_REMOTE_ENABLED, ErdCode.UPPER_OVEN_AVAILABLE_COOK_MODES, ErdCode.UPPER_OVEN_RAW_TEMPERATURE, 0x5113, ErdCode.LOWER_OVEN_COOK_MODE, ErdCode.LOWER_OVEN_CURRENT_STATE, ErdCode.LOWER_OVEN_DELAY_TIME_REMAINING, ErdCode.LOWER_OVEN_COOK_TIME_REMAINING, ErdCode.LOWER_OVEN_USER_TEMP_OFFSET, ErdCode.LOWER_OVEN_DISPLAY_TEMPERATURE, ErdCode.LOWER_OVEN_REMOTE_ENABLED, ErdCode.LOWER_OVEN_AVAILABLE_COOK_MODES, ErdCode.LOWER_OVEN_RAW_TEMPERATURE, 0x5213 2021-07-20 13:27:43,930 DEBUG client - event = data_received(<81 bytes>) 2021-07-20 13:27:43,932 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN) 2021-07-20 13:27:43,933 INFO Turning on the oven! 2021-07-20 13:27:43,934 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#api", "action": "api", "host": "api.brillion.geappliances.com", "method": "POST", "path": "/v1/appliance/D828C9562025/erd/0x5100", "id": "D828C9562025-setErd-0x5100", "body": {"kind": "appliance#erdListEntry", "userId": "54325g8m1gszbyw", "applianceId": "D828C9562025", "erd": "0x5100", "value": "01015e00000000000000000000", "ackTimeout": 10, "delay": 0}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,935 INFO Set the timer! 2021-07-20 13:27:43,936 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#api", "action": "api", "host": "api.brillion.geappliances.com", "method": "POST", "path": "/v1/appliance/D828C9562025/erd/0x5105", "id": "D828C9562025-setErd-0x5105", "body": {"kind": "appliance#erdListEntry", "userId": "54325g8m1gszbyw", "applianceId": "D828C9562025", "erd": "0x5105", "value": "0000002d", "ackTimeout": 10, "delay": 0}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,937 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#api","id":"Request-features","request":{"host":"api.brillion.geappliances.com","method":"GET","path":"/v1/appliance/D828C9572971/feature"},"success":true,"code":200,"body":{"kind":"appliance#applianceFeature","userId":"54325g8m1gszbyw","applianceId":"D828C9572971","features":["COOKING_V1_UPPER_OVEN_FOUNDATION"]}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,939 DEBUG Received features ['COOKING_V1_UPPER_OVEN_FOUNDATION'] for D828C9572971 2021-07-20 13:27:43,942 DEBUG client - event = data_received(<28 bytes>) 2021-07-20 13:27:43,943 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#api","id":"Request-features","request":{"host":"api.brillion.geappliances.com","method":"GET","path":"/v1/appliance/D828C9562025/feature"},"success":true,"code":200,"body":{"kind":"appliance#applianceFeature","userId":"54325g8m1gszbyw","applianceId":"D828C9562025","features":["COOKING_V1_LOWER_OVEN_FOUNDATION","COOKING_V1_UPPER_OVEN_FOUNDATION"]}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,944 DEBUG Received features ['COOKING_V1_LOWER_OVEN_FOUNDATION', 'COOKING_V1_UPPER_OVEN_FOUNDATION'] for D828C9562025
2021-07-20 13:27:43,965 DEBUG client - event = data_received(<318 bytes>) 2021-07-20 13:27:43,966 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#api","id":"D828C9572971-allErd","request":{"host":"api.brillion.geappliances.com","method":"GET","path":"/v1/appliance/D828C9572971/erd"},"success":true,"code":200,"body":{"kind":"appliance#erdList","userId":"54325g8m1gszbyw","applianceId":"D828C9572971","items":[{"erd":"0x0001","value":"0C5A4B5339304453534E31535300000000000000000000000000000000000000","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0002","value":"0B534E4453313331303534510000000000000000000000000000000000000000","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0006","value":"00","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0007","value":"00","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0008","value":"07","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0009","value":"00","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x000A","value":"03","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0100","value":"0000024D","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0101","value":"00000000","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0105","value":"00","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0106","value":"00000419","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0107","value":"00000000","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x0108","value":"00","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5000","value":"01","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5001","value":"01","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5003","value":"01","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5007","value":"08C0","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5008","value":"022600AA","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5100","value":"00000000000000000000000000","time":"2021-07-20T17:16:48.060Z"},{"erd":"0x5101","value":"00","time":"2021-07-20T17:16:48.140Z"},{"erd":"0x5102","value":"0000","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5103","value":"0000","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5104","value":"0000","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5105","value":"0000","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5106","value":"00","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5107","value":"00","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5108","value":"FFFF","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5109","value":"0000","time":"2021-07-20T17:16:48.726Z"},{"erd":"0x510A","value":"01","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x510B","value":"0000000E0673399CBCCF","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x510D","value":"00C3","time":"2021-07-20T17:27:09.908Z"},{"erd":"0x5113","value":"00000000000000000000000000000000000000000000","time":"2021-07-20T11:22:51.814Z"},{"erd":"0x5200","value":"00000000000000000000000000","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x5201","value":"00","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x5202","value":"0000","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x5203","value":"0000","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x5204","value":"0000","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x5205","value":"0000","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x5206","value":"00","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x5207","value":"00","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x5208","value":"0000","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x5209","value":"0000","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x520A","value":"00","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x520B","value":"00000000000000000000","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x520D","value":"0000","time":"2021-06-22T02:30:07.833Z"},{"erd":"0x5300","value":"0000000000000000000000000000000000000000000000","time":"2021-06-22T02:30:09.537Z"},{"erd":"0x551C","value":"0000","time":"2021-06-22T02:30:09.617Z"},{"erd":"0x5770","value":"00","time":"2021-06-22T02:30:11.345Z"}]}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:43,972 DEBUG Setting ErdCode.MODEL_NUMBER to ZKS90DSSN1SS 2021-07-20 13:27:43,973 DEBUG Setting ErdCode.SERIAL_NUMBER to SNDS131054Q 2021-07-20 13:27:43,973 DEBUG Setting ErdCode.CLOCK_FORMAT to ErdClockFormat.TWELVE_HOUR 2021-07-20 13:27:43,974 DEBUG Setting ErdCode.TEMPERATURE_UNIT to ErdMeasurementUnits.IMPERIAL 2021-07-20 13:27:43,974 DEBUG Setting ErdCode.APPLIANCE_TYPE to ErdApplianceType.OVEN 2021-07-20 13:27:43,975 DEBUG Setting ErdCode.SABBATH_MODE to False 2021-07-20 13:27:43,975 DEBUG Setting ErdCode.SOUND_LEVEL to ErdSoundLevel.HIGH 2021-07-20 13:27:43,976 DEBUG Setting ErdCode.WIFI_MODULE_SW_VERSION to 0.0.2.77 2021-07-20 13:27:43,977 DEBUG Setting ErdCode.WIFI_MODULE_SW_VERSION_AVAILABLE to 0.0.0.0 2021-07-20 13:27:43,977 DEBUG Setting ErdCode.APPLIANCE_UPDATING to False 2021-07-20 13:27:43,978 DEBUG Setting ErdCode.LCD_SW_VERSION to 0.0.4.25 2021-07-20 13:27:43,979 DEBUG Setting ErdCode.LCD_SW_VERSION_AVAILABLE to 0.0.0.0 2021-07-20 13:27:43,979 DEBUG Setting ErdCode.LCD_UPDATING to False 2021-07-20 13:27:43,980 DEBUG Setting ErdCode.HOUR_12_SHUTOFF_ENABLED to True 2021-07-20 13:27:43,980 DEBUG Setting ErdCode.END_TONE to ErdEndTone.REPEATED_BEEP 2021-07-20 13:27:43,982 DEBUG Setting ErdCode.CONVECTION_CONVERSION to True 2021-07-20 13:27:43,983 DEBUG Setting ErdCode.OVEN_CONFIGURATION to OvenConfiguration(has_knob=False, has_warming_drawer=False, has_light_bar=False, has_lower_oven=False, has_lower_oven_kitchen_timer=False, raw_value='08C0') 2021-07-20 13:27:43,983 DEBUG Setting ErdCode.OVEN_MODE_MIN_MAX_TEMP to OvenRanges(lower=170, upper=550) 2021-07-20 13:27:43,984 DEBUG Setting ErdCode.UPPER_OVEN_COOK_MODE to Off 2021-07-20 13:27:43,985 DEBUG Setting ErdCode.UPPER_OVEN_CURRENT_STATE to Off 2021-07-20 13:27:43,985 DEBUG Setting ErdCode.UPPER_OVEN_DELAY_TIME_REMAINING to 0:00:00 2021-07-20 13:27:43,985 DEBUG Setting ErdCode.UPPER_OVEN_PROBE_DISPLAY_TEMP to 0 2021-07-20 13:27:43,986 DEBUG Setting ErdCode.UPPER_OVEN_COOK_TIME_REMAINING to 0:00:00 2021-07-20 13:27:43,987 DEBUG Setting ErdCode.UPPER_OVEN_KITCHEN_TIMER to 0:00:00 2021-07-20 13:27:43,988 DEBUG Setting ErdCode.UPPER_OVEN_USER_TEMP_OFFSET to 0 2021-07-20 13:27:43,988 DEBUG Setting ErdCode.UPPER_OVEN_PROBE_PRESENT to False 2021-07-20 13:27:43,989 DEBUG Got timespan value of 65535. Treating as None. 2021-07-20 13:27:43,989 DEBUG Setting ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE to 0 2021-07-20 13:27:43,990 DEBUG Setting ErdCode.UPPER_OVEN_REMOTE_ENABLED to True 2021-07-20 13:27:43,990 DEBUG Setting ErdCode.UPPER_OVEN_AVAILABLE_COOK_MODES to {<ErdOvenCookMode.BAKE_NOOPTION: 1>, <ErdOvenCookMode.CONVMULTIBAKE_NOOPTION: 27>, <ErdOvenCookMode.CONVROAST_NOOPTION: 36>, <ErdOvenCookMode.CONVBAKE_NOOPTION: 18>} 2021-07-20 13:27:43,991 DEBUG Setting ErdCode.UPPER_OVEN_RAW_TEMPERATURE to 195 2021-07-20 13:27:43,991 DEBUG Setting 0x5113 to b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
2021-07-20 13:27:43,992 DEBUG Setting ErdCode.LOWER_OVEN_COOK_MODE to Off 2021-07-20 13:27:43,993 DEBUG Setting ErdCode.LOWER_OVEN_CURRENT_STATE to Off 2021-07-20 13:27:43,994 DEBUG Setting ErdCode.LOWER_OVEN_DELAY_TIME_REMAINING to 0:00:00 2021-07-20 13:27:43,994 DEBUG Setting ErdCode.LOWER_OVEN_PROBE_DISPLAY_TEMP to 0 2021-07-20 13:27:43,995 DEBUG Setting ErdCode.LOWER_OVEN_COOK_TIME_REMAINING to 0:00:00 2021-07-20 13:27:43,995 DEBUG Setting ErdCode.LOWER_OVEN_KITCHEN_TIMER to 0:00:00 2021-07-20 13:27:43,996 DEBUG Setting ErdCode.LOWER_OVEN_USER_TEMP_OFFSET to 0 2021-07-20 13:27:43,996 DEBUG Setting ErdCode.LOWER_OVEN_PROBE_PRESENT to False 2021-07-20 13:27:43,997 DEBUG Setting ErdCode.LOWER_OVEN_ELAPSED_COOK_TIME to 0:00:00 2021-07-20 13:27:43,998 DEBUG Setting ErdCode.LOWER_OVEN_DISPLAY_TEMPERATURE to 0 2021-07-20 13:27:43,999 DEBUG Setting ErdCode.LOWER_OVEN_REMOTE_ENABLED to False 2021-07-20 13:27:44,000 DEBUG Setting ErdCode.LOWER_OVEN_AVAILABLE_COOK_MODES to set() 2021-07-20 13:27:44,000 DEBUG Setting ErdCode.LOWER_OVEN_RAW_TEMPERATURE to 0 2021-07-20 13:27:44,001 DEBUG Setting ErdCode.MICROWAVE_RECIPE_STATUS to b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' 2021-07-20 13:27:44,001 DEBUG Setting ErdCode.COOKTOP_CONFIG to ErdCooktopConfig.NONE 2021-07-20 13:27:44,002 DEBUG Setting ErdCode.CLOSED_LOOP_COOKING_CONFIGURATION to b'\x00' 2021-07-20 13:27:44,003 DEBUG Got initial appliance type for GeAppliance(D828C9572971) (ErdApplianceType.OVEN) 2021-07-20 13:27:44,004 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN). Updated keys: ErdCode.MODEL_NUMBER, ErdCode.SERIAL_NUMBER, ErdCode.CLOCK_FORMAT, ErdCode.TEMPERATURE_UNIT, ErdCode.APPLIANCE_TYPE, ErdCode.SABBATH_MODE, ErdCode.SOUND_LEVEL, ErdCode.WIFI_MODULE_SW_VERSION, ErdCode.WIFI_MODULE_SW_VERSION_AVAILABLE, ErdCode.APPLIANCE_UPDATING, ErdCode.LCD_SW_VERSION, ErdCode.LCD_SW_VERSION_AVAILABLE, ErdCode.LCD_UPDATING, ErdCode.HOUR_12_SHUTOFF_ENABLED, ErdCode.END_TONE, ErdCode.CONVECTION_CONVERSION, ErdCode.OVEN_CONFIGURATION, ErdCode.OVEN_MODE_MIN_MAX_TEMP, ErdCode.UPPER_OVEN_COOK_MODE, ErdCode.UPPER_OVEN_CURRENT_STATE, ErdCode.UPPER_OVEN_DELAY_TIME_REMAINING, ErdCode.UPPER_OVEN_PROBE_DISPLAY_TEMP, ErdCode.UPPER_OVEN_COOK_TIME_REMAINING, ErdCode.UPPER_OVEN_KITCHEN_TIMER, ErdCode.UPPER_OVEN_USER_TEMP_OFFSET, ErdCode.UPPER_OVEN_PROBE_PRESENT, ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE, ErdCode.UPPER_OVEN_REMOTE_ENABLED, ErdCode.UPPER_OVEN_AVAILABLE_COOK_MODES, ErdCode.UPPER_OVEN_RAW_TEMPERATURE, 0x5113, ErdCode.LOWER_OVEN_COOK_MODE, ErdCode.LOWER_OVEN_CURRENT_STATE, ErdCode.LOWER_OVEN_DELAY_TIME_REMAINING, ErdCode.LOWER_OVEN_PROBE_DISPLAY_TEMP, ErdCode.LOWER_OVEN_COOK_TIME_REMAINING, ErdCode.LOWER_OVEN_KITCHEN_TIMER, ErdCode.LOWER_OVEN_USER_TEMP_OFFSET, ErdCode.LOWER_OVEN_PROBE_PRESENT, ErdCode.LOWER_OVEN_ELAPSED_COOK_TIME, ErdCode.LOWER_OVEN_DISPLAY_TEMPERATURE, ErdCode.LOWER_OVEN_REMOTE_ENABLED, ErdCode.LOWER_OVEN_AVAILABLE_COOK_MODES, ErdCode.LOWER_OVEN_RAW_TEMPERATURE, ErdCode.MICROWAVE_RECIPE_STATUS, ErdCode.COOKTOP_CONFIG, ErdCode.CLOSED_LOOP_COOKING_CONFIGURATION 2021-07-20 13:27:44,007 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN) 2021-07-20 13:27:44,007 INFO Turning on the oven! 2021-07-20 13:27:44,008 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#api", "action": "api", "host": "api.brillion.geappliances.com", "method": "POST", "path": "/v1/appliance/D828C9572971/erd/0x5100", "id": "D828C9572971-setErd-0x5100", "body": {"kind": "appliance#erdListEntry", "userId": "54325g8m1gszbyw", "applianceId": "D828C9572971", "erd": "0x5100", "value": "01015e00000000000000000000", "ackTimeout": 10, "delay": 0}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:44,009 INFO Set the timer! 2021-07-20 13:27:44,009 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#api", "action": "api", "host": "api.brillion.geappliances.com", "method": "POST", "path": "/v1/appliance/D828C9572971/erd/0x5105", "id": "D828C9572971-setErd-0x5105", "body": {"kind": "appliance#erdListEntry", "userId": "54325g8m1gszbyw", "applianceId": "D828C9572971", "erd": "0x5105", "value": "0000002d", "ackTimeout": 10, "delay": 0}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:44,342 DEBUG client - event = data_received(<43 bytes>) 2021-07-20 13:27:44,345 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#api","id":"D828C9562025-setErd-0x5105","request":{"host":"api.brillion.geappliances.com","method":"POST","path":"/v1/appliance/D828C9562025/erd/0x5105"},"success":true,"code":200,"body":{"status":"success"}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:44,349 DEBUG 2021-07-20 13:27:44,351 DEBUG Setting ErdCode.UPPER_OVEN_KITCHEN_TIMER to 0:45:00 2021-07-20 13:27:44,354 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_KITCHEN_TIMER 2021-07-20 13:27:44,358 DEBUG client - event = data_received(<14 bytes>) 2021-07-20 13:27:44,361 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#api","id":"D828C9562025-setErd-0x5100","request":{"host":"api.brillion.geappliances.com","method":"POST","path":"/v1/appliance/D828C9562025/erd/0x5100"},"success":true,"code":200,"body":{"status":"success"}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:44,367 DEBUG 2021-07-20 13:27:44,370 DEBUG Setting ErdCode.UPPER_OVEN_COOK_MODE to Bake (350°) 2021-07-20 13:27:44,373 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_COOK_MODE 2021-07-20 13:27:44,448 DEBUG client - event = data_received(<16 bytes>) 2021-07-20 13:27:44,452 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#api","id":"D828C9572971-setErd-0x5105","request":{"host":"api.brillion.geappliances.com","method":"POST","path":"/v1/appliance/D828C9572971/erd/0x5105"},"success":true,"code":200,"body":{"status":"success"}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:44,458 DEBUG 2021-07-20 13:27:44,460 DEBUG Setting ErdCode.UPPER_OVEN_KITCHEN_TIMER to 0:45:00 2021-07-20 13:27:44,464 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_KITCHEN_TIMER 2021-07-20 13:27:44,470 DEBUG client - event = data_received(<15 bytes>) 2021-07-20 13:27:44,472 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#api","id":"D828C9572971-setErd-0x5100","request":{"host":"api.brillion.geappliances.com","method":"POST","path":"/v1/appliance/D828C9572971/erd/0x5100"},"success":true,"code":200,"body":{"status":"success"}}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:44,476 DEBUG 2021-07-20 13:27:44,478 DEBUG Setting ErdCode.UPPER_OVEN_COOK_MODE to Bake (350°) 2021-07-20 13:27:44,484 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_COOK_MODE 2021-07-20 13:27:50,489 DEBUG client - event = data_received(<55 bytes>) 2021-07-20 13:27:50,489 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9562025","erd":"0x5101","time":"2021-07-20T17:27:44.659Z","value":"05"},"resource":"/appliance/D828C9562025/erd/0x5101","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:50,490 DEBUG Setting ErdCode.UPPER_OVEN_CURRENT_STATE to Bake 2021-07-20 13:27:50,491 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_CURRENT_STATE 2021-07-20 13:27:50,537 DEBUG client - event = data_received(<11 bytes>) 2021-07-20 13:27:50,540 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9562025","erd":"0x5101","time":"2021-07-20T17:27:44.659Z","value":"01"},"resource":"/appliance/D828C9562025/erd/0x5101","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:50,544 DEBUG Setting ErdCode.UPPER_OVEN_CURRENT_STATE to Preheat 2021-07-20 13:27:50,546 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_CURRENT_STATE 2021-07-20 13:27:50,836 DEBUG client - event = data_received(<30 bytes>) 2021-07-20 13:27:50,839 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9562025","erd":"0x5100","time":"2021-07-20T17:27:44.640Z","value":"01015E00000000000000000000"},"resource":"/appliance/D828C9562025/erd/0x5100","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:51,418 DEBUG client - event = data_received(<28 bytes>) 2021-07-20 13:27:51,419 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9562025","erd":"0x510D","time":"2021-07-20T17:27:48.009Z","value":"00D9"},"resource":"/appliance/D828C9562025/erd/0x510D","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:51,420 DEBUG Setting ErdCode.UPPER_OVEN_RAW_TEMPERATURE to 217 2021-07-20 13:27:51,421 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_RAW_TEMPERATURE 2021-07-20 13:27:51,453 DEBUG client - event = data_received(<22 bytes>) 2021-07-20 13:27:51,453 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9562025","erd":"0x5109","time":"2021-07-20T17:27:47.989Z","value":"00D9"},"resource":"/appliance/D828C9562025/erd/0x5109","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:27:51,456 DEBUG Setting ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE to 217 2021-07-20 13:27:51,457 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE 2021-07-20 13:28:03,386 DEBUG client > Frame(fin=True, opcode=<Opcode.PING: 9>, data=b'\xac\x9e\xc2\xb5', rsv1=False, rsv2=False, rsv3=False)2021-07-20 13:28:03,413 DEBUG client - event = data_received(<6 bytes>) 2021-07-20 13:28:03,413 DEBUG client < Frame(fin=True, opcode=<Opcode.PONG: 10>, data=b'\xac\x9e\xc2\xb5', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:03,414 DEBUG client - received solicited pong: ac9ec2b5 2021-07-20 13:28:07,965 DEBUG client - event = data_received(<24 bytes>) 2021-07-20 13:28:07,965 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9572971","erd":"0x5101","time":"2021-07-20T17:27:44.718Z","value":"05"},"resource":"/appliance/D828C9572971/erd/0x5101","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:07,975 DEBUG Setting ErdCode.UPPER_OVEN_CURRENT_STATE to Bake 2021-07-20 13:28:07,976 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_CURRENT_STATE 2021-07-20 13:28:08,012 DEBUG client - event = data_received(<12 bytes>) 2021-07-20 13:28:08,013 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9572971","erd":"0x5101","time":"2021-07-20T17:27:44.718Z","value":"01"},"resource":"/appliance/D828C9572971/erd/0x5101","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:08,014 DEBUG Setting ErdCode.UPPER_OVEN_CURRENT_STATE to Preheat 2021-07-20 13:28:08,015 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_CURRENT_STATE 2021-07-20 13:28:08,614 DEBUG client - event = data_received(<20 bytes>) 2021-07-20 13:28:08,614 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9572971","erd":"0x5100","time":"2021-07-20T17:27:44.683Z","value":"01015E00000000000000000000"},"resource":"/appliance/D828C9572971/erd/0x5100","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:08,713 DEBUG client - event = data_received(<25 bytes>) 2021-07-20 13:28:08,713 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9572971","erd":"0x5109","time":"2021-07-20T17:27:49.954Z","value":"00C3"},"resource":"/appliance/D828C9572971/erd/0x5109","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:08,715 DEBUG Setting ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE to 195 2021-07-20 13:28:08,716 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE 2021-07-20 13:28:13,375 DEBUG Sending keepalive ping 2021-07-20 13:28:13,375 DEBUG client > Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind": "websocket#ping", "id": "keepalive-ping", "action": "ping"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:13,422 DEBUG client - event = data_received(<29 bytes>) 2021-07-20 13:28:13,425 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"kind":"websocket#pong","id":"keepalive-ping"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:19,028 DEBUG client - event = data_received(<22 bytes>) 2021-07-20 13:28:19,031 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9562025","erd":"0x5109","time":"2021-07-20T17:28:18.052Z","value":"00DA"},"resource":"/appliance/D828C9562025/erd/0x5109","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:19,036 DEBUG Setting ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE to 218 2021-07-20 13:28:19,039 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE 2021-07-20 13:28:19,054 DEBUG client - event = data_received(<17 bytes>) 2021-07-20 13:28:19,056 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9562025","erd":"0x510D","time":"2021-07-20T17:28:18.078Z","value":"00DA"},"resource":"/appliance/D828C9562025/erd/0x510D","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:19,059 DEBUG Setting ErdCode.UPPER_OVEN_RAW_TEMPERATURE to 218 2021-07-20 13:28:19,062 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_RAW_TEMPERATURE 2021-07-20 13:28:21,307 DEBUG client - event = data_received(<20 bytes>) 2021-07-20 13:28:21,307 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9562025","erd":"0x5101","time":"2021-07-20T17:28:20.332Z","value":"00"},"resource":"/appliance/D828C9562025/erd/0x5101","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:21,309 DEBUG Setting ErdCode.UPPER_OVEN_CURRENT_STATE to Off 2021-07-20 13:28:21,309 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_CURRENT_STATE 2021-07-20 13:28:21,437 DEBUG client - event = data_received(<21 bytes>) 2021-07-20 13:28:21,437 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9562025","erd":"0x5100","time":"2021-07-20T17:28:20.247Z","value":"00000000000000000000000000"},"resource":"/appliance/D828C9562025/erd/0x5100","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:21,438 DEBUG Setting ErdCode.UPPER_OVEN_COOK_MODE to Off 2021-07-20 13:28:21,439 DEBUG Appliance state change detected in GeAppliance(D828C9562025) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_COOK_MODE 2021-07-20 13:28:23,412 DEBUG client > Frame(fin=True, opcode=<Opcode.PING: 9>, data=b'\x92}\x00\x8e', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:23,436 DEBUG client - event = data_received(<6 bytes>) 2021-07-20 13:28:23,438 DEBUG client < Frame(fin=True, opcode=<Opcode.PONG: 10>, data=b'\x92}\x00\x8e', rsv1=False, rsv2=False, rsv3=False)
2021-07-20 13:28:23,440 DEBUG client - received solicited pong: 927d008e 2021-07-20 13:28:26,255 DEBUG client - event = data_received(<23 bytes>) 2021-07-20 13:28:26,258 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9572971","erd":"0x510D","time":"2021-07-20T17:28:09.987Z","value":"00C1"},"resource":"/appliance/D828C9572971/erd/0x510D","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:26,262 DEBUG Setting ErdCode.UPPER_OVEN_RAW_TEMPERATURE to 193 2021-07-20 13:28:26,266 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_RAW_TEMPERATURE 2021-07-20 13:28:30,357 DEBUG client - event = data_received(<19 bytes>) 2021-07-20 13:28:30,358 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9572971","erd":"0x5100","time":"2021-07-20T17:28:13.640Z","value":"00000000000000000000000000"},"resource":"/appliance/D828C9572971/erd/0x5100","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:30,359 DEBUG Setting ErdCode.UPPER_OVEN_COOK_MODE to Off 2021-07-20 13:28:30,360 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_COOK_MODE 2021-07-20 13:28:30,399 DEBUG client - event = data_received(<15 bytes>) 2021-07-20 13:28:30,401 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9572971","erd":"0x5101","time":"2021-07-20T17:28:13.689Z","value":"00"},"resource":"/appliance/D828C9572971/erd/0x5101","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:30,407 DEBUG Setting ErdCode.UPPER_OVEN_CURRENT_STATE to Off 2021-07-20 13:28:30,411 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_CURRENT_STATE 2021-07-20 13:28:32,580 DEBUG client - event = data_received(<18 bytes>) 2021-07-20 13:28:32,581 DEBUG client < Frame(fin=True, opcode=<Opcode.TEXT: 1>, data=b'{"item":{"applianceId":"D828C9572971","erd":"0x5109","time":"2021-07-20T17:28:20.010Z","value":"0000"},"resource":"/appliance/D828C9572971/erd/0x5109","kind":"publish#erd","userId":"54325g8m1gszbyw"}', rsv1=False, rsv2=False, rsv3=False) 2021-07-20 13:28:32,583 DEBUG Setting ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE to 0 2021-07-20 13:28:32,584 DEBUG Appliance state change detected in GeAppliance(D828C9572971) (ErdApplianceType.OVEN). Updated keys: ErdCode.UPPER_OVEN_DISPLAY_TEMPERATURE

TKpizza commented 3 years ago

it started both of the ovens so it looks like its working. Now can you help me get it into home assistant?

simbaja commented 3 years ago

Yep, it looks like it got both of them. You might want to go confirm, but both ovens should be set to Bake at 350 and have a kitchen timer of 45mins. :)

Based on this, it looks like we have most of the codes, there might be a few we need to look into to confirm what they do. That shouldn't affect their availability in HA though.

My advice would be to try the latest "dev" branch of the HA component and see if they both show up using that. Perhaps there was a bug that got resolved somewhere and they'll both show up now (hopefully). You should just be able to clone the dev branch then copy/paste the custom component into the appropriate spot in HA.

TKpizza commented 3 years ago

Getting this error and only one oven shows up.

This error originated from a custom integration.

Logger: homeassistant Source: custom_components/ge_home/devices/oven.py:34 Integration: GE Home (documentation) First occurred: 1:54:23 PM (1 occurrences) Last logged: 1:54:23 PM

Error doing job: Task exception was never retrieved Traceback (most recent call last): File "/config/custom_components/ge_home/update_coordinator.py", line 299, in on_device_initial_update self.maybe_add_appliance_api(appliance) File "/config/custom_components/ge_home/update_coordinator.py", line 128, in maybe_add_appliance_api api.build_entities_list() File "/config/custom_components/ge_home/devices/base.py", line 116, in build_entities_list e for e in self.get_all_entities() File "/config/custom_components/ge_home/devices/oven.py", line 34, in get_all_entities cooktop_config: ErdCooktopConfig = self.appliance.get_erd_value(ErdCode.COOKTOP_CONFIG) File "/usr/local/lib/python3.9/site-packages/gehomesdk/ge_appliance.py", line 136, in get_erd_value return self._property_cache[erd_code] KeyError: <ErdCode.COOKTOP_CONFIG: '0x551c'>

simbaja commented 3 years ago

OK, so looks like the double oven isn't presenting a cooktop config erd value, which is used to add cooktop entries if it's present. Let me rewrite the code a little bit to eliminate this issue...

simbaja commented 3 years ago

Can you re-pull the newest dev branch and let me know if that resolves your issue?

simbaja commented 3 years ago

What does your file structure look like? It should be HA_ROOT\custom_components\ge_home. This directory should be contents of the custom_components\ge_home directory from github. You should, for example see the manifest.json in that directory.

TKpizza commented 3 years ago

Ok got it working. needed to clear cache. the double oven now shows up but the lower oven water heater sensor is not available and i have this in my logs.

A side note, the shabbos mode switch turns on for 5-10 seconds and the shuts off.

This error originated from a custom integration.

Logger: homeassistant Source: custom_components/ge_home/entities/oven/ge_oven.py:174 Integration: GE Home (documentation) First occurred: 2:33:22 PM (15 occurrences) Last logged: 2:38:01 PM

Error doing job: Task exception was never retrieved Traceback (most recent call last): File "/config/custom_components/ge_home/update_coordinator.py", line 266, in on_device_update entity.async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 419, in async_write_ha_state self._async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 460, in _async_write_ha_state extra_state_attributes = self.device_state_attributes File "/config/custom_components/ge_home/entities/oven/ge_oven.py", line 184, in device_state_attributes probe_present = self.get_erd_value("PROBE_PRESENT") File "/config/custom_components/ge_home/entities/oven/ge_oven.py", line 174, in get_erd_value return self.appliance.get_erd_value(erd_code) File "/usr/local/lib/python3.9/site-packages/gehomesdk/ge_appliance.py", line 136, in get_erd_value return self._property_cache[erd_code] KeyError: <ErdCode.LOWER_OVEN_PROBE_PRESENT: '0x5207'>

simbaja commented 3 years ago

I just posted a new dev version - hopefully should resolve the error that you're seeing. I just made more things optional since they appear to not always be present. Let's take care of the shabbos mode after we get all the entities in there, hopefully it'll be an easier fix, but the way things seem to go, probably not.

TKpizza commented 3 years ago

now they are both unavilible and i have these three errors

This error originated from a custom integration.

Logger: homeassistant Source: custom_components/ge_home/entities/oven/ge_oven.py:174 Integration: GE Home (documentation) First occurred: 3:08:03 PM (1 occurrences) Last logged: 3:08:03 PM

Error doing job: Task exception was never retrieved Traceback (most recent call last): File "/config/custom_components/ge_home/update_coordinator.py", line 266, in on_device_update entity.async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 419, in async_write_ha_state self._async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 460, in _async_write_ha_state extra_state_attributes = self.device_state_attributes File "/config/custom_components/ge_home/entities/oven/ge_oven.py", line 198, in device_state_attributes if self.api.has_erd_code(self.get_erd_value("KITCHEN_TIMER")): File "/config/custom_components/ge_home/entities/oven/ge_oven.py", line 174, in get_erd_value return self.appliance.get_erd_value(erd_code) File "/usr/local/lib/python3.9/site-packages/gehomesdk/ge_appliance.py", line 136, in get_erd_value return self._property_cache[erd_code] KeyError: <ErdCode.LOWER_OVEN_KITCHEN_TIMER: '0x5205'>

Logger: homeassistant.components.water_heater Source: custom_components/ge_home/entities/oven/ge_oven.py:202 Integration: Water Heater (documentation, issues) First occurred: 3:07:42 PM (2 occurrences) Last logged: 3:07:42 PM

Error adding entities for domain water_heater with platform ge_home Error while setting up ge_home platform for water_heater Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 383, in async_add_entities await asyncio.gather(*tasks) File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 588, in _async_add_entity await entity.add_to_platform_finish() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 666, in add_to_platform_finish self.async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 419, in async_write_ha_state self._async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 460, in _async_write_ha_state extra_state_attributes = self.device_state_attributes File "/config/custom_components/ge_home/entities/oven/ge_oven.py", line 202, in device_state_attributes if elapsed_time: UnboundLocalError: local variable 'elapsed_time' referenced before assignment

TKpizza commented 3 years ago

So here is something weird. the water heater entity is saying unavailable but i can still select the operation of the oven. the only thing i cant do is set the temperature.

image

simbaja commented 3 years ago

OK, give the new dev a shot, that's what you get when you make changes too quickly :)

TKpizza commented 3 years ago

Thank you so freaking much!!!!!! its now working you are the best, thanks for spending the time helping me.