diff --git a/homeassistant/components/upb/__init__.py b/homeassistant/components/upb/__init__.py
index a3c3016dc054b2db0384123f7ad804eef3c414b6..90d7c35cf64b122e8941b11e5ffd82f35b9e9456 100644
--- a/homeassistant/components/upb/__init__.py
+++ b/homeassistant/components/upb/__init__.py
@@ -4,7 +4,7 @@ import upb_lib
 
 from homeassistant.const import ATTR_COMMAND, CONF_FILE_PATH, CONF_HOST
 from homeassistant.core import callback
-from homeassistant.helpers.entity import Entity
+from homeassistant.helpers.entity import DeviceInfo, Entity
 
 from .const import (
     ATTR_ADDRESS,
@@ -119,12 +119,12 @@ class UpbAttachedEntity(UpbEntity):
     """Base class for UPB attached entities."""
 
     @property
-    def device_info(self):
+    def device_info(self) -> DeviceInfo:
         """Device info for the entity."""
-        return {
-            "name": self._element.name,
-            "identifiers": {(DOMAIN, self._element.index)},
-            "sw_version": self._element.version,
-            "manufacturer": self._element.manufacturer,
-            "model": self._element.product,
-        }
+        return DeviceInfo(
+            identifiers={(DOMAIN, self._element.index)},
+            manufacturer=self._element.manufacturer,
+            model=self._element.product,
+            name=self._element.name,
+            sw_version=self._element.version,
+        )