[FR]: Kress Mission RTKn Support
Banuss opened this issue · 13 comments
Describe the feature you wish to make a request for
It seems like there is no support het for the Kress Mission RTK series but don't know for sure
Could you specify models/series dat are supported? And maybe list them in the readme
Really looking forward to us HA with my Kress KR174E.
Describe alternatives you've considered
None
Additional context
.
Did you try latest beta to see if that solves it for this model as well?
And for listing supported devices - impossible task, as I have no idea ;)
Yeah running v3.1.0b4.
I looked trough the code and filled in the endpoints (id.kress.com) in my browser.
I can login, but only see some basic account management.
Do I understand it correctly that the other series have more capabilities from the web?
And that I should wait on Positec to add control to the web portal?
You can't use the web for anything.
Your best bet for support is to share your credentials to landroid_cloud (at) trab.dk and then I'll add support as soon as I got the time.
I get a "failed to setup" error with my Kress RTKn with the latest beta...
Error setting up entry Kress - f*****@******.** for landroid_cloud Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/config_entries.py", line 387, in async_setup result = await component.async_setup_entry(hass, self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/config/custom_components/landroid_cloud/__init__.py", line 63, in async_setup_entry result = await _async_setup(hass, entry) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/config/custom_components/landroid_cloud/__init__.py", line 206, in _async_setup await hass.async_add_executor_job(cloud.connect) File "/usr/local/lib/python3.11/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, **self.kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/site-packages/pyworxcloud/__init__.py", line 259, in connect self._fetch() File "/usr/local/lib/python3.11/site-packages/pyworxcloud/__init__.py", line 671, in _fetch self._decode_data(device) File "/usr/local/lib/python3.11/site-packages/pyworxcloud/__init__.py", line 414, in _decode_data device.mac_address = data["dat"]["mac"] ~~~~~~~~~~~^^^^^^^ KeyError: 'mac'
Seems like it has a new format as well.
The new API isn't documented by Positec yet, so it's a guessing game and I'll require access to an account with one of the new models to fix this.
Hi, please find some help here. I could even try to edit your code.
reply to product items function (Mac_address is empty for RTKn product)('I've replaced sensitive info with * from the json:
[
{
"id":101371,
"uuid":"",
"product_id":14,
"user_id":*****,
"serial_number":"",
"mac_address":null,
"name":"RTK",
"locked":false,
"firmware_version":"3.32.0+8",
"firmware_auto_upgrade":true,
"push_notifications":true,
"sim":null,
"push_notifications_level":"warning",
"test":false,
"iot_registered":true,
"mqtt_registered":true,
"pin_code":null,
"registered_at":"2023-08-25 00:00:00",
"online":true,
"app_settings":null,
"protocol":1,
"pending_radio_link_validation":null,
"capabilities":[
"auto_lock",
"border_cut",
"follow_border",
"maps",
"mqtt",
"ota_upgrade",
"rain_delay",
"unrestricted_mowing_time"
],
"capabilities_available":[
],
"features":{
"auto_lock":true,
"chassis":"mission_rtk_2022",
"display_type":"lcd",
"input_type":"keyboard_arrow_keys_capacitive",
"maps":true,
"mqtt":true,
"rain_delay":true,
"unrestricted_mowing_time":true
},
"accessories":{
"cellular":true,
"electric_height_adjustment":true,
"ultrasonic":true
},
"mqtt_endpoint":"iot.eu-west-1.kress-robotik.com",
"mqtt_topics":{
"command_in":"KR\/MW\/KR173E\/***************************\/v1\/commandIn",
"command_out":"KR\/MW\/KR173E\/**************************\/v1\/commandOut"
},
"warranty_registered":true,
"purchased_at":"2023-08-25 00:00:00",
"warranty_expires_at":"2026-08-25 00:00:00",
"setup_location":null,
"city":null,
"time_zone":"Europe\/Rome",
"lawn_size":null,
"lawn_perimeter":null,
"auto_schedule_settings":null,
"auto_schedule":false,
"improvement":true,
"diagnostic":true,
"distance_covered":0,
"mower_work_time":0,
"blade_work_time":0,
"blade_work_time_reset":0,
"blade_work_time_reset_at":null,
"battery_charge_cycles":121,
"battery_charge_cycles_reset":0,
"battery_charge_cycles_reset_at":null,
"created_at":"2023-02-05 05:11:00",
"updated_at":"2023-09-06 14:21:47",
"last_status":{
"timestamp":"2023-09-22 14:04:53",
"payload":{
"cfg":{
"id":0,
"tz":"Europe\/Rome",
"lg":"de",
"cmd":0,
"rtk":{
"map":"*************************************",
"ck":"*****************************************",
"st":1,
"zs":[
{
"id":1,
"cfg":{
"sc":{
"freq":1440
},
"cut":{
"t":1,
"d":106
},
"modules":{
"EA":{
"h":45
}
}
}
},
{
"id":2,
"cfg":{
"sc":{
"freq":1440
},
"cut":{
"t":1,
"d":108
},
"modules":{
"EA":{
"h":45
}
}
}
}
]
},
"sc":{
"enabled":1,
"paused":0,
"slots":[
{
"e":1,
"d":1,
"s":600,
"t":540,
"cfg":{
"cut":{
"z":[
1
]
}
}
},
{
"e":1,
"d":2,
"s":480,
"t":240,
"cfg":{
"cut":{
"z":[
2
]
}
}
},
{
"e":1,
"d":2,
"s":720,
"t":660,
"cfg":{
"cut":{
"z":[
1
]
}
}
},
{
"e":1,
"d":3,
"s":480,
"t":945,
"cfg":{
"cut":{
"z":[
1
]
}
}
},
{
"e":1,
"d":4,
"s":420,
"t":780,
"cfg":{
"cut":{
"z":[
1
]
}
}
},
{
"e":1,
"d":5,
"s":540,
"t":180,
"cfg":{
"cut":{
"z":[
2
]
}
}
},
{
"e":1,
"d":5,
"s":900,
"t":480,
"cfg":{
"cut":{
"z":[
1
]
}
}
}
],
"freq":0
},
"cut":{
"t":0,
"d":-1,
"z":[
]
},
"rd":180,
"al":{
"lvl":0,
"t":60
},
"tq":0,
"dk":{
"id":[
1
]
},
"modules":{
"4G":{
"enabled":0,
"geo":{
"dist":50
}
},
"EA":{
"h":45
},
"US":{
"enabled":1
}
}
},
"dat":{
"uuid":"*********************************",
"tm":"2023-09-22T14:04:53.786Z",
"fw":"3.32.0+8",
"ls":1,
"le":5,
"conn":"4G",
"bt":{
"t":171,
"v":3631,
"p":16,
"nr":121,
"c":0,
"m":0
},
"head":{
"uuid":"******************************",
"fw":"1.3.11+5",
"act":1
},
"dmp":[
******************,
***********************,
************************
],
"st":{
"b":0,
"d":0,
"wt":0,
"bl":0
},
"act":1,
"rsi":-75,
"rain":{
"s":1,
"cnt":10800
},
"sh":0,
"sc":{
"slot":0
},
"cut":{
},
"rtk":{
"network":{
"status":1,
"error":1
},
"gps":{
"status":1,
"error":1
},
"imu":{
"status":0
}
},
"modules":{
"4G":{
"stat":"ok",
"vers":808,
"mode":0,
"geo":{
"stat":"unset"
},
"gps":{
"coo":[
**.*************,
**.*************
]
},
"network":{
"status":"connected",
"mode":"Cat-M1",
"ICCID":"********************",
"IMSI":"*********************",
"rssi":-75
}
},
"EA":{
"stat":"ok",
"error":0
},
"US":{
"stat":"ok"
}
}
}
}
}
}
]
how can I contribute with credentials? I have multiple Kress RTKn mowers running.
Please share to landroid_cloud (at) trab.dk
Yes I do
Send them right now via email.
Thanks - been thru surgery and haven't had the chance to check yet - will look into this as soon as I'm able to sit at a computer for more than just a short time.
Work is progressing quite well right now. Have the statuses ready, a few attributes still missing and then I need to test the command format.