diff --git a/homeassistant/components/husqvarna_automower/manifest.json b/homeassistant/components/husqvarna_automower/manifest.json
index f27b04ef0c0b52e2c4384122ecf6ca9c730f828c..bb03806e417af7e26a2197de20f65bace5571c15 100644
--- a/homeassistant/components/husqvarna_automower/manifest.json
+++ b/homeassistant/components/husqvarna_automower/manifest.json
@@ -7,5 +7,5 @@
   "documentation": "https://www.home-assistant.io/integrations/husqvarna_automower",
   "iot_class": "cloud_push",
   "loggers": ["aioautomower"],
-  "requirements": ["aioautomower==2024.6.4"]
+  "requirements": ["aioautomower==2024.7.3"]
 }
diff --git a/homeassistant/components/husqvarna_automower/sensor.py b/homeassistant/components/husqvarna_automower/sensor.py
index 2c8d369ea3aaf3020afaec46d8b5198ae3197b1e..bd0b8561223e9db6272bec0f75f6e43b38cabf27 100644
--- a/homeassistant/components/husqvarna_automower/sensor.py
+++ b/homeassistant/components/husqvarna_automower/sensor.py
@@ -5,8 +5,10 @@ from dataclasses import dataclass
 from datetime import datetime
 import logging
 from typing import TYPE_CHECKING
+from zoneinfo import ZoneInfo
 
 from aioautomower.model import MowerAttributes, MowerModes, RestrictedReasons
+from aioautomower.utils import naive_to_aware
 
 from homeassistant.components.sensor import (
     SensorDeviceClass,
@@ -18,6 +20,7 @@ from homeassistant.const import PERCENTAGE, EntityCategory, UnitOfLength, UnitOf
 from homeassistant.core import HomeAssistant, callback
 from homeassistant.helpers.entity_platform import AddEntitiesCallback
 from homeassistant.helpers.typing import StateType
+from homeassistant.util import dt as dt_util
 
 from . import AutomowerConfigEntry
 from .coordinator import AutomowerDataUpdateCoordinator
@@ -324,7 +327,10 @@ SENSOR_TYPES: tuple[AutomowerSensorEntityDescription, ...] = (
         key="next_start_timestamp",
         translation_key="next_start_timestamp",
         device_class=SensorDeviceClass.TIMESTAMP,
-        value_fn=lambda data: data.planner.next_start_datetime,
+        value_fn=lambda data: naive_to_aware(
+            data.planner.next_start_datetime_naive,
+            ZoneInfo(str(dt_util.DEFAULT_TIME_ZONE)),
+        ),
     ),
     AutomowerSensorEntityDescription(
         key="error",
diff --git a/requirements_all.txt b/requirements_all.txt
index f46ed9dd53a70e384c46b7ebaa47273a7057a353..8aebf250fd4df43d317e8d54776710bd5f6c0375 100644
--- a/requirements_all.txt
+++ b/requirements_all.txt
@@ -198,7 +198,7 @@ aioaseko==0.2.0
 aioasuswrt==1.4.0
 
 # homeassistant.components.husqvarna_automower
-aioautomower==2024.6.4
+aioautomower==2024.7.3
 
 # homeassistant.components.azure_devops
 aioazuredevops==2.1.1
diff --git a/requirements_test_all.txt b/requirements_test_all.txt
index 2750dd4cc9603aea290c3adbdec5b15608a32e2e..859154b28378f45fdfb88ce7be901973322f2733 100644
--- a/requirements_test_all.txt
+++ b/requirements_test_all.txt
@@ -186,7 +186,7 @@ aioaseko==0.2.0
 aioasuswrt==1.4.0
 
 # homeassistant.components.husqvarna_automower
-aioautomower==2024.6.4
+aioautomower==2024.7.3
 
 # homeassistant.components.azure_devops
 aioazuredevops==2.1.1
diff --git a/tests/components/husqvarna_automower/__init__.py b/tests/components/husqvarna_automower/__init__.py
index 8c51d69ba3dea3c0bfbdf294496b9f4f18943824..9473b68a5ed84daf0b3d4133bf55328daa00ed16 100644
--- a/tests/components/husqvarna_automower/__init__.py
+++ b/tests/components/husqvarna_automower/__init__.py
@@ -7,6 +7,10 @@ from tests.common import MockConfigEntry
 
 async def setup_integration(hass: HomeAssistant, config_entry: MockConfigEntry) -> None:
     """Fixture for setting up the component."""
+    # We lock the timezone, because the timezone is passed to the library to generate
+    # some values like the next start sensor. This is needed, as the device is not aware
+    # of its own timezone. So we assume the device is in the timezone which is selected in
+    # the Home Assistant config.
+    await hass.config.async_set_time_zone("Europe/Berlin")
     config_entry.add_to_hass(hass)
-
     await hass.config_entries.async_setup(config_entry.entry_id)
diff --git a/tests/components/husqvarna_automower/snapshots/test_diagnostics.ambr b/tests/components/husqvarna_automower/snapshots/test_diagnostics.ambr
index d8cd748c7938d7880e048bfc6875c24d52be2dd8..212be85ce51571878082769a9cc731cb524ad42e 100644
--- a/tests/components/husqvarna_automower/snapshots/test_diagnostics.ambr
+++ b/tests/components/husqvarna_automower/snapshots/test_diagnostics.ambr
@@ -7,18 +7,20 @@
     'calendar': dict({
       'events': list([
         dict({
-          'end': '2024-03-02T00:00:00+00:00',
+          'end': '2024-03-02T00:00:00',
           'rrule': 'FREQ=WEEKLY;BYDAY=MO,WE,FR',
-          'start': '2024-03-01T19:00:00+00:00',
+          'start': '2024-03-01T19:00:00',
           'uid': '1140_300_MO,WE,FR',
           'work_area_id': None,
+          'work_area_name': None,
         }),
         dict({
-          'end': '2024-03-02T08:00:00+00:00',
+          'end': '2024-03-02T08:00:00',
           'rrule': 'FREQ=WEEKLY;BYDAY=TU,TH,SA',
-          'start': '2024-03-02T00:00:00+00:00',
+          'start': '2024-03-02T00:00:00',
           'uid': '0_480_TU,TH,SA',
           'work_area_id': None,
+          'work_area_name': None,
         }),
       ]),
       'tasks': list([
@@ -33,6 +35,7 @@
           'tuesday': False,
           'wednesday': True,
           'work_area_id': None,
+          'work_area_name': None,
         }),
         dict({
           'duration': 480,
@@ -45,6 +48,7 @@
           'tuesday': True,
           'wednesday': False,
           'work_area_id': None,
+          'work_area_name': None,
         }),
       ]),
     }),
@@ -61,17 +65,18 @@
     'mower': dict({
       'activity': 'PARKED_IN_CS',
       'error_code': 0,
-      'error_datetime': None,
       'error_datetime_naive': None,
       'error_key': None,
+      'error_timestamp': 0,
       'inactive_reason': 'NONE',
       'is_error_confirmable': False,
       'mode': 'MAIN_AREA',
       'state': 'RESTRICTED',
       'work_area_id': 123456,
+      'work_area_name': 'Front lawn',
     }),
     'planner': dict({
-      'next_start_datetime': '2023-06-05T19:00:00+00:00',
+      'next_start': 1685991600000,
       'next_start_datetime_naive': '2023-06-05T19:00:00',
       'override': dict({
         'action': 'NOT_ACTIVE',
@@ -113,6 +118,17 @@
       'name': 'Test Mower 1',
       'serial_number': 123,
     }),
+    'work_area_dict': dict({
+      '0': 'my_lawn',
+      '123456': 'Front lawn',
+      '654321': 'Back lawn',
+    }),
+    'work_area_names': list([
+      'Front lawn',
+      'Back lawn',
+      'my_lawn',
+      'no_work_area_active',
+    ]),
     'work_areas': dict({
       '0': dict({
         'cutting_height': 50,
diff --git a/tests/components/husqvarna_automower/snapshots/test_sensor.ambr b/tests/components/husqvarna_automower/snapshots/test_sensor.ambr
index 935303e48fbe4e523fad107b7a22068996829cbf..730971a47ddd942a74a42a2629674d4d04f7db07 100644
--- a/tests/components/husqvarna_automower/snapshots/test_sensor.ambr
+++ b/tests/components/husqvarna_automower/snapshots/test_sensor.ambr
@@ -548,7 +548,7 @@
     'last_changed': <ANY>,
     'last_reported': <ANY>,
     'last_updated': <ANY>,
-    'state': '2023-06-05T19:00:00+00:00',
+    'state': '2023-06-05T17:00:00+00:00',
   })
 # ---
 # name: test_sensor_snapshot[sensor.test_mower_1_none-entry]
diff --git a/tests/components/husqvarna_automower/test_sensor.py b/tests/components/husqvarna_automower/test_sensor.py
index 314bcaaa00cb46b943be0d00ed281ae33da20851..1a4f545ac96f2b581e558f6d660ba102ae5c5283 100644
--- a/tests/components/husqvarna_automower/test_sensor.py
+++ b/tests/components/husqvarna_automower/test_sensor.py
@@ -73,12 +73,12 @@ async def test_next_start_sensor(
     await setup_integration(hass, mock_config_entry)
     state = hass.states.get("sensor.test_mower_1_next_start")
     assert state is not None
-    assert state.state == "2023-06-05T19:00:00+00:00"
+    assert state.state == "2023-06-05T17:00:00+00:00"
 
     values = mower_list_to_dictionary_dataclass(
         load_json_value_fixture("mower.json", DOMAIN)
     )
-    values[TEST_MOWER_ID].planner.next_start_datetime = None
+    values[TEST_MOWER_ID].planner.next_start_datetime_naive = None
     mock_automower_client.get_status.return_value = values
     freezer.tick(SCAN_INTERVAL)
     async_fire_time_changed(hass)