diff --git a/homeassistant/components/broadlink/const.py b/homeassistant/components/broadlink/const.py
index 91d4358a077385d8bf21bb285a089a213aa5711c..41c4964c2b369372a7daf43660c8b7a856685c6f 100644
--- a/homeassistant/components/broadlink/const.py
+++ b/homeassistant/components/broadlink/const.py
@@ -9,6 +9,7 @@ DOMAINS_AND_TYPES = {
     Platform.REMOTE: {"RM4MINI", "RM4PRO", "RMMINI", "RMMINIB", "RMPRO"},
     Platform.SENSOR: {
         "A1",
+        "MP1S",
         "RM4MINI",
         "RM4PRO",
         "RMPRO",
@@ -20,6 +21,7 @@ DOMAINS_AND_TYPES = {
     Platform.SWITCH: {
         "BG1",
         "MP1",
+        "MP1S",
         "RM4MINI",
         "RM4PRO",
         "RMMINI",
diff --git a/homeassistant/components/broadlink/manifest.json b/homeassistant/components/broadlink/manifest.json
index 7fd925a2ff4b14464420e51ef4d1b4fef368c69c..bf5dfb16584c644228f7c60d923c9cbde7d23c48 100644
--- a/homeassistant/components/broadlink/manifest.json
+++ b/homeassistant/components/broadlink/manifest.json
@@ -38,5 +38,5 @@
   "documentation": "https://www.home-assistant.io/integrations/broadlink",
   "iot_class": "local_polling",
   "loggers": ["broadlink"],
-  "requirements": ["broadlink==0.18.3"]
+  "requirements": ["broadlink==0.19.0"]
 }
diff --git a/homeassistant/components/broadlink/remote.py b/homeassistant/components/broadlink/remote.py
index f8d903c51eb76a1c6d9ff4706767dfa2f4ac755c..55368e5ff59ee2aa893b9e57dc24d9e0ccc6f9f7 100644
--- a/homeassistant/components/broadlink/remote.py
+++ b/homeassistant/components/broadlink/remote.py
@@ -373,7 +373,7 @@ class BroadlinkRemote(BroadlinkEntity, RemoteEntity, RestoreEntity):
             start_time = dt_util.utcnow()
             while (dt_util.utcnow() - start_time) < LEARNING_TIMEOUT:
                 await asyncio.sleep(1)
-                found = await device.async_request(device.api.check_frequency)
+                found = await device.async_request(device.api.check_frequency)[0]
                 if found:
                     break
             else:
diff --git a/homeassistant/components/broadlink/switch.py b/homeassistant/components/broadlink/switch.py
index f61e726b1d576f04d6ba84c9e86380cdf7d1d5a5..9cf7e3391fa4530ac28c9b0017e7063b1a1a0868 100644
--- a/homeassistant/components/broadlink/switch.py
+++ b/homeassistant/components/broadlink/switch.py
@@ -129,7 +129,7 @@ async def async_setup_entry(
     elif device.api.type == "BG1":
         switches.extend(BroadlinkBG1Slot(device, slot) for slot in range(1, 3))
 
-    elif device.api.type == "MP1":
+    elif device.api.type in {"MP1", "MP1S"}:
         switches.extend(BroadlinkMP1Slot(device, slot) for slot in range(1, 5))
 
     async_add_entities(switches)
diff --git a/homeassistant/components/broadlink/updater.py b/homeassistant/components/broadlink/updater.py
index 20b241b0d89aa3425d50c69d79bddda82ffb7eb3..f678af0105fda172d0e9469961f101c4715728ef 100644
--- a/homeassistant/components/broadlink/updater.py
+++ b/homeassistant/components/broadlink/updater.py
@@ -21,6 +21,7 @@ def get_update_manager(device):
         "LB1": BroadlinkLB1UpdateManager,
         "LB2": BroadlinkLB1UpdateManager,
         "MP1": BroadlinkMP1UpdateManager,
+        "MP1S": BroadlinkMP1SUpdateManager,
         "RM4MINI": BroadlinkRMUpdateManager,
         "RM4PRO": BroadlinkRMUpdateManager,
         "RMMINI": BroadlinkRMUpdateManager,
@@ -112,6 +113,16 @@ class BroadlinkMP1UpdateManager(BroadlinkUpdateManager):
         return await self.device.async_request(self.device.api.check_power)
 
 
+class BroadlinkMP1SUpdateManager(BroadlinkUpdateManager):
+    """Manages updates for Broadlink MP1 devices."""
+
+    async def async_fetch_data(self):
+        """Fetch data from the device."""
+        power = await self.device.async_request(self.device.api.check_power)
+        sensors = await self.device.async_request(self.device.api.get_state)
+        return {**power, **sensors}
+
+
 class BroadlinkRMUpdateManager(BroadlinkUpdateManager):
     """Manages updates for Broadlink remotes."""
 
diff --git a/requirements_all.txt b/requirements_all.txt
index a9bc97d91581b39682236a8cf7fddc1da07da8be..66c36c7ac18d3980ff0ca1bec806bd9d0d0e1003 100644
--- a/requirements_all.txt
+++ b/requirements_all.txt
@@ -601,7 +601,7 @@ boto3==1.34.51
 bring-api==0.5.7
 
 # homeassistant.components.broadlink
-broadlink==0.18.3
+broadlink==0.19.0
 
 # homeassistant.components.brother
 brother==4.1.0
diff --git a/requirements_test_all.txt b/requirements_test_all.txt
index 6c40bd21e84688463aee6a7f351448a21a5fb2c1..5bac0527854ad7d902387f3543995e99a59b68cc 100644
--- a/requirements_test_all.txt
+++ b/requirements_test_all.txt
@@ -512,7 +512,7 @@ boschshcpy==0.2.91
 bring-api==0.5.7
 
 # homeassistant.components.broadlink
-broadlink==0.18.3
+broadlink==0.19.0
 
 # homeassistant.components.brother
 brother==4.1.0