sca075 / mqtt_vacuum_camera

Camera Integration for Home Assistant to export and render all Vacuums connected via MQTT( including Valetudo Hypfer and RE(rand256)) Maps.
Apache License 2.0
103 stars 5 forks source link

On a Roborock S5 the calibration is wrong #22

Closed mihsu81 closed 1 year ago

mihsu81 commented 1 year ago

Checklist

The problem

On a Roborock S5 the calibration is wrong. When I send the vacuum to a location it goes somewhere outside of the map.

In the attributes of the camera I don't see the rooms.

access_token: bd7ae322e101c8e8711eab9a19de411f0b5901b2674066948beb86da0aab8c9e
vacuum_entity: null
vacuum_status: docked
listen_to: valetudo/ROBOROCK-VACUUM
snapshot: /local/snapshot_roborock-vacuum.png
json_data: Success
vacuum_json_id: 2993cedc-b5d4-459b-bed9-ff8dca968abf
vacuum_position:
  x: 2550
  'y': 2534
  angle: 272
calibration_points:
  - vacuum:
      x: 1741
      'y': 1741
    map:
      x: 0
      'y': 0
  - vacuum:
      x: 3379
      'y': 1741
    map:
      x: 1638
      'y': 0
  - vacuum:
      x: 3379
      'y': 3379
    map:
      x: 1638
      'y': 1638
  - vacuum:
      x: 1741
      'y': 3379
    map:
      x: 0
      'y': 1638
entity_picture: >-
  /api/camera_proxy/camera.roborock_vacuum_camera?token=bd7ae322e101c8e8711eab9a19de411f0b5901b2674066948beb86da0aab8c9e
friendly_name: ROBOROCK-VACUUM Camera
supported_features: 1

What version of an integration has described problem?

v1.3.4

What was the last working version of an integration?

No response

What vacuum model do you have problems with?

Roborock S5

Please firmware installed on your Vacuum.

2023.8.0

What version of Home Assistant do you use?

2023.8.4

What type of installation are you running?

Home Assistant OS

Camera's configuration

I didn't set it up with yaml.
I used the GUI.

Logs or Errors shown in the HA snapshots (please enable the Debug Mode)

Here's the debug log. error_log-2.txt

Additional information

Screenshot_2023-08-23-23-19-32-35_c3a231c25ed346e59462e84656a70e50

sca075 commented 1 year ago

@mihsu81 Thanks for the report, we are going to release the fix for the xaiomi vacuums rooms attribute, that actually works on the beta version, as confirmed from @rohankapoorcom that experienced something similar, later today the fix will be published.. will check the go_to function at each rotation angle as per we had to update the cropping function recently adding the trimming. Honestly with the V1 I did see something similar but when releasing the 1.3.4 we already checked and so far the calibration points were correctly provided (will confirm it again before releasing the 1.3.5) and come back to you.

sca075 commented 1 year ago

@mihsu81 I did run the go_to function on all rotation value and also adding the trimming the image as well in the current implementation of the beta release and it works correctly with the V1 robot I own, I wold release the v1.3.5 so that you can try it also with the rooms can you please try to install the beta release and confirm if the issue with the go_to is still there? If not so I would need you to send me the json at my email address for future investigation if you don't mind as you can see on the discussions (#17).

mihsu81 commented 1 year ago

I've tried v1.4.5-beta.1 and the situation stays the same. Where can I find the json file to send it over? Thank you.

sca075 commented 1 year ago

@mihsu81,

Thanks a lot for trying it and giving feedback, did the rooms configuration attribute report the rooms?

Normally the json should be saved in the snapshot folder in your case there should be roborock-vacuum.json, but this depends from the HA installation type (if you run on docker it should be there, if not working on it :) ). If not there you can get the json from the vacuum directly please "Try it out". I hope I edited the link correctly (I did had a look to the log you provided and I guess I know already where is the issue), just in case there is a swagger menu in the vacuum local configuration.

Screenshot 2023-08-26 at 10 16 00

you should execute the command get /api/v2/robot/state/map and copy the result it will create on the Response body (you can download the json from there). I guess you already got the email address right?

mihsu81 commented 1 year ago

Indeed the rooms attribute still doesn't appear with the beta version. I've emailed the json file. Thanks for the instructions.

sca075 commented 1 year ago

@mihsu81 strange got the json on the test env. the camera did output the following: I'm checking now the calibration data, thanks for the json. rooms: '16': number: '16' outline:

sca075 commented 1 year ago

@mihsu81 I probably found the problem, it looks it is about the cropping factor you are using right now, can you please let me know the value? Temporally please use the cropping size 50% the calibration data there are okay.. using the below reference point I got the following results:

Screenshot 2023-08-26 at 13 10 21

Cropping 50%

Calintation data at rotation 180 x: 3840 'y': 3840 map: x: 0 'y': 0

at rotation 180 go to [2638, 2412]

calibration_points: at rotation 0

at rotation 0 got to [2638, 2412]

calibration_points rotation at 90 :

at rotation 90 go to [2632, 2407]

calibration_points at rotation 270:

at rotation 270 go to [2638, 2407]

sca075 commented 1 year ago

additionally please also check the card configuration, on my V1 I use the following and it works without any issue:

  - name: Pin & Go
    icon: mdi:map-marker-plus
    run_immediately: false
    coordinates_rounding: true
    selection_type: MANUAL_POINT
    max_selections: 999
    repeats_type: NONE
    max_repeats: 1
    service_call_schema:
      service: mqtt.publish
      service_data:
        topic: '[[topic]]/GoToLocationCapability/go/set'
        payload: '{ "coordinates": { "x": [[point_x]], "y": [[point_y]] } }'
    predefined_selections: []
    variables: {}

If those works I guess the only point is the rooms attribute, that I should fix on the next release.

sca075 commented 1 year ago

@mihsu81 we released v1.4.5 this release should fix also the issue with the Xaiomi vacuums rooms configuration. Please be so kind close this issue if after testing what above fix what you are experiencing. When this isn't the case will be happy to support you.

mihsu81 commented 1 year ago

Temporally please use the cropping size 50% the calibration data there are okay

I was using 32%. I've tried 50% but it didn't make a difference.

I'm using a standard setup of the card.

type: custom:xiaomi-vacuum-map-card
entity: vacuum.valetudo_roborock_vacuum
vacuum_platform: Hypfer/Valetudo
map_source:
  camera: camera.roborock_vacuum_camera
two_finger_pan: true
calibration_source:
  identity: true
internal_variables:
  topic: valetudo/ROBOROCK-VACUUM
map_locked: false
mihsu81 commented 1 year ago

mihsu81 we released v1.4.5 this release should fix also the issue with the Xaiomi vacuums rooms configuration

Unfortunately 1.4.5 didn't make a difference. I'm still not getting rooms in the attributes of the camera entity and the calibration is off.

access_token: cd20497fbe01218493853d7e8f668064a17f8d92ea378e35ba1300965b9aaa0e
vacuum_entity: null
vacuum_status: docked
listen_to: valetudo/ROBOROCK-VACUUM
snapshot: /local/snapshot_roborock-vacuum.png
json_data: Success
vacuum_json_id: 82cac524-8482-442e-b5cc-10da186e516e
vacuum_position:
  x: 2550
  'y': 2534
  angle: 270
calibration_points:
  - vacuum:
      x: 1280
      'y': 1280
    map:
      x: 0
      'y': 0
  - vacuum:
      x: 3840
      'y': 1280
    map:
      x: 2560
      'y': 0
  - vacuum:
      x: 3840
      'y': 3840
    map:
      x: 2560
      'y': 2560
  - vacuum:
      x: 1280
      'y': 3840
    map:
      x: 0
      'y': 2560
entity_picture: >-
  /api/camera_proxy/camera.roborock_vacuum_camera?token=cd20497fbe01218493853d7e8f668064a17f8d92ea378e35ba1300965b9aaa0e
friendly_name: ROBOROCK-VACUUM Camera
supported_features: 1
sca075 commented 1 year ago

Temporally please use the cropping size 50% the calibration data there are okay

I was using 32%. I've tried 50% but it didn't make a difference.

I'm using a standard setup of the card.

type: custom:xiaomi-vacuum-map-card
entity: vacuum.valetudo_roborock_vacuum
vacuum_platform: Hypfer/Valetudo
map_source:
  camera: camera.roborock_vacuum_camera
two_finger_pan: true
calibration_source:
  identity: true
internal_variables:
  topic: valetudo/ROBOROCK-VACUUM
map_locked: false

did you check the pin and go settings in the card?

sca075 commented 1 year ago

mihsu81 we released v1.4.5 this release should fix also the issue with the Xaiomi vacuums rooms configuration

Unfortunately 1.4.5 didn't make a difference. I'm still not getting rooms in the attributes of the camera entity and the calibration is off.

access_token: cd20497fbe01218493853d7e8f668064a17f8d92ea378e35ba1300965b9aaa0e
vacuum_entity: null
vacuum_status: docked
listen_to: valetudo/ROBOROCK-VACUUM
snapshot: /local/snapshot_roborock-vacuum.png
json_data: Success
vacuum_json_id: 82cac524-8482-442e-b5cc-10da186e516e
vacuum_position:
  x: 2550
  'y': 2534
  angle: 270
calibration_points:
  - vacuum:
      x: 1280
      'y': 1280
    map:
      x: 0
      'y': 0
  - vacuum:
      x: 3840
      'y': 1280
    map:
      x: 2560
      'y': 0
  - vacuum:
      x: 3840
      'y': 3840
    map:
      x: 2560
      'y': 2560
  - vacuum:
      x: 1280
      'y': 3840
    map:
      x: 0
      'y': 2560
entity_picture: >-
  /api/camera_proxy/camera.roborock_vacuum_camera?token=cd20497fbe01218493853d7e8f668064a17f8d92ea378e35ba1300965b9aaa0e
friendly_name: ROBOROCK-VACUUM Camera
supported_features: 1

This is quite strange, the data you provided did generate the right coordinates in the my tests, I did load the json you provided from the camera in a PI4 and use the my vacuum as per the card need one, of course I can't move my vacuum with yours coordinates. I will try now the 32% as you did let's see what happen I will keep you posted (I'm going to change a little the test scenario to generate the issue you are facing).

sca075 commented 1 year ago

Also at 32% the calibration data retuned [2634, 2398] with the go to, I think you might need to reconfigure the camera from scratch but first you will delete the card, setup the camera and then add the card. Those below are the calibration data the camera generated at 32% note the image is rotated 180 deg. this is why the coordinates are not in the same order you provided but the values are basically the same.

calibration_points: 
- vacuum:
    x: 3200
    'y': 3200
  map:
    x: 0
    'y': 0
- vacuum:
    x: 1920
    'y': 3200
  map:
    x: 1280
    'y': 0
- vacuum:
    x: 1920
    'y': 1920
  map:
    x: 1280
    'y': 1280
- vacuum:
    x: 3200
    'y': 1920
  map:
    x: 0
    'y': 1280

An this is the rooms configuration I got from the card.

map_modes:
  - template: vacuum_clean_zone
  - template: vacuum_goto
  - template: vacuum_clean_segment
    predefined_selections:
      - id: '16'
        icon:
          name: mdi:broom
          x: 1942
          'y': 2577
        label:
          text: Sonia's Bedroom
          x: 1942
          'y': 2577
          offset_y: 35
        outline:
          - - 1795
            - 2365
          - - 2090
            - 2365
          - - 2090
            - 2790
          - - 1795
            - 2790
      - id: '17'
        icon:
          name: mdi:broom
          x: 2752
          'y': 2730
        label:
          text: Room 17
          x: 2752
          'y': 2730
          offset_y: 35
        outline:
          - - 2480
            - 2505
          - - 3025
            - 2505
          - - 3025
            - 2955
          - - 2480
            - 2955
      - id: '18'
        icon:
          name: mdi:broom
          x: 2615
          'y': 2115
        label:
          text: Bathrooom 1
          x: 2615
          'y': 2115
          offset_y: 35
        outline:
          - - 2460
            - 2025
          - - 2770
            - 2025
          - - 2770
            - 2205
          - - 2460
            - 2205
      - id: '19'
        icon:
          name: mdi:broom
          x: 1945
          'y': 2270
        label:
          text: Bathroom 2
          x: 1945
          'y': 2270
          offset_y: 35
        outline:
          - - 1800
            - 2210
          - - 2090
            - 2210
          - - 2090
            - 2330
          - - 1800
            - 2330
      - id: '20'
        icon:
          name: mdi:broom
          x: 2282
          'y': 2207
        label:
          text: Lobby
          x: 2282
          'y': 2207
          offset_y: 35
        outline:
          - - 2040
            - 1960
          - - 2525
            - 1960
          - - 2525
            - 2455
          - - 2040
            - 2455
      - id: '21'
        icon:
          name: mdi:broom
          x: 2767
          'y': 2355
        label:
          text: Kitchen
          x: 2767
          'y': 2355
          offset_y: 35
        outline:
          - - 2530
            - 2185
          - - 3005
            - 2185
          - - 3005
            - 2525
          - - 2530
            - 2525
      - id: '22'
        icon:
          name: mdi:broom
          x: 2295
          'y': 2670
        label:
          text: Master Bedroom
          x: 2295
          'y': 2670
          offset_y: 35
        outline:
          - - 2100
            - 2440
          - - 2490
            - 2440
          - - 2490
            - 2900
          - - 2100
            - 2900
      - id: '24'
        icon:
          name: mdi:broom
          x: 3072
          'y': 2910
        label:
          text: Room 24
          x: 3072
          'y': 2910
          offset_y: 35
        outline:
          - - 2795
            - 2640
          - - 3350
            - 2640
          - - 3350
            - 3180
          - - 2795
            - 3180

When you add this rooms configuration to the card, do not forget to add:

internal_variables:
  topic: valetudo/ROBOROCK-VACUUM

Please keep the camera running for a while, especially if you use those settings, I had already a report of something similar and to be honest I'm not able to reproduce this inconvenient situation on the my setup. But we will not give up until we can ensure those data pop out correctly as it should on every conditions. Now the json of your vacuum should be in the snapshot folder as well, if you confirm I will pass you some test you could do to identify the root cause.

sca075 commented 1 year ago

@mihsu81 mmmm I noticed that the calibration data are okay according to the last values you provided rotation 0 and crop 50% data are the same I as I previously posted, this means the go_to location must work correctly now. If not, the problem could be that the vacuum (according to the data you provided) actually do not have the complete map (you might rescan the complete floor). Also, I think there are other users using this camera with the same card and I didn't get any report of improper calibration of the maps before. About the rooms, from experience, it depends from the installation way I guess, with one camera (one vacuum) using the internal core mosquito the rooms pop out immediately. The configuration of the rooms I provided earlier will work too I guess this should close this issue.. of course I will be happy to know when your vacuum finally works as expected, as the others.

mihsu81 commented 1 year ago

After deleting and adding the camera entity again I was able to get room attributes in the entity. So I guess that was caused by migrating from an older version of the integration.

As for the calibration, I've checked the coordinates as well and it looks like they're way different than your test environment. It's like I'm sending the vacuum in my neighbors' apartment.😁

I'm wondering now if it's not an issue with the card. Any idea what could cause it? Screenshot_2023-08-27-09-29-48-77_c3a231c25ed346e59462e84656a70e50

Thanks again for your help.

mihsu81 commented 1 year ago

I've compared the calibration points and it looks like they're different compared to your test environment.

access_token: 24ffe6ddfdaf2aa476106c9cd7b84d74dbfb8329094e0f7ccd7633145a719cda
vacuum_entity: null
vacuum_status: docked
listen_to: valetudo/ROBOROCK-VACUUM
snapshot: /local/snapshot_roborock-vacuum.png
json_data: Success
vacuum_json_id: 99088397-de36-4bf2-b8df-74299c24117e
vacuum_position:
  x: 2550
  'y': 2534
  angle: 269
calibration_points:
  - vacuum:
      x: 1280
      'y': 1280
    map:
      x: 0
      'y': 0
  - vacuum:
      x: 3840
      'y': 1280
    map:
      x: 2560
      'y': 0
  - vacuum:
      x: 3840
      'y': 3840
    map:
      x: 2560
      'y': 2560
  - vacuum:
      x: 1280
      'y': 3840
    map:
      x: 0
      'y': 2560
rooms:
  '16':
    number: '16'
    outline:
      - - 1795
        - 2365
      - - 2090
        - 2365
      - - 2090
        - 2790
      - - 1795
        - 2790
    name: Sonia's Bedroom
    x: 1942
    'y': 2577
  '17':
    number: '17'
    outline:
      - - 2480
        - 2505
      - - 3025
        - 2505
      - - 3025
        - 2955
      - - 2480
        - 2955
    name: null
    x: 2752
    'y': 2730
  '18':
    number: '18'
    outline:
      - - 2460
        - 2025
      - - 2770
        - 2025
      - - 2770
        - 2205
      - - 2460
        - 2205
    name: Bathrooom 1
    x: 2615
    'y': 2115
  '19':
    number: '19'
    outline:
      - - 1800
        - 2210
      - - 2090
        - 2210
      - - 2090
        - 2330
      - - 1800
        - 2330
    name: Bathroom 2
    x: 1945
    'y': 2270
  '20':
    number: '20'
    outline:
      - - 2040
        - 1960
      - - 2525
        - 1960
      - - 2525
        - 2455
      - - 2040
        - 2455
    name: Lobby
    x: 2282
    'y': 2207
  '21':
    number: '21'
    outline:
      - - 2530
        - 2185
      - - 3005
        - 2185
      - - 3005
        - 2525
      - - 2530
        - 2525
    name: Kitchen
    x: 2767
    'y': 2355
  '22':
    number: '22'
    outline:
      - - 2100
        - 2440
      - - 2490
        - 2440
      - - 2490
        - 2900
      - - 2100
        - 2900
    name: Master Bedroom
    x: 2295
    'y': 2670
  '24':
    number: '24'
    outline:
      - - 2795
        - 2640
      - - 3350
        - 2640
      - - 3350
        - 3180
      - - 2795
        - 3180
    name: null
    x: 3072
    'y': 2910
entity_picture: >-
  /api/camera_proxy/camera.roborock_vacuum_camera?token=24ffe6ddfdaf2aa476106c9cd7b84d74dbfb8329094e0f7ccd7633145a719cda
friendly_name: ROBOROCK-VACUUM Camera
supported_features: 1
sca075 commented 1 year ago

I've compared the calibration points and it looks like they're different compared to your test environment.

access_token: 24ffe6ddfdaf2aa476106c9cd7b84d74dbfb8329094e0f7ccd7633145a719cda
vacuum_entity: null
vacuum_status: docked
listen_to: valetudo/ROBOROCK-VACUUM
snapshot: /local/snapshot_roborock-vacuum.png
json_data: Success
vacuum_json_id: 99088397-de36-4bf2-b8df-74299c24117e
vacuum_position:
  x: 2550
  'y': 2534
  angle: 269
calibration_points:
  - vacuum:
      x: 1280
      'y': 1280
    map:
      x: 0
      'y': 0
  - vacuum:
      x: 3840
      'y': 1280
    map:
      x: 2560
      'y': 0
  - vacuum:
      x: 3840
      'y': 3840
    map:
      x: 2560
      'y': 2560
  - vacuum:
      x: 1280
      'y': 3840
    map:
      x: 0
      'y': 2560
rooms:
  '16':
    number: '16'
    outline:
      - - 1795
        - 2365
      - - 2090
        - 2365
      - - 2090
        - 2790
      - - 1795
        - 2790
    name: Sonia's Bedroom
    x: 1942
    'y': 2577
  '17':
    number: '17'
    outline:
      - - 2480
        - 2505
      - - 3025
        - 2505
      - - 3025
        - 2955
      - - 2480
        - 2955
    name: null
    x: 2752
    'y': 2730
  '18':
    number: '18'
    outline:
      - - 2460
        - 2025
      - - 2770
        - 2025
      - - 2770
        - 2205
      - - 2460
        - 2205
    name: Bathrooom 1
    x: 2615
    'y': 2115
  '19':
    number: '19'
    outline:
      - - 1800
        - 2210
      - - 2090
        - 2210
      - - 2090
        - 2330
      - - 1800
        - 2330
    name: Bathroom 2
    x: 1945
    'y': 2270
  '20':
    number: '20'
    outline:
      - - 2040
        - 1960
      - - 2525
        - 1960
      - - 2525
        - 2455
      - - 2040
        - 2455
    name: Lobby
    x: 2282
    'y': 2207
  '21':
    number: '21'
    outline:
      - - 2530
        - 2185
      - - 3005
        - 2185
      - - 3005
        - 2525
      - - 2530
        - 2525
    name: Kitchen
    x: 2767
    'y': 2355
  '22':
    number: '22'
    outline:
      - - 2100
        - 2440
      - - 2490
        - 2440
      - - 2490
        - 2900
      - - 2100
        - 2900
    name: Master Bedroom
    x: 2295
    'y': 2670
  '24':
    number: '24'
    outline:
      - - 2795
        - 2640
      - - 3350
        - 2640
      - - 3350
        - 3180
      - - 2795
        - 3180
    name: null
    x: 3072
    'y': 2910
entity_picture: >-
  /api/camera_proxy/camera.roborock_vacuum_camera?token=24ffe6ddfdaf2aa476106c9cd7b84d74dbfb8329094e0f7ccd7633145a719cda
friendly_name: ROBOROCK-VACUUM Camera
supported_features: 1

yep it is because we use different rotation parameters this is why but if you look on the top, the data are the same at 0 deg. rotation, if you look at the last I posted the calibration data are rotated 180 deg. (you need to set the camera rotation to 180 deg. to get the same values). I repeat it looks the vacuum is having different coordinates than what it should be from the data you provided me via email.. also it maps rooms that aren't complete on the layout.. if those are your neighbor's coordinates I'm (joke) wander if they are using you vacuum to clean them apartment :)

I do not use the two finger pan on the card options, I don't know if this makes a difference.

if the GoToLocationCapaility payload is configured as so:

service_data:
        topic: '[[topic]]/GoToLocationCapability/go/set'
        payload: '{ "coordinates": { "x": [[point_x]], "y": [[point_y]] } }'
    predefined_selections: []

your vacuum at dock must be right now at:

vacuum_position: 
x: 2550
'y': 2534
angle: 270

The values on the card should be the same as the one I used (that by the way was just the auto generated one that I strongly recommend you to use).

type: custom:xiaomi-vacuum-map-card
map_source:
  camera: camera.ROBOROCK-VACUUM_camera
calibration_source:
  camera: true
entity: vacuum.ROBOROCK-VACUUM
vacuum_platform: Hypfer/Valetudo
internal_variables:
  topic: valetudo/ROBOROCK-VACUUM
map_modes:
  - template: vacuum_clean_zone
  - template: vacuum_goto
  - template: vacuum_clean_segment
    predefined_selections:
      - id: '16'
        icon:
          name: mdi:broom
          x: 1942
          'y': 2577
        label:
          text: Sonia's Bedroom
          x: 1942
          'y': 2577
          offset_y: 35
        outline:
          - - 1795
            - 2365
          - - 2090
            - 2365
          - - 2090
            - 2790
          - - 1795
            - 2790
      - id: '17'
        icon:
          name: mdi:broom
          x: 2752
          'y': 2730
        label:
          text: Room 17
          x: 2752
          'y': 2730
          offset_y: 35
        outline:
          - - 2480
            - 2505
          - - 3025
            - 2505
          - - 3025
            - 2955
          - - 2480
            - 2955
      - id: '18'
        icon:
          name: mdi:broom
          x: 2615
          'y': 2115
        label:
          text: Bathrooom 1
          x: 2615
          'y': 2115
          offset_y: 35
        outline:
          - - 2460
            - 2025
          - - 2770
            - 2025
          - - 2770
            - 2205
          - - 2460
            - 2205
      - id: '19'
        icon:
          name: mdi:broom
          x: 1945
          'y': 2270
        label:
          text: Bathroom 2
          x: 1945
          'y': 2270
          offset_y: 35
        outline:
          - - 1800
            - 2210
          - - 2090
            - 2210
          - - 2090
            - 2330
          - - 1800
            - 2330
      - id: '20'
        icon:
          name: mdi:broom
          x: 2282
          'y': 2207
        label:
          text: Lobby
          x: 2282
          'y': 2207
          offset_y: 35
        outline:
          - - 2040
            - 1960
          - - 2525
            - 1960
          - - 2525
            - 2455
          - - 2040
            - 2455
      - id: '21'
        icon:
          name: mdi:broom
          x: 2767
          'y': 2355
        label:
          text: Kitchen
          x: 2767
          'y': 2355
          offset_y: 35
        outline:
          - - 2530
            - 2185
          - - 3005
            - 2185
          - - 3005
            - 2525
          - - 2530
            - 2525
      - id: '22'
        icon:
          name: mdi:broom
          x: 2295
          'y': 2670
        label:
          text: Master Bedroom
          x: 2295
          'y': 2670
          offset_y: 35
        outline:
          - - 2100
            - 2440
          - - 2490
            - 2440
          - - 2490
            - 2900
          - - 2100
            - 2900
      - id: '24'
        icon:
          name: mdi:broom
          x: 3072
          'y': 2910
        label:
          text: Room 24
          x: 3072
          'y': 2910
          offset_y: 35
        outline:
          - - 2795
            - 2640
          - - 3350
            - 2640
          - - 3350
            - 3180
          - - 2795
            - 3180

You can tray with the vacuum GUI go to option and see if the problem is the same. If not by checking the coordinates of the vacuum in the camera attribute you can actually confirm the calibration data:

vacuum_position: 
x: 2632
'y': 2407

If so the card configuration can be the reason of the issue you are facing and the card configuration I just posted should help to close this issue.

Just as side note we will soon release a new version that will automatically configure the MQTT entries and select the topic to listen automatically, thanks to @rohankapoorcom work, the camera will use the internal MQTT of HA not a client like also on the recent versions.. I don't know if this will make any difference in your case.

sca075 commented 1 year ago

@mihsu81 I'm going to close this issue if you have any other question please open a discussion on this topic. Thanks for your understanding.

mihsu81 commented 1 year ago

Hi @sca075,

Indeed using your suggested config for the card fixed the issue. But shouldn't the card have been able to pick up the calibration data directly from the camera, like is the case with non-Valetudo vacuums?

Anyway, thanks a lot for your help.

sca075 commented 1 year ago

@mihsu81 ,

Either the card and camera, seems working fine. Probably the issue was simple a card configuration issue?

It was my pleasure to assist you :)

sca075 commented 1 year ago

@mihsu81 you know what? I think I found the issue with the old card you used, the calibration points come from the camera not from identity this was as per written on the read me a card configuration issue from your side. Anyhow I hope you are now enjoying the experience with our camera 😉