diff --git a/homeassistant/components/braviatv/coordinator.py b/homeassistant/components/braviatv/coordinator.py
index b5d91263b34e51e0f5d148e30b242f79f8136f16..bb6bf59f681cb5efdbb7fa1a2e177e871bbd040e 100644
--- a/homeassistant/components/braviatv/coordinator.py
+++ b/homeassistant/components/braviatv/coordinator.py
@@ -10,6 +10,7 @@ from typing import Any, Final, TypeVar
 from pybravia import BraviaTV, BraviaTVError
 from typing_extensions import Concatenate, ParamSpec
 
+from homeassistant.components import persistent_notification
 from homeassistant.components.media_player.const import (
     MEDIA_TYPE_APP,
     MEDIA_TYPE_CHANNEL,
@@ -256,3 +257,16 @@ class BraviaTVCoordinator(DataUpdateCoordinator[None]):
         for _ in range(repeats):
             for cmd in command:
                 await self.client.send_command(cmd)
+
+    @catch_braviatv_errors
+    async def async_learn_command(self, entity_id: str) -> None:
+        """Display a list of available commands in a persistent notification."""
+        commands = await self.client.get_command_list()
+        codes = ", ".join(commands.keys())
+        title = "Bravia TV"
+        message = f"**List of available commands for `{entity_id}`**:\n\n{codes}"
+        persistent_notification.async_create(
+            self.hass,
+            title=title,
+            message=message,
+        )
diff --git a/homeassistant/components/braviatv/remote.py b/homeassistant/components/braviatv/remote.py
index f45b2d740041b8e3f67d91334869eca0364beee6..411b459fcedd1bdfbe86a8a4cb1d96b5a3058a39 100644
--- a/homeassistant/components/braviatv/remote.py
+++ b/homeassistant/components/braviatv/remote.py
@@ -47,3 +47,7 @@ class BraviaTVRemote(BraviaTVEntity, RemoteEntity):
         """Send a command to device."""
         repeats = kwargs[ATTR_NUM_REPEATS]
         await self.coordinator.async_send_command(command, repeats)
+
+    async def async_learn_command(self, **kwargs: Any) -> None:
+        """Learn commands from the device."""
+        await self.coordinator.async_learn_command(self.entity_id)