diff --git a/homeassistant/components/bthome/translations/bg.json b/homeassistant/components/bthome/translations/bg.json
new file mode 100644
index 0000000000000000000000000000000000000000..e8427c2398668f29d248b15ee1d9d32e9164149b
--- /dev/null
+++ b/homeassistant/components/bthome/translations/bg.json
@@ -0,0 +1,19 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e",
+            "reauth_successful": "\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0442\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0432\u0430\u043d\u0435 \u0431\u0435\u0448\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e"
+        },
+        "flow_title": "{name}",
+        "step": {
+            "bluetooth_confirm": {
+                "description": "\u0418\u0441\u043a\u0430\u0442\u0435 \u043b\u0438 \u0434\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u0435 {name}?"
+            },
+            "user": {
+                "data": {
+                    "address": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/dlna_dmr/translations/zh-Hant.json b/homeassistant/components/dlna_dmr/translations/zh-Hant.json
index 07293607685174de5f43efbb60b24cb71444261f..571f6dcfd0967403ffb016fbaefa55ef8b6ebd73 100644
--- a/homeassistant/components/dlna_dmr/translations/zh-Hant.json
+++ b/homeassistant/components/dlna_dmr/translations/zh-Hant.json
@@ -33,7 +33,7 @@
                     "host": "\u4e3b\u6a5f\u7aef"
                 },
                 "description": "\u9078\u64c7\u88dd\u7f6e\u9032\u884c\u8a2d\u5b9a\u6216\u4fdd\u7559\u7a7a\u767d\u4ee5\u8f38\u5165 URL",
-                "title": "\u5df2\u767c\u73fe\u7684 DLNA DMR \u88dd\u7f6e"
+                "title": "\u81ea\u52d5\u641c\u7d22\u5230\u7684 DLNA DMR \u88dd\u7f6e"
             }
         }
     },
diff --git a/homeassistant/components/dlna_dms/translations/zh-Hant.json b/homeassistant/components/dlna_dms/translations/zh-Hant.json
index 404b9b29b9ac6ecc1b4a7883bb9e908926a50628..b2f5f3e147bf282d555175cc168e5253a0eb0c40 100644
--- a/homeassistant/components/dlna_dms/translations/zh-Hant.json
+++ b/homeassistant/components/dlna_dms/translations/zh-Hant.json
@@ -17,7 +17,7 @@
                     "host": "\u4e3b\u6a5f\u7aef"
                 },
                 "description": "\u9078\u64c7\u6240\u8981\u8a2d\u5b9a\u7684\u88dd\u7f6e",
-                "title": "\u5df2\u767c\u73fe\u7684 DLNA DMA \u88dd\u7f6e"
+                "title": "\u81ea\u52d5\u641c\u7d22\u5230\u7684 DLNA DMA \u88dd\u7f6e"
             }
         }
     }
diff --git a/homeassistant/components/ecowitt/translations/bg.json b/homeassistant/components/ecowitt/translations/bg.json
new file mode 100644
index 0000000000000000000000000000000000000000..5d274ec2b73c7744a2a3ac27691d4a11c9481407
--- /dev/null
+++ b/homeassistant/components/ecowitt/translations/bg.json
@@ -0,0 +1,7 @@
+{
+    "config": {
+        "error": {
+            "unknown": "\u041d\u0435\u043e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430"
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/ecowitt/translations/ja.json b/homeassistant/components/ecowitt/translations/ja.json
index 0ac12f0af77e42db7d9d8db4b22c0c230e2b3713..821eb535e7ba5cd312ecfc13960b40f72a36d934 100644
--- a/homeassistant/components/ecowitt/translations/ja.json
+++ b/homeassistant/components/ecowitt/translations/ja.json
@@ -9,7 +9,8 @@
                 "data": {
                     "path": "\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30c8\u30fc\u30af\u30f3\u3092\u542b\u3080\u30d1\u30b9",
                     "port": "\u30ea\u30b9\u30cb\u30f3\u30b0\u30dd\u30fc\u30c8"
-                }
+                },
+                "description": "Ecowitt\u3092\u3001\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b\uff1f"
             }
         }
     }
diff --git a/homeassistant/components/icloud/translations/bg.json b/homeassistant/components/icloud/translations/bg.json
index bd81093beb01c53f790e1ee77df0cd1d0ff58a40..c4ebf72f36a0dce03dd875e33b3190d495b53208 100644
--- a/homeassistant/components/icloud/translations/bg.json
+++ b/homeassistant/components/icloud/translations/bg.json
@@ -14,6 +14,11 @@
                     "password": "\u041f\u0430\u0440\u043e\u043b\u0430"
                 }
             },
+            "reauth_confirm": {
+                "data": {
+                    "password": "\u041f\u0430\u0440\u043e\u043b\u0430"
+                }
+            },
             "user": {
                 "data": {
                     "password": "\u041f\u0430\u0440\u043e\u043b\u0430",
diff --git a/homeassistant/components/kodi/translations/zh-Hant.json b/homeassistant/components/kodi/translations/zh-Hant.json
index 169ad92e96b3ddbc9fcfa6ff2b8c94c0342ce2cc..7e72914d672172006c18acc462cae54e9387d239 100644
--- a/homeassistant/components/kodi/translations/zh-Hant.json
+++ b/homeassistant/components/kodi/translations/zh-Hant.json
@@ -23,7 +23,7 @@
             },
             "discovery_confirm": {
                 "description": "\u662f\u5426\u8981\u65b0\u589e Kodi (`{name}`) \u81f3 Home Assistant\uff1f",
-                "title": "\u5df2\u767c\u73fe\u7684 Kodi"
+                "title": "\u81ea\u52d5\u641c\u7d22\u5230\u7684 Kodi"
             },
             "user": {
                 "data": {
diff --git a/homeassistant/components/led_ble/translations/bg.json b/homeassistant/components/led_ble/translations/bg.json
new file mode 100644
index 0000000000000000000000000000000000000000..049c268441517bf83199c5dac73dc0d71f31ecc5
--- /dev/null
+++ b/homeassistant/components/led_ble/translations/bg.json
@@ -0,0 +1,19 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
+        },
+        "error": {
+            "cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435",
+            "unknown": "\u041d\u0435\u043e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430"
+        },
+        "flow_title": "{name}",
+        "step": {
+            "user": {
+                "data": {
+                    "address": "Bluetooth \u0430\u0434\u0440\u0435\u0441"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/litterrobot/translations/bg.json b/homeassistant/components/litterrobot/translations/bg.json
index bad1fba5a872a3fbd5d61836fb86838bac99efc9..657ad4878beed367523d4009abc876c24501bfb6 100644
--- a/homeassistant/components/litterrobot/translations/bg.json
+++ b/homeassistant/components/litterrobot/translations/bg.json
@@ -1,9 +1,18 @@
 {
     "config": {
+        "abort": {
+            "reauth_successful": "\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0442\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0432\u0430\u043d\u0435 \u0431\u0435\u0448\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e"
+        },
         "error": {
             "cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
         },
         "step": {
+            "reauth_confirm": {
+                "data": {
+                    "password": "\u041f\u0430\u0440\u043e\u043b\u0430"
+                },
+                "description": "\u041c\u043e\u043b\u044f, \u0430\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u0439\u0442\u0435 \u043f\u0430\u0440\u043e\u043b\u0430\u0442\u0430 \u0441\u0438 \u0437\u0430 {username}"
+            },
             "user": {
                 "data": {
                     "password": "\u041f\u0430\u0440\u043e\u043b\u0430",
diff --git a/homeassistant/components/litterrobot/translations/ja.json b/homeassistant/components/litterrobot/translations/ja.json
index 6972cf2318a4b93fd9934aae027c46635dafa1d7..0106d4b63c67c9e2b626e30297c8ca0d08b146e2 100644
--- a/homeassistant/components/litterrobot/translations/ja.json
+++ b/homeassistant/components/litterrobot/translations/ja.json
@@ -14,6 +14,7 @@
                 "data": {
                     "password": "\u30d1\u30b9\u30ef\u30fc\u30c9"
                 },
+                "description": "{username} \u306e\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u66f4\u65b0\u3057\u3066\u304f\u3060\u3055\u3044",
                 "title": "\u7d71\u5408\u306e\u518d\u8a8d\u8a3c"
             },
             "user": {
diff --git a/homeassistant/components/melnor/translations/ja.json b/homeassistant/components/melnor/translations/ja.json
new file mode 100644
index 0000000000000000000000000000000000000000..5fe71d5781c3e945c61e35a5b136b5d831207070
--- /dev/null
+++ b/homeassistant/components/melnor/translations/ja.json
@@ -0,0 +1,13 @@
+{
+    "config": {
+        "abort": {
+            "no_devices_found": "Melnor Bluetooth\u30c7\u30d0\u30a4\u30b9\u304c\u8fd1\u304f\u306b\u3042\u308a\u307e\u305b\u3093\u3002"
+        },
+        "step": {
+            "bluetooth_confirm": {
+                "description": "Melnor Bluetooth\u30d0\u30eb\u30d6 `{name}` \u3092\u3001Home Assistan\u306b\u8ffd\u52a0\u3057\u307e\u3059\u304b\uff1f",
+                "title": "Melnor Bluetooth\u30d0\u30eb\u30d6\u3092\u767a\u898b"
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/melnor/translations/zh-Hant.json b/homeassistant/components/melnor/translations/zh-Hant.json
index 71bc8f3371603a22e79c07002237d905be870180..0374906bb4b6930bc37326812e12c4bb01e9a199 100644
--- a/homeassistant/components/melnor/translations/zh-Hant.json
+++ b/homeassistant/components/melnor/translations/zh-Hant.json
@@ -6,7 +6,7 @@
         "step": {
             "bluetooth_confirm": {
                 "description": "\u662f\u5426\u8981\u5c07 Melnor Bluetooth valve `{name}`\u65b0\u589e\u81f3 Home Assistant\uff1f",
-                "title": "\u5df2\u767c\u73fe\u7684 Melnor Bluetooth valve"
+                "title": "\u81ea\u52d5\u641c\u7d22\u5230\u7684 Melnor Bluetooth valve"
             }
         }
     }
diff --git a/homeassistant/components/mqtt/translations/ja.json b/homeassistant/components/mqtt/translations/ja.json
index 07af6230aa6b8e2a864ff246550b548cdfe6e7dd..dd344b593741710d8f3082a949ba70a6941fb1b4 100644
--- a/homeassistant/components/mqtt/translations/ja.json
+++ b/homeassistant/components/mqtt/translations/ja.json
@@ -49,6 +49,11 @@
             "button_triple_press": "\"{subtype}\" 3\u56de\u30af\u30ea\u30c3\u30af"
         }
     },
+    "issues": {
+        "deprecated_yaml": {
+            "title": "\u624b\u52d5\u3067\u8a2d\u5b9a\u3057\u305f\u3001MQTT {platform} \u306b\u306f\u6ce8\u610f\u304c\u5fc5\u8981\u3067\u3059"
+        }
+    },
     "options": {
         "error": {
             "bad_birth": "(\u7121\u52b9\u306a)Invalid birth topic.",
diff --git a/homeassistant/components/nest/translations/ja.json b/homeassistant/components/nest/translations/ja.json
index 06c5e54ef88f8e05da02dcb631a3c9f1c856ee99..f7c3afd128a99dc3d3abdeb3b204233b55d490f5 100644
--- a/homeassistant/components/nest/translations/ja.json
+++ b/homeassistant/components/nest/translations/ja.json
@@ -31,6 +31,7 @@
                 "title": "Google\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u30ea\u30f3\u30af\u3059\u308b"
             },
             "auth_upgrade": {
+                "description": "App Auth\u306f\u3001\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u3092\u5411\u4e0a\u3055\u305b\u308b\u305f\u3081\u306bGoogle\u306b\u3088\u3063\u3066\u5ec3\u6b62\u3055\u308c\u307e\u3057\u305f\u3002\u65b0\u3057\u3044\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u8cc7\u683c\u60c5\u5831\u3092\u4f5c\u6210\u3059\u308b\u3053\u3068\u304c\u5fc5\u8981\u3067\u3059\u3002 \n\n [\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8]({more_info_url}) \u3092\u958b\u304d\u3001\u6b21\u306e\u624b\u9806\u306b\u5f93\u3063\u3066\u3001Nest\u30c7\u30d0\u30a4\u30b9\u3078\u306e\u30a2\u30af\u30bb\u30b9\u3092\u5fa9\u5143\u3059\u308b\u305f\u3081\u306b\u5fc5\u8981\u306a\u624b\u9806\u3092\u8aac\u660e\u3057\u307e\u3059\u3002",
                 "title": "\u30cd\u30b9\u30c8: \u30a2\u30d7\u30ea\u8a8d\u8a3c\u306e\u975e\u63a8\u5968"
             },
             "cloud_project": {
diff --git a/homeassistant/components/nest/translations/nl.json b/homeassistant/components/nest/translations/nl.json
index 8f5e0db9900a4aa307552a88d6745c45ddcb0269..95ddcd4184dd4348f0ea14f474bee180d29ddf89 100644
--- a/homeassistant/components/nest/translations/nl.json
+++ b/homeassistant/components/nest/translations/nl.json
@@ -67,5 +67,10 @@
             "camera_sound": "Geluid gedetecteerd",
             "doorbell_chime": "Deurbel is ingedrukt"
         }
+    },
+    "issues": {
+        "removed_app_auth": {
+            "description": "Om de beveiliging te verbeteren en het risico op phishing te verminderen, heeft Google de authenticatiemethode die door Home Assistant wordt gebruikt, be\u00ebindigd. \n\n **Dit vereist actie van jou om dit op te lossen** ([meer info]( {more_info_url} )) \n\n 1. Bezoek de integratiepagina.\n 2. Klik op Opnieuw configureren in de Nest-integratie.\n 3. Home Assistant leidt je door de stappen om te upgraden naar webauthenticatie. \n\n Zie de Nest [integratie-instructies]( {documentation_url} ) voor informatie over het oplossen van problemen."
+        }
     }
 }
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/bg.json b/homeassistant/components/nobo_hub/translations/bg.json
new file mode 100644
index 0000000000000000000000000000000000000000..421434da3fd0d5022fa5d8db0ef7ade4051a6158
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/bg.json
@@ -0,0 +1,19 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
+        },
+        "error": {
+            "invalid_ip": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u0435\u043d IP \u0430\u0434\u0440\u0435\u0441",
+            "invalid_serial": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u0435\u043d \u0441\u0435\u0440\u0438\u0435\u043d \u043d\u043e\u043c\u0435\u0440",
+            "unknown": "\u041d\u0435\u043e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "IP \u0430\u0434\u0440\u0435\u0441"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/de.json b/homeassistant/components/nobo_hub/translations/de.json
new file mode 100644
index 0000000000000000000000000000000000000000..f3c392c1f5bde07c7982a350d0faf797dfa194d5
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/de.json
@@ -0,0 +1,44 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "Ger\u00e4t ist bereits konfiguriert"
+        },
+        "error": {
+            "cannot_connect": "Verbindung fehlgeschlagen - Seriennummer pr\u00fcfen",
+            "invalid_ip": "Ung\u00fcltige IP-Adresse",
+            "invalid_serial": "Ung\u00fcltige Seriennummer",
+            "unknown": "Unerwarteter Fehler"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "IP-Adresse",
+                    "serial": "Seriennummer (12 Ziffern)"
+                },
+                "description": "Konfiguriere einen Nob\u00f8 Ecohub, der nicht in deinem lokalen Netzwerk gefunden wurde. Wenn sich dein Hub in einem anderen Netzwerk befindet, kannst du dich trotzdem mit ihm verbinden, indem du die vollst\u00e4ndige Seriennummer (12 Ziffern) und seine IP-Adresse eingibst."
+            },
+            "selected": {
+                "data": {
+                    "serial_suffix": "Seriennummern-Suffix (3 Ziffern)"
+                },
+                "description": "Konfigurieren von {hub}. Um eine Verbindung zum Hub herzustellen, musst du die letzten 3 Ziffern der Seriennummer des Hubs eingeben."
+            },
+            "user": {
+                "data": {
+                    "device": "Entdeckte Hubs"
+                },
+                "description": "W\u00e4hle den Nob\u00f8 Ecohub zum Konfigurieren."
+            }
+        }
+    },
+    "options": {
+        "step": {
+            "init": {
+                "data": {
+                    "override_type": "Typ \u00fcberschreiben"
+                },
+                "description": "W\u00e4hle die \u00dcberschreibungsart \"Jetzt\", um die \u00dcberschreibung bei der n\u00e4chsten Profil\u00e4nderung in der Woche zu beenden."
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/el.json b/homeassistant/components/nobo_hub/translations/el.json
new file mode 100644
index 0000000000000000000000000000000000000000..946b841361eaa880eea1b8cef174ad99e447d8a1
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/el.json
@@ -0,0 +1,44 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "\u0397 \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ae \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af"
+        },
+        "error": {
+            "cannot_connect": "\u0391\u03c0\u03ad\u03c4\u03c5\u03c7\u03b5 \u03b7 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7 - \u03b5\u03bb\u03ad\u03b3\u03be\u03c4\u03b5 \u03c4\u03bf\u03bd \u03c3\u03b5\u03b9\u03c1\u03b9\u03b1\u03ba\u03cc \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc",
+            "invalid_ip": "\u039c\u03b7 \u03ad\u03b3\u03ba\u03c5\u03c1\u03b7 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 IP",
+            "invalid_serial": "\u039c\u03b7 \u03ad\u03b3\u03b3\u03c5\u03c1\u03bf\u03c2 \u03c3\u03b5\u03b9\u03c1\u03b9\u03b1\u03ba\u03cc\u03c2 \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc\u03c2",
+            "unknown": "\u0391\u03c0\u03c1\u03cc\u03c3\u03bc\u03b5\u03bd\u03bf \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "\u0394\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 IP",
+                    "serial": "\u03a3\u03b5\u03b9\u03c1\u03b9\u03b1\u03ba\u03cc\u03c2 \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc\u03c2 (12 \u03c8\u03b7\u03c6\u03af\u03b1)"
+                },
+                "description": "\u0394\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03ce\u03c3\u03c4\u03b5 \u03ad\u03bd\u03b1 Nob\u00f8 Ecohub \u03c0\u03bf\u03c5 \u03b4\u03b5\u03bd \u03b1\u03bd\u03b1\u03ba\u03b1\u03bb\u03cd\u03c6\u03b8\u03b7\u03ba\u03b5 \u03c3\u03c4\u03bf \u03c4\u03bf\u03c0\u03b9\u03ba\u03cc \u03c3\u03b1\u03c2 \u03b4\u03af\u03ba\u03c4\u03c5\u03bf. \u0395\u03ac\u03bd \u03bf \u03b4\u03b9\u03b1\u03bd\u03bf\u03bc\u03ad\u03b1\u03c2 \u03c3\u03b1\u03c2 \u03b2\u03c1\u03af\u03c3\u03ba\u03b5\u03c4\u03b1\u03b9 \u03c3\u03b5 \u03ac\u03bb\u03bb\u03bf \u03b4\u03af\u03ba\u03c4\u03c5\u03bf, \u03bc\u03c0\u03bf\u03c1\u03b5\u03af\u03c4\u03b5 \u03bd\u03b1 \u03c3\u03c5\u03bd\u03b4\u03b5\u03b8\u03b5\u03af\u03c4\u03b5 \u03c3\u03b5 \u03b1\u03c5\u03c4\u03cc \u03b5\u03b9\u03c3\u03ac\u03b3\u03bf\u03bd\u03c4\u03b1\u03c2 \u03c4\u03bf\u03bd \u03c0\u03bb\u03ae\u03c1\u03b7 \u03c3\u03b5\u03b9\u03c1\u03b9\u03b1\u03ba\u03cc \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc (12 \u03c8\u03b7\u03c6\u03af\u03b1) \u03ba\u03b1\u03b9 \u03c4\u03b7 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 IP \u03c4\u03bf\u03c5."
+            },
+            "selected": {
+                "data": {
+                    "serial_suffix": "\u0395\u03c0\u03af\u03b8\u03b7\u03bc\u03b1 \u03c3\u03b5\u03b9\u03c1\u03b9\u03b1\u03ba\u03bf\u03cd \u03b1\u03c1\u03b9\u03b8\u03bc\u03bf\u03cd (3 \u03c8\u03b7\u03c6\u03af\u03b1)"
+                },
+                "description": "\u0394\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 {hub}. \n\n\u0393\u03b9\u03b1 \u03bd\u03b1 \u03c3\u03c5\u03bd\u03b4\u03b5\u03b8\u03b5\u03af\u03c4\u03b5 \u03c3\u03c4\u03bf hub, \u03c0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03b5\u03b9\u03c3\u03b1\u03b3\u03ac\u03b3\u03b5\u03c4\u03b5 \u03c4\u03b1 \u03c4\u03b5\u03bb\u03b5\u03c5\u03c4\u03b1\u03af\u03b1 3 \u03c8\u03b7\u03c6\u03af\u03b1 \u03c4\u03bf\u03c5 \u03c3\u03b5\u03b9\u03c1\u03b9\u03b1\u03ba\u03bf\u03cd \u03b1\u03c1\u03b9\u03b8\u03bc\u03bf\u03cd \u03c4\u03bf\u03c5 hub."
+            },
+            "user": {
+                "data": {
+                    "device": "\u0391\u03bd\u03b1\u03ba\u03b1\u03bb\u03c5\u03c6\u03b8\u03ad\u03bd\u03c4\u03b5\u03c2 \u03ba\u03cc\u03bc\u03b2\u03bf\u03b9"
+                },
+                "description": "\u0395\u03c0\u03b9\u03bb\u03ad\u03be\u03c4\u03b5 Nob\u00f8 Ecohub \u03b3\u03b9\u03b1 \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03c0\u03b1\u03c1\u03b1\u03bc\u03ad\u03c4\u03c1\u03c9\u03bd."
+            }
+        }
+    },
+    "options": {
+        "step": {
+            "init": {
+                "data": {
+                    "override_type": "\u03a4\u03cd\u03c0\u03bf\u03c2 \u03c0\u03b1\u03c1\u03ac\u03ba\u03b1\u03bc\u03c8\u03b7\u03c2"
+                },
+                "description": "\u0395\u03c0\u03b9\u03bb\u03ad\u03be\u03c4\u03b5 \u03c0\u03b1\u03c1\u03ac\u03ba\u03b1\u03bc\u03c8\u03b7 \u03c4\u03cd\u03c0\u03bf\u03c5 \"\u03a4\u03ce\u03c1\u03b1\" \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03c4\u03b5\u03c1\u03bc\u03b1\u03c4\u03af\u03c3\u03b5\u03c4\u03b5 \u03c4\u03b7\u03bd \u03c0\u03b1\u03c1\u03ac\u03ba\u03b1\u03bc\u03c8\u03b7 \u03c3\u03c4\u03b7\u03bd \u03b1\u03bb\u03bb\u03b1\u03b3\u03ae \u03c0\u03c1\u03bf\u03c6\u03af\u03bb \u03c4\u03b7\u03bd \u03b5\u03c0\u03cc\u03bc\u03b5\u03bd\u03b7 \u03b5\u03b2\u03b4\u03bf\u03bc\u03ac\u03b4\u03b1."
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/es.json b/homeassistant/components/nobo_hub/translations/es.json
new file mode 100644
index 0000000000000000000000000000000000000000..3985b698acda93a0b192401adad5b0fc67cd835e
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/es.json
@@ -0,0 +1,44 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "El dispositivo ya est\u00e1 configurado"
+        },
+        "error": {
+            "cannot_connect": "No se pudo conectar: comprueba el n\u00famero de serie",
+            "invalid_ip": "Direcci\u00f3n IP no v\u00e1lida",
+            "invalid_serial": "N\u00famero de serie no v\u00e1lido",
+            "unknown": "Error inesperado"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "Direcci\u00f3n IP",
+                    "serial": "N\u00famero de serie (12 d\u00edgitos)"
+                },
+                "description": "Configura un Nob\u00f8 Ecohub no descubierto en tu red local. Si tu hub est\u00e1 en otra red, a\u00fan puedes conectarte introduciendo el n\u00famero de serie completo (12 d\u00edgitos) y su direcci\u00f3n IP."
+            },
+            "selected": {
+                "data": {
+                    "serial_suffix": "Sufijo del n\u00famero de serie (3 d\u00edgitos)"
+                },
+                "description": "Configurando {hub}.\n\nPara conectarte al hub, debes introducir los 3 \u00faltimos d\u00edgitos del n\u00famero de serie del mismo."
+            },
+            "user": {
+                "data": {
+                    "device": "Hubs descubiertos"
+                },
+                "description": "Selecciona un Nob\u00f8 Ecohub para configurar."
+            }
+        }
+    },
+    "options": {
+        "step": {
+            "init": {
+                "data": {
+                    "override_type": "Tipo de anulaci\u00f3n"
+                },
+                "description": "Selecciona el tipo de anulaci\u00f3n \"Ahora\" para finalizar la anulaci\u00f3n en el cambio de perfil de la pr\u00f3xima semana."
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/fr.json b/homeassistant/components/nobo_hub/translations/fr.json
new file mode 100644
index 0000000000000000000000000000000000000000..76a7f9b25d9d8bb852fd44b865c0fb0ef053443a
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/fr.json
@@ -0,0 +1,32 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "L'appareil est d\u00e9j\u00e0 configur\u00e9"
+        },
+        "error": {
+            "cannot_connect": "\u00c9chec de la connexion \u2013\u00a0v\u00e9rifiez le num\u00e9ro de s\u00e9rie",
+            "invalid_ip": "Adresse IP non valide",
+            "invalid_serial": "Num\u00e9ro de s\u00e9rie non valide",
+            "unknown": "Erreur inattendue"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "Adresse IP",
+                    "serial": "Num\u00e9ro de s\u00e9rie (12\u00a0chiffres)"
+                }
+            },
+            "selected": {
+                "data": {
+                    "serial_suffix": "Suffixe du num\u00e9ro de s\u00e9rie (3\u00a0chiffres)"
+                }
+            },
+            "user": {
+                "data": {
+                    "device": "Hubs d\u00e9couverts"
+                },
+                "description": "S\u00e9lectionnez le Nob\u00f8 Ecohub \u00e0 configurer."
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/hu.json b/homeassistant/components/nobo_hub/translations/hu.json
new file mode 100644
index 0000000000000000000000000000000000000000..9058c96d3d6debd810df8a551849715e01b10e93
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/hu.json
@@ -0,0 +1,44 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "Az eszk\u00f6z m\u00e1r konfigur\u00e1lva van"
+        },
+        "error": {
+            "cannot_connect": "Nem siker\u00fclt csatlakozni - ellen\u0151rizze a sorozatsz\u00e1mot",
+            "invalid_ip": "\u00c9rv\u00e9nytelen IP-c\u00edm",
+            "invalid_serial": "\u00c9rv\u00e9nytelen sorozatsz\u00e1m",
+            "unknown": "V\u00e1ratlan hiba t\u00f6rt\u00e9nt"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "IP c\u00edm",
+                    "serial": "Sorsz\u00e1m (12 sz\u00e1mjegy)"
+                },
+                "description": "Konfigur\u00e1ljon egy Nob\u00f8 Ecohubot, amely nem tal\u00e1lhat\u00f3 a helyi h\u00e1l\u00f3zaton. Ha a hub egy m\u00e1sik h\u00e1l\u00f3zaton van, tov\u00e1bbra is csatlakozhat hozz\u00e1 a teljes sorozatsz\u00e1m (12 sz\u00e1mjegy) \u00e9s IP-c\u00edm\u00e9nek megad\u00e1s\u00e1val."
+            },
+            "selected": {
+                "data": {
+                    "serial_suffix": "Sorozatsz\u00e1m ut\u00f3tag (3 sz\u00e1mjegy)"
+                },
+                "description": "{hub} konfigur\u00e1l\u00e1sa. A hubhoz val\u00f3 csatlakoz\u00e1shoz meg kell adnia a hub sorozatsz\u00e1m\u00e1nak utols\u00f3 3 sz\u00e1mjegy\u00e9t."
+            },
+            "user": {
+                "data": {
+                    "device": "Felfedezett hub-ok"
+                },
+                "description": "V\u00e1lassza ki a Nob\u00f8 Ecohubot a konfigur\u00e1l\u00e1shoz."
+            }
+        }
+    },
+    "options": {
+        "step": {
+            "init": {
+                "data": {
+                    "override_type": "T\u00edpus fel\u00fclb\u00edr\u00e1l\u00e1sa"
+                },
+                "description": "V\u00e1lassza a \"Most\" fel\u00fclb\u00edr\u00e1l\u00e1si t\u00edpust a fel\u00fclb\u00edr\u00e1l\u00e1s megsz\u00fcntet\u00e9s\u00e9hez a k\u00f6vetkez\u0151 heti profilv\u00e1lt\u00e1skor."
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/id.json b/homeassistant/components/nobo_hub/translations/id.json
new file mode 100644
index 0000000000000000000000000000000000000000..dc48a44b0aea85d92deb33743f5514829e1a39c1
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/id.json
@@ -0,0 +1,19 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "Perangkat sudah dikonfigurasi"
+        },
+        "error": {
+            "invalid_ip": "Alamat IP tidak valid",
+            "invalid_serial": "Nomor seri tidak valid",
+            "unknown": "Kesalahan yang tidak diharapkan"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "Alamat IP"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/it.json b/homeassistant/components/nobo_hub/translations/it.json
new file mode 100644
index 0000000000000000000000000000000000000000..ed7ce1f7cd693749618bca708294f7e6b2f8a276
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/it.json
@@ -0,0 +1,31 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "Il dispositivo \u00e8 gi\u00e0 configurato"
+        },
+        "error": {
+            "cannot_connect": "Impossibile connettersi - controllare il numero di serie",
+            "invalid_ip": "Indirizzo IP non valido",
+            "invalid_serial": "Numero di serie non valido",
+            "unknown": "Errore imprevisto"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "Indirizzo IP",
+                    "serial": "Numero di serie (12 cifre)"
+                }
+            },
+            "selected": {
+                "data": {
+                    "serial_suffix": "Suffisso del numero di serie (3 cifre)"
+                }
+            },
+            "user": {
+                "data": {
+                    "device": "Hub scoperti"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/ja.json b/homeassistant/components/nobo_hub/translations/ja.json
new file mode 100644
index 0000000000000000000000000000000000000000..cea3f2fb8dfbaac0fa265ed54e36e5dd2a7f8aec
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/ja.json
@@ -0,0 +1,43 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "\u30c7\u30d0\u30a4\u30b9\u306f\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059"
+        },
+        "error": {
+            "cannot_connect": "\u63a5\u7d9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f - \u30b7\u30ea\u30a2\u30eb\u756a\u53f7\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044",
+            "invalid_ip": "\u7121\u52b9\u306aIP\u30a2\u30c9\u30ec\u30b9",
+            "invalid_serial": "\u7121\u52b9\u306a\u30b7\u30ea\u30a2\u30eb\u756a\u53f7",
+            "unknown": "\u4e88\u671f\u3057\u306a\u3044\u30a8\u30e9\u30fc"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "IP\u30a2\u30c9\u30ec\u30b9",
+                    "serial": "\u30b7\u30ea\u30a2\u30eb\u30ca\u30f3\u30d0\u30fc(12\u6841)"
+                }
+            },
+            "selected": {
+                "data": {
+                    "serial_suffix": "\u30b7\u30ea\u30a2\u30eb\u30ca\u30f3\u30d0\u30fc\u306e\u672b\u5c3e(3\u6841)"
+                },
+                "description": "{hub} \u306e\u8a2d\u5b9a\u3002\n\n\u30cf\u30d6\u306b\u63a5\u7d9a\u3059\u308b\u306b\u306f\u3001\u30cf\u30d6\u306e\u30b7\u30ea\u30a2\u30eb\u756a\u53f7\u306e\u672b\u5c3e3\u6841\u3092\u5165\u529b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002"
+            },
+            "user": {
+                "data": {
+                    "device": "\u691c\u51fa\u3055\u308c\u305f\u30cf\u30d6"
+                },
+                "description": "Nob\u00f8 Ecohub\u3092\u9078\u629e\u3057\u3066\u8a2d\u5b9a\u3057\u307e\u3059\u3002"
+            }
+        }
+    },
+    "options": {
+        "step": {
+            "init": {
+                "data": {
+                    "override_type": "\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c9\u306e\u7a2e\u985e"
+                },
+                "description": "\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c9\u306e\u7a2e\u985e\u3092\"\u4eca\u3059\u3050\"\u306b\u3059\u308b\u3068\u3001\u6765\u9031\u306e\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u5909\u66f4\u6642\u306b\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c9\u304c\u7d42\u4e86\u3057\u307e\u3059\u3002"
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/no.json b/homeassistant/components/nobo_hub/translations/no.json
new file mode 100644
index 0000000000000000000000000000000000000000..ffd37f30dee4e5fe896c05e80c16fffb6d77a273
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/no.json
@@ -0,0 +1,44 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "Enheten er allerede konfigurert"
+        },
+        "error": {
+            "cannot_connect": "Tilkobling feilet - sjekk serienummer",
+            "invalid_ip": "Ugyldig IP-adresse",
+            "invalid_serial": "Ugyldig serienummer",
+            "unknown": "Uventet feil"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "IP-adresse",
+                    "serial": "Serienummer (12 sifre)"
+                },
+                "description": "Konfigurer en Nob\u00f8 Ecohub som ikke er oppdaget p\u00e5 ditt lokale nettverk. Hvis huben er p\u00e5 et annet nettverk, kan du fortsatt koble den til med \u00e5 skrive inn fullstendig serienummer (12 sifre) og IP-adressen."
+            },
+            "selected": {
+                "data": {
+                    "serial_suffix": "Serienummersuffiks (3 sifre)"
+                },
+                "description": "Konfigurerer {hub}.\n\nFor \u00e5 koble til huben, m\u00e5 du skrive inn de 3 siste sifrene i hubens serienummer."
+            },
+            "user": {
+                "data": {
+                    "device": "Oppdagede huber"
+                },
+                "description": "Velg Nob\u00f8 Ecohub du vil konfigurere"
+            }
+        }
+    },
+    "options": {
+        "step": {
+            "init": {
+                "data": {
+                    "override_type": "Overstyringstype"
+                },
+                "description": "Velg overstyringstype \"Now\" for \u00e5 avslutte overstyringer ved neste endring i ukesprofilen."
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/pt-BR.json b/homeassistant/components/nobo_hub/translations/pt-BR.json
new file mode 100644
index 0000000000000000000000000000000000000000..9de87f8dad52728390ff32ba5cd0ee3f24210983
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/pt-BR.json
@@ -0,0 +1,44 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "O dispositivo j\u00e1 est\u00e1 configurado"
+        },
+        "error": {
+            "cannot_connect": "Falha ao conectar - verifique o n\u00famero de s\u00e9rie",
+            "invalid_ip": "Endere\u00e7o IP inv\u00e1lido",
+            "invalid_serial": "N\u00famero de s\u00e9rie inv\u00e1lido",
+            "unknown": "Erro inesperado"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "Endere\u00e7o IP",
+                    "serial": "N\u00famero de s\u00e9rie (12 d\u00edgitos)"
+                },
+                "description": "Configure um Nob\u00f8 Ecohub n\u00e3o descoberto em sua rede local. Se o seu hub estiver em outra rede, voc\u00ea ainda poder\u00e1 se conectar a ele digitando o n\u00famero de s\u00e9rie completo (12 d\u00edgitos) e seu endere\u00e7o IP."
+            },
+            "selected": {
+                "data": {
+                    "serial_suffix": "Sufixo do n\u00famero de s\u00e9rie (3 d\u00edgitos)"
+                },
+                "description": "Configurando {hub}. Para se conectar ao hub, voc\u00ea precisa inserir os 3 \u00faltimos d\u00edgitos do n\u00famero de s\u00e9rie do hub."
+            },
+            "user": {
+                "data": {
+                    "device": "Hubs descobertos"
+                },
+                "description": "Selecione Nob\u00f8 Ecohub para configurar."
+            }
+        }
+    },
+    "options": {
+        "step": {
+            "init": {
+                "data": {
+                    "override_type": "Tipo de substitui\u00e7\u00e3o"
+                },
+                "description": "Selecione o tipo de substitui\u00e7\u00e3o \"Agora\" para encerrar a substitui\u00e7\u00e3o na pr\u00f3xima semana de altera\u00e7\u00e3o de perfil."
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/nobo_hub/translations/zh-Hant.json b/homeassistant/components/nobo_hub/translations/zh-Hant.json
new file mode 100644
index 0000000000000000000000000000000000000000..1d2f4ccf917c86dbfd2ac6a57ffc18e6a3417028
--- /dev/null
+++ b/homeassistant/components/nobo_hub/translations/zh-Hant.json
@@ -0,0 +1,44 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "\u88dd\u7f6e\u5df2\u7d93\u8a2d\u5b9a\u5b8c\u6210"
+        },
+        "error": {
+            "cannot_connect": "\u9023\u7dda\u5931\u6557 - \u8acb\u6aa2\u67e5\u5e8f\u865f",
+            "invalid_ip": "IP \u4f4d\u5740\u7121\u6548",
+            "invalid_serial": "\u5e8f\u865f\u7121\u6548",
+            "unknown": "\u672a\u9810\u671f\u932f\u8aa4"
+        },
+        "step": {
+            "manual": {
+                "data": {
+                    "ip_address": "IP \u4f4d\u5740",
+                    "serial": "\u5e8f\u865f\uff0812 \u4f4d\uff09"
+                },
+                "description": "\u8a2d\u5b9a\u672c\u5730\u7db2\u8def\u672a\u81ea\u52d5\u767c\u73fe\u7684 Nob\u00f8 Ecohub\u3002 \u5047\u5982 hub \u9023\u7dda\u81f3\u5176\u4ed6\u7db2\u8def\u3001\u53ef\u4ee5\u8a66\u8457\u8f38\u5165\u5b8c\u6574\u7684\u5e8f\u865f\uff0812 \u4f4d\u6578\uff09\u53ca\u5176 IP \u4f4d\u5740\u9032\u884c\u9023\u7dda\u3002"
+            },
+            "selected": {
+                "data": {
+                    "serial_suffix": "\u5e8f\u865f\u5f8c\u7db4\uff083 \u4f4d\u6578\uff09"
+                },
+                "description": "\u8a2d\u5b9a {hub}\u3002\n\n\u6b32\u9023\u7dda\u81f3 Hub\u3001\u9700\u8981\u8f38\u5165\u81f3\u5c11 3 \u4f4d\u6578\u4e4b Hub \u5e8f\u865f\u3002"
+            },
+            "user": {
+                "data": {
+                    "device": "\u81ea\u52d5\u641c\u7d22\u5230\u7684 Hub"
+                },
+                "description": "\u9078\u64c7 Nob\u00f8 Ecohub \u4ee5\u9032\u884c\u8a2d\u5b9a\u3002"
+            }
+        }
+    },
+    "options": {
+        "step": {
+            "init": {
+                "data": {
+                    "override_type": "\u8986\u5beb\u985e\u5225"
+                },
+                "description": "\u9078\u64c7\u8986\u5beb\u985e\u5225 \"Now\" \u4ee5\u65bc\u4e0b\u9031\u6a94\u6848\u8b8a\u66f4\u6642\u7d50\u675f\u8986\u5beb\u3002"
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/overkiz/translations/ja.json b/homeassistant/components/overkiz/translations/ja.json
index 357408847fd94eecdf990245b9018663ff31c9cf..df49ea40332c42d1cd93188b3891c01fc009c096 100644
--- a/homeassistant/components/overkiz/translations/ja.json
+++ b/homeassistant/components/overkiz/translations/ja.json
@@ -11,7 +11,8 @@
             "server_in_maintenance": "\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u306e\u305f\u3081\u30b5\u30fc\u30d0\u30fc\u304c\u30c0\u30a6\u30f3\u3057\u3066\u3044\u307e\u3059",
             "too_many_attempts": "\u7121\u52b9\u306a\u30c8\u30fc\u30af\u30f3\u306b\u3088\u308b\u8a66\u884c\u56de\u6570\u304c\u591a\u3059\u304e\u305f\u305f\u3081\u3001\u4e00\u6642\u7684\u306b\u7981\u6b62\u3055\u308c\u307e\u3057\u305f\u3002",
             "too_many_requests": "\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u591a\u3059\u304e\u307e\u3059\u3002\u3057\u3070\u3089\u304f\u3057\u3066\u304b\u3089\u3082\u3046\u4e00\u5ea6\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002",
-            "unknown": "\u4e88\u671f\u3057\u306a\u3044\u30a8\u30e9\u30fc"
+            "unknown": "\u4e88\u671f\u3057\u306a\u3044\u30a8\u30e9\u30fc",
+            "unknown_user": "\u4e0d\u660e\u306a\u30e6\u30fc\u30b6\u30fc\u3067\u3059\u3002Somfy Protect\u30a2\u30ab\u30a6\u30f3\u30c8\u306f\u3001\u3053\u306e\u7d71\u5408\u3067\u306f\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002"
         },
         "flow_title": "\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4: {gateway_id}",
         "step": {
diff --git a/homeassistant/components/prusalink/translations/bg.json b/homeassistant/components/prusalink/translations/bg.json
new file mode 100644
index 0000000000000000000000000000000000000000..54d6eb68c8bea70b9a6d5f9d13a730d9f9a2b227
--- /dev/null
+++ b/homeassistant/components/prusalink/translations/bg.json
@@ -0,0 +1,17 @@
+{
+    "config": {
+        "error": {
+            "cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435",
+            "invalid_auth": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0432\u0430\u043d\u0435",
+            "unknown": "\u041d\u0435\u043e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430"
+        },
+        "step": {
+            "user": {
+                "data": {
+                    "api_key": "API \u043a\u043b\u044e\u0447",
+                    "host": "\u0425\u043e\u0441\u0442"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/prusalink/translations/ja.json b/homeassistant/components/prusalink/translations/ja.json
index e507bbbda7eb3001aea3a07525c7d58fe848247f..95a57633cbd4bd892ad06c7dc88beccb3440180a 100644
--- a/homeassistant/components/prusalink/translations/ja.json
+++ b/homeassistant/components/prusalink/translations/ja.json
@@ -3,6 +3,7 @@
         "error": {
             "cannot_connect": "\u63a5\u7d9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f",
             "invalid_auth": "\u7121\u52b9\u306a\u8a8d\u8a3c",
+            "not_supported": "PrusaLink API v2\u306e\u307f\u5bfe\u5fdc",
             "unknown": "\u4e88\u671f\u3057\u306a\u3044\u30a8\u30e9\u30fc"
         },
         "step": {
diff --git a/homeassistant/components/risco/translations/bg.json b/homeassistant/components/risco/translations/bg.json
index 805d72102aa4d4cd44df22a9def8d8327aea4740..14bd2a15ccb16284596f559136886e4054f8b7dd 100644
--- a/homeassistant/components/risco/translations/bg.json
+++ b/homeassistant/components/risco/translations/bg.json
@@ -9,6 +9,11 @@
             "unknown": "\u041d\u0435\u043e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430"
         },
         "step": {
+            "local": {
+                "data": {
+                    "port": "\u041f\u043e\u0440\u0442"
+                }
+            },
             "user": {
                 "data": {
                     "password": "\u041f\u0430\u0440\u043e\u043b\u0430",
diff --git a/homeassistant/components/sensor/translations/ja.json b/homeassistant/components/sensor/translations/ja.json
index dbd8bd76e5e34e6e2ce2b43056c983bb921b1308..037b6d70dbe7af5ef715c7dca59463a2979651b8 100644
--- a/homeassistant/components/sensor/translations/ja.json
+++ b/homeassistant/components/sensor/translations/ja.json
@@ -11,6 +11,7 @@
             "is_gas": "\u73fe\u5728\u306e {entity_name} \u30ac\u30b9",
             "is_humidity": "\u73fe\u5728\u306e {entity_name} \u6e7f\u5ea6",
             "is_illuminance": "\u73fe\u5728\u306e {entity_name} \u7167\u5ea6",
+            "is_moisture": "\u73fe\u5728\u306e\u3001{entity_name} \u306e\u6c34\u5206",
             "is_nitrogen_dioxide": "\u73fe\u5728\u306e {entity_name} \u4e8c\u9178\u5316\u7a92\u7d20\u6fc3\u5ea6\u30ec\u30d9\u30eb",
             "is_nitrogen_monoxide": "\u73fe\u5728\u306e {entity_name} \u4e00\u9178\u5316\u7a92\u7d20\u6fc3\u5ea6\u30ec\u30d9\u30eb",
             "is_nitrous_oxide": "\u73fe\u5728\u306e {entity_name} \u4e9c\u9178\u5316\u7a92\u7d20\u6fc3\u5ea6\u30ec\u30d9\u30eb",
@@ -40,6 +41,7 @@
             "gas": "{entity_name} \u30ac\u30b9\u306e\u5909\u5316",
             "humidity": "{entity_name} \u6e7f\u5ea6\u306e\u5909\u5316",
             "illuminance": "{entity_name} \u7167\u5ea6\u306e\u5909\u5316",
+            "moisture": "{entity_name} \u306e\u6c34\u5206\u5909\u5316",
             "nitrogen_dioxide": "{entity_name} \u4e8c\u9178\u5316\u7a92\u7d20\u6fc3\u5ea6\u306e\u5909\u5316",
             "nitrogen_monoxide": "{entity_name} \u4e00\u9178\u5316\u7a92\u7d20\u6fc3\u5ea6\u306e\u5909\u5316",
             "nitrous_oxide": "{entity_name} \u4e9c\u9178\u5316\u7a92\u7d20\u6fc3\u5ea6\u306e\u5909\u5316",
diff --git a/homeassistant/components/sensorpro/translations/bg.json b/homeassistant/components/sensorpro/translations/bg.json
new file mode 100644
index 0000000000000000000000000000000000000000..0d059b2bf51cb47b20edb56b4bf480e51847cbae
--- /dev/null
+++ b/homeassistant/components/sensorpro/translations/bg.json
@@ -0,0 +1,15 @@
+{
+    "config": {
+        "flow_title": "{name}",
+        "step": {
+            "bluetooth_confirm": {
+                "description": "\u0418\u0441\u043a\u0430\u0442\u0435 \u043b\u0438 \u0434\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u0435 {name}?"
+            },
+            "user": {
+                "data": {
+                    "address": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/skybell/translations/bg.json b/homeassistant/components/skybell/translations/bg.json
index f3f182bbc3a42fb0850fa498c8253b02feb9a805..bdec7688abf9d00f79fdfc18b8d7bf8135b1207b 100644
--- a/homeassistant/components/skybell/translations/bg.json
+++ b/homeassistant/components/skybell/translations/bg.json
@@ -10,6 +10,12 @@
             "unknown": "\u041d\u0435\u043e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430"
         },
         "step": {
+            "reauth_confirm": {
+                "data": {
+                    "password": "\u041f\u0430\u0440\u043e\u043b\u0430"
+                },
+                "description": "\u041c\u043e\u043b\u044f, \u0430\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u0439\u0442\u0435 \u043f\u0430\u0440\u043e\u043b\u0430\u0442\u0430 \u0441\u0438 \u0437\u0430  {email}"
+            },
             "user": {
                 "data": {
                     "email": "Email",
diff --git a/homeassistant/components/thermobeacon/translations/bg.json b/homeassistant/components/thermobeacon/translations/bg.json
new file mode 100644
index 0000000000000000000000000000000000000000..c79e057d5c017361f82c5e7f4892ae501d104dba
--- /dev/null
+++ b/homeassistant/components/thermobeacon/translations/bg.json
@@ -0,0 +1,18 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
+        },
+        "flow_title": "{name}",
+        "step": {
+            "bluetooth_confirm": {
+                "description": "\u0418\u0441\u043a\u0430\u0442\u0435 \u043b\u0438 \u0434\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u0435 {name}?"
+            },
+            "user": {
+                "data": {
+                    "address": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/thermopro/translations/bg.json b/homeassistant/components/thermopro/translations/bg.json
new file mode 100644
index 0000000000000000000000000000000000000000..c79e057d5c017361f82c5e7f4892ae501d104dba
--- /dev/null
+++ b/homeassistant/components/thermopro/translations/bg.json
@@ -0,0 +1,18 @@
+{
+    "config": {
+        "abort": {
+            "already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
+        },
+        "flow_title": "{name}",
+        "step": {
+            "bluetooth_confirm": {
+                "description": "\u0418\u0441\u043a\u0430\u0442\u0435 \u043b\u0438 \u0434\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u0435 {name}?"
+            },
+            "user": {
+                "data": {
+                    "address": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/unifiprotect/translations/ja.json b/homeassistant/components/unifiprotect/translations/ja.json
index 608601e2175e5c680151a01e27f385de68314778..51193ed312398836095d268acbf95cb98de20a8d 100644
--- a/homeassistant/components/unifiprotect/translations/ja.json
+++ b/homeassistant/components/unifiprotect/translations/ja.json
@@ -42,11 +42,15 @@
         }
     },
     "options": {
+        "error": {
+            "invalid_mac_list": "\u30ab\u30f3\u30de\u3067\u533a\u5207\u3089\u308c\u305fMAC\u30a2\u30c9\u30ec\u30b9\u306e\u30ea\u30b9\u30c8\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059"
+        },
         "step": {
             "init": {
                 "data": {
                     "all_updates": "\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u30e1\u30c8\u30ea\u30c3\u30af(Realtime metrics)(\u8b66\u544a: CPU\u4f7f\u7528\u7387\u304c\u5927\u5e45\u306b\u5897\u52a0\u3057\u307e\u3059)",
                     "disable_rtsp": "RTSP\u30b9\u30c8\u30ea\u30fc\u30e0\u3092\u7121\u52b9\u306b\u3059\u308b",
+                    "ignored_devices": "\u7121\u8996\u3059\u308b\u6a5f\u5668\u306eMAC\u30a2\u30c9\u30ec\u30b9\u306e\u30ab\u30f3\u30de\u533a\u5207\u308a\u30ea\u30b9\u30c8",
                     "max_media": "\u30e1\u30c7\u30a3\u30a2\u30d6\u30e9\u30a6\u30b6\u306b\u30ed\u30fc\u30c9\u3059\u308b\u30a4\u30d9\u30f3\u30c8\u306e\u6700\u5927\u6570(RAM\u4f7f\u7528\u91cf\u304c\u5897\u52a0)",
                     "override_connection_host": "\u63a5\u7d9a\u30db\u30b9\u30c8\u3092\u4e0a\u66f8\u304d"
                 },
diff --git a/homeassistant/components/volumio/translations/zh-Hant.json b/homeassistant/components/volumio/translations/zh-Hant.json
index 79edffd79aa55138b4fe462c5f461ebd80bac470..787572b7304bb020cd2214e6c859dbfb4e784f8d 100644
--- a/homeassistant/components/volumio/translations/zh-Hant.json
+++ b/homeassistant/components/volumio/translations/zh-Hant.json
@@ -11,7 +11,7 @@
         "step": {
             "discovery_confirm": {
                 "description": "\u662f\u5426\u8981\u65b0\u589e Volumio (`{name}`) \u81f3 Home Assistant\uff1f",
-                "title": "\u5df2\u767c\u73fe\u7684 Volumio"
+                "title": "\u81ea\u52d5\u641c\u7d22\u5230\u7684 Volumio"
             },
             "user": {
                 "data": {
diff --git a/homeassistant/components/volvooncall/translations/bg.json b/homeassistant/components/volvooncall/translations/bg.json
new file mode 100644
index 0000000000000000000000000000000000000000..c0ccf23f5b5c37f2f21df05cd4d49fb86abbe37c
--- /dev/null
+++ b/homeassistant/components/volvooncall/translations/bg.json
@@ -0,0 +1,7 @@
+{
+    "config": {
+        "abort": {
+            "reauth_successful": "\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0442\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0432\u0430\u043d\u0435 \u0431\u0435\u0448\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e"
+        }
+    }
+}
\ No newline at end of file
diff --git a/homeassistant/components/volvooncall/translations/ja.json b/homeassistant/components/volvooncall/translations/ja.json
index 3a5291585030704fa1aef18e061cadc7d2da4a15..0f56a700da00c7b577d72f40e5ceb02f5d56a1d0 100644
--- a/homeassistant/components/volvooncall/translations/ja.json
+++ b/homeassistant/components/volvooncall/translations/ja.json
@@ -1,7 +1,8 @@
 {
     "config": {
         "abort": {
-            "already_configured": "\u30a2\u30ab\u30a6\u30f3\u30c8\u306f\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059"
+            "already_configured": "\u30a2\u30ab\u30a6\u30f3\u30c8\u306f\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059",
+            "reauth_successful": "\u518d\u8a8d\u8a3c\u306b\u6210\u529f\u3057\u307e\u3057\u305f"
         },
         "error": {
             "invalid_auth": "\u7121\u52b9\u306a\u8a8d\u8a3c",
diff --git a/homeassistant/components/zha/translations/bg.json b/homeassistant/components/zha/translations/bg.json
index 6196428fca607f206d54c51c94364498f6ea8e06..75741130cc8b9dc6c60d93f75f4dd6a5e8e38aa8 100644
--- a/homeassistant/components/zha/translations/bg.json
+++ b/homeassistant/components/zha/translations/bg.json
@@ -23,6 +23,11 @@
                 },
                 "title": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438"
             },
+            "upload_manual_backup": {
+                "data": {
+                    "uploaded_backup_file": "\u041a\u0430\u0447\u0432\u0430\u043d\u0435 \u043d\u0430 \u0444\u0430\u0439\u043b"
+                }
+            },
             "user": {
                 "description": "\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0441\u0435\u0440\u0438\u0435\u043d \u043f\u043e\u0440\u0442 \u0437\u0430 Zigbee \u0440\u0430\u0434\u0438\u043e",
                 "title": "ZHA"
@@ -75,5 +80,15 @@
             "remote_button_short_release": "\"{subtype}\" \u0431\u0443\u0442\u043e\u043d\u044a\u0442 \u0431\u0435\u0448\u0435 \u043e\u0442\u043f\u0443\u0441\u043d\u0430\u0442",
             "remote_button_triple_press": "\"{subtype}\" \u0431\u0443\u0442\u043e\u043d\u044a\u0442 \u0431\u0435\u0448\u0435 \u043d\u0430\u0442\u0438\u0441\u043d\u0430\u0442 \u0442\u0440\u0438\u043a\u0440\u0430\u0442\u043d\u043e"
         }
+    },
+    "options": {
+        "flow_title": "{name}",
+        "step": {
+            "upload_manual_backup": {
+                "data": {
+                    "uploaded_backup_file": "\u041a\u0430\u0447\u0432\u0430\u043d\u0435 \u043d\u0430 \u0444\u0430\u0439\u043b"
+                }
+            }
+        }
     }
 }
\ No newline at end of file