diff --git a/selfdrive/ui/translations/app_ar.po b/selfdrive/ui/translations/app_ar.po
new file mode 100644
index 0000000000..ec24ecbd89
--- /dev/null
+++ b/selfdrive/ui/translations/app_ar.po
@@ -0,0 +1,942 @@
+# Arabic translations for PACKAGE package.
+# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Automatically generated, 2025.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2025-10-20 18:45-0700\n"
+"PO-Revision-Date: 2025-10-20 18:19-0700\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: ar\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:123
+#, python-format
+msgid " Changing this setting will restart openpilot if the car is powered on."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43
+#, python-format
+msgid "--"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "1 year of drive storage"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "24/7 LTE connectivity"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46
+#, python-format
+msgid "2G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47
+#, python-format
+msgid "3G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49
+#, python-format
+msgid "5G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23
+#, python-format
+msgid ""
+"WARNING: openpilot longitudinal control is in alpha for this car and will "
+"disable Automatic Emergency Braking (AEB).
On this car, openpilot "
+"defaults to the car's built-in ACC instead of openpilot's longitudinal "
+"control. Enable this to switch to openpilot longitudinal control. Enabling "
+"Experimental mode is recommended when enabling openpilot longitudinal "
+"control alpha."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:137
+#, python-format
+msgid "ACTIVE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15
+#, python-format
+msgid ""
+"ADB (Android Debug Bridge) allows connecting to your device over USB or over "
+"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30
+#, python-format
+msgid "ADD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110
+#, python-format
+msgid "Acknowledge Excessive Actuation"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Aggressive"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116
+#, python-format
+msgid "Agree"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70
+#, python-format
+msgid "Always-On Driver Monitoring"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183
+#, python-format
+msgid ""
+"An alpha version of openpilot longitudinal control can be tested, along with "
+"Experimental mode, on non-release branches."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Are you sure you want to power off?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Are you sure you want to reboot?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Are you sure you want to reset calibration?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Are you sure you want to uninstall?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147
+#, python-format
+msgid "Back"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38
+#, python-format
+msgid "Become a comma prime member at connect.comma.ai"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130
+#, python-format
+msgid "Bookmark connect.comma.ai to your home screen to use it like an app"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "CHANGE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142
+#, python-format
+msgid "CHECK"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "CHILL MODE ON"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "CONNECT"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "Change Language"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129
+#, python-format
+msgid "Click \"add new device\" and scan the QR code on the right"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105
+#, python-format
+msgid "Close"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48
+#, python-format
+msgid "Current Version"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109
+#, python-format
+msgid "DOWNLOAD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115
+#, python-format
+msgid "Decline"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148
+#, python-format
+msgid "Decline, uninstall openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67
+#, python-format
+msgid "Developer"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62
+#, python-format
+msgid "Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58
+#, python-format
+msgid "Disengage on Accelerator Pedal"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:186
+#, python-format
+msgid "Disengage to Power Off"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:174
+#, python-format
+msgid "Disengage to Reboot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:106
+#, python-format
+msgid "Disengage to Reset Calibration"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32
+#, python-format
+msgid "Display speed in km/h instead of mph."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:61
+#, python-format
+msgid "Dongle ID"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#, python-format
+msgid "Download"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "Driver Camera"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96
+#, python-format
+msgid "Driving Personality"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "ERROR"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45
+#, python-format
+msgid "ETH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "EXPERIMENTAL MODE ON"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:225
+#, python-format
+msgid "Enable"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:38
+#, python-format
+msgid "Enable ADB"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64
+#, python-format
+msgid "Enable Lane Departure Warnings"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:47
+#, python-format
+msgid "Enable SSH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30
+#, python-format
+msgid "Enable driver monitoring even when openpilot is not engaged."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46
+#, python-format
+msgid "Enable openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186
+#, python-format
+msgid ""
+"Enable the openpilot longitudinal control (alpha) toggle to allow "
+"Experimental mode."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89
+#, python-format
+msgid "Enter your GitHub username"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52
+#, python-format
+msgid "Experimental Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:178
+#, python-format
+msgid ""
+"Experimental mode is currently unavailable on this car since the car's stock "
+"ACC is used for longitudinal control."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44
+#, python-format
+msgid "Finish Setup"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66
+#, python-format
+msgid "Firehose"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18
+#, python-format
+msgid "Firehose Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25
+#, python-format
+msgid ""
+"For maximum effectiveness, bring your device inside and connect to a good "
+"USB-C adapter and Wi-Fi weekly.\n"
+"\n"
+"Firehose Mode can also work while you're driving if connected to a hotspot "
+"or unlimited SIM card.\n"
+"\n"
+"\n"
+"Frequently Asked Questions\n"
+"\n"
+"Does it matter how or where I drive? Nope, just drive as you normally "
+"would.\n"
+"\n"
+"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a "
+"subset of your segments.\n"
+"\n"
+"What's a good USB-C adapter? Any fast phone or laptop charger should be "
+"fine.\n"
+"\n"
+"Does it matter which software I run? Yes, only upstream openpilot (and "
+"particular forks) are able to be used for training."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#, python-format
+msgid "GOOD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128
+#, python-format
+msgid "Go to https://connect.comma.ai on your phone"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "HIGH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:139
+#, python-format
+msgid "INACTIVE: connect to an unmetered network"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131
+#, python-format
+msgid "INSTALL"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#, python-format
+msgid "Install Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:55
+#, python-format
+msgid "Joystick Debug Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29
+#, python-format
+msgid "LOADING"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48
+#, python-format
+msgid "LTE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:63
+#, python-format
+msgid "Longitudinal Maneuver Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148
+#, python-format
+msgid "MAX"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75
+#, python-format
+msgid ""
+"Maximize your training data uploads to improve openpilot's driving models."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "NO"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63
+#, python-format
+msgid "Network"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114
+#, python-format
+msgid "No SSH keys found"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126
+#, python-format, python-brace-format
+msgid "No SSH keys found for user '{username}'"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18
+#, python-format
+msgid "No release notes available."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#, python-format
+msgid "OFFLINE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#, python-format
+msgid "OK"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "ONLINE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20
+#, python-format
+msgid "Open"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "PAIR"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "PANDA"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "PREVIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44
+#, python-format
+msgid "PRIME FEATURES:"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "Pair Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19
+#, python-format
+msgid "Pair device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103
+#, python-format
+msgid "Pair your device to your comma account"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25
+#, python-format
+msgid ""
+"Pair your device with comma connect (connect.comma.ai) and claim your comma "
+"prime offer."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91
+#, python-format
+msgid "Please connect to Wi-Fi to complete initial pairing"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Power Off"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26
+#, python-format
+msgid ""
+"Preview the driver facing camera to ensure that driver monitoring has good "
+"visibility. (vehicle must be off)"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161
+#, python-format
+msgid "QR Code Error"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31
+#, python-format
+msgid "REMOVE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "RESET"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "REVIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Reboot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66
+#, python-format
+msgid "Reboot Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113
+#, python-format
+msgid "Reboot and Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27
+#, python-format
+msgid ""
+"Receive alerts to steer back into the lane when your vehicle drifts over a "
+"detected lane line without a turn signal activated while driving over 31 mph "
+"(50 km/h)."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76
+#, python-format
+msgid "Record and Upload Driver Camera"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82
+#, python-format
+msgid "Record and Upload Microphone Audio"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33
+#, python-format
+msgid ""
+"Record and store microphone audio while driving. The audio will be included "
+"in the dashcam video in comma connect."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "Regulatory"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Relaxed"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote access"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote snapshots"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123
+#, python-format
+msgid "Request timed out"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Reset"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "Reset Calibration"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "Review Training Guide"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28
+#, python-format
+msgid "Review the rules, features, and limitations of openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62
+#, python-format
+msgid "Serial"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107
+#, python-format
+msgid "Snooze Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65
+#, python-format
+msgid "Software"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Standard"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22
+#, python-format
+msgid ""
+"Standard is recommended. In aggressive mode, openpilot will follow lead cars "
+"closer and be more aggressive with the gas and brake. In relaxed mode "
+"openpilot will stay further away from lead cars. On supported cars, you can "
+"cycle through these personalities with your steering wheel distance button."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65
+#, python-format
+msgid "System Unresponsive"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58
+#, python-format
+msgid "TAKE CONTROL IMMEDIATELY"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "TEMP"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64
+#, python-format
+msgid "Toggles"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70
+#, python-format
+msgid "UNINSTALL"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155
+#, python-format
+msgid "UPDATE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Uninstall"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117
+#, python-format
+msgid "Unknown"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47
+#, python-format
+msgid "Updates are only downloaded while the car is off."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33
+#, python-format
+msgid "Upgrade Now"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31
+#, python-format
+msgid ""
+"Upload data from the driver facing camera and help improve the driver "
+"monitoring algorithm."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88
+#, python-format
+msgid "Use Metric System"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17
+#, python-format
+msgid ""
+"Use the openpilot system for adaptive cruise control and lane keep driver "
+"assistance. Your attention is required at all times to use this feature."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "VEHICLE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "VIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52
+#, python-format
+msgid "Waiting to start"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19
+#, python-format
+msgid ""
+"Warning: This grants SSH access to all public keys in your GitHub settings. "
+"Never enter a GitHub username other than your own. A comma employee will "
+"NEVER ask you to add their GitHub username."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111
+#, python-format
+msgid "Welcome to openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20
+#, python-format
+msgid "When enabled, pressing the accelerator pedal will disengage openpilot."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44
+#, python-format
+msgid "Wi-Fi"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145
+#, python-format
+msgid "You must accept the Terms and Conditions in order to use openpilot."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112
+#, python-format
+msgid ""
+"You must accept the Terms and Conditions to use openpilot. Read the latest "
+"terms at https://comma.ai/terms before continuing."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34
+#, python-format
+msgid "camera starting"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63
+#, python-format
+msgid "comma prime"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105
+#, python-format
+msgid "failed to check for update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "km/h"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "mph"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19
+#, python-format
+msgid "never"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30
+#, python-format
+msgid "now"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:70
+#, python-format
+msgid "openpilot Longitudinal Control (Alpha)"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51
+#, python-format
+msgid "openpilot Unavailable"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:155
+#, python-format
+msgid ""
+"openpilot defaults to driving in chill mode. Experimental mode enables alpha-"
+"level features that aren't ready for chill mode. Experimental features are "
+"listed below:
End-to-End Longitudinal Control
Let the driving "
+"model control the gas and brakes. openpilot will drive as it thinks a human "
+"would, including stopping for red lights and stop signs. Since the driving "
+"model decides the speed to drive, the set speed will only act as an upper "
+"bound. This is an alpha quality feature; mistakes should be expected."
+"
New Driving Visualization
The driving visualization will "
+"transition to the road-facing wide-angle camera at low speeds to better show "
+"some turns. The Experimental mode logo will also be shown in the top right "
+"corner."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20
+#, python-format
+msgid ""
+"openpilot learns to drive by watching humans, like you, drive.\n"
+"\n"
+"Firehose Mode allows you to maximize your training data uploads to improve "
+"openpilot's driving models. More data means bigger models, which means "
+"better Experimental Mode."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:180
+#, python-format
+msgid "openpilot longitudinal control may come in a future update."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27
+#, python-format
+msgid ""
+"openpilot requires the device to be mounted within 4° left or right and "
+"within 5° up or 9° down."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116
+#, python-format
+msgid "up to date, last checked never"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114
+#, python-format
+msgid "up to date, last checked {}"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108
+#, python-format
+msgid "update available"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169
+#, python-format
+msgid "{} ALERT"
+msgid_plural "{} ALERTS"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39
+#, python-format
+msgid "{} day ago"
+msgid_plural "{} days ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36
+#, python-format
+msgid "{} hour ago"
+msgid_plural "{} hours ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33
+#, python-format
+msgid "{} minute ago"
+msgid_plural "{} minutes ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:110
+#, python-format
+msgid "{} segment of your driving is in the training dataset so far."
+msgid_plural "{} segment of your driving is in the training dataset so far."
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62
+#, python-format
+msgid "✓ SUBSCRIBED"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22
+#, python-format
+msgid "🔥 Firehose Mode 🔥"
+msgstr ""
diff --git a/selfdrive/ui/translations/app_ja.po b/selfdrive/ui/translations/app_ja.po
new file mode 100644
index 0000000000..563434601e
--- /dev/null
+++ b/selfdrive/ui/translations/app_ja.po
@@ -0,0 +1,981 @@
+# Japanese translations for PACKAGE package.
+# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Automatically generated, 2025.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2025-10-20 18:45-0700\n"
+"PO-Revision-Date: 2025-10-20 18:19-0700\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: ja\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:123
+#, python-format
+msgid " Changing this setting will restart openpilot if the car is powered on."
+msgstr " この設定を変更すると、車の電源が入っている場合は openpilot が再起動します。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43
+#, python-format
+msgid "--"
+msgstr "--"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "1 year of drive storage"
+msgstr "ドライブ保存 1 年"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "24/7 LTE connectivity"
+msgstr "24/7 LTE 接続"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46
+#, python-format
+msgid "2G"
+msgstr "2G"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47
+#, python-format
+msgid "3G"
+msgstr "3G"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49
+#, python-format
+msgid "5G"
+msgstr "5G"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23
+#, python-format
+msgid ""
+"WARNING: openpilot longitudinal control is in alpha for this car and will "
+"disable Automatic Emergency Braking (AEB).
On this car, openpilot "
+"defaults to the car's built-in ACC instead of openpilot's longitudinal "
+"control. Enable this to switch to openpilot longitudinal control. Enabling "
+"Experimental mode is recommended when enabling openpilot longitudinal "
+"control alpha."
+msgstr ""
+"警告: この車種での openpilot の縦制御はアルファ版で、AEB(自動緊急ブレーキ)を無効にします。"
+"
この車では、openpilot は縦制御の代わりに車両内蔵の ACC を既定で使用します。"
+"openpilot の縦制御に切り替えるには有効にしてください。縦制御(アルファ)を有効にする際は、"
+"Experimental モードの有効化を推奨します。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:137
+#, python-format
+msgid "ACTIVE"
+msgstr "アクティブ"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15
+#, python-format
+msgid ""
+"ADB (Android Debug Bridge) allows connecting to your device over USB or over "
+"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info."
+msgstr ""
+"ADB(Android Debug Bridge)は、USB またはネットワーク経由でデバイスに接続できます。"
+"詳細は https://docs.comma.ai/how-to/connect-to-comma を参照してください。"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30
+#, python-format
+msgid "ADD"
+msgstr "追加"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110
+#, python-format
+msgid "Acknowledge Excessive Actuation"
+msgstr "過度な作動を確認"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Aggressive"
+msgstr "アグレッシブ"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116
+#, python-format
+msgid "Agree"
+msgstr "同意する"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70
+#, python-format
+msgid "Always-On Driver Monitoring"
+msgstr "常時ドライバーモニタリング"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183
+#, python-format
+msgid ""
+"An alpha version of openpilot longitudinal control can be tested, along with "
+"Experimental mode, on non-release branches."
+msgstr ""
+"openpilot 縦制御のアルファ版は、Experimental モードとともに非リリースブランチでテストできます。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Are you sure you want to power off?"
+msgstr "電源をオフにしますか?"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Are you sure you want to reboot?"
+msgstr "再起動しますか?"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Are you sure you want to reset calibration?"
+msgstr "キャリブレーションをリセットしますか?"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Are you sure you want to uninstall?"
+msgstr "アンインストールしますか?"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147
+#, python-format
+msgid "Back"
+msgstr "戻る"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38
+#, python-format
+msgid "Become a comma prime member at connect.comma.ai"
+msgstr "connect.comma.ai で comma prime に加入"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130
+#, python-format
+msgid "Bookmark connect.comma.ai to your home screen to use it like an app"
+msgstr "connect.comma.ai をホーム画面に追加してアプリのように使う"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "CHANGE"
+msgstr "変更"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142
+#, python-format
+msgid "CHECK"
+msgstr "チェック"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "CHILL MODE ON"
+msgstr "CHILL モード ON"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "CONNECT"
+msgstr "接続"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "Change Language"
+msgstr "言語を変更"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129
+#, python-format
+msgid "Click \"add new device\" and scan the QR code on the right"
+msgstr "「新しいデバイスを追加」を押して右側の QR コードをスキャン"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105
+#, python-format
+msgid "Close"
+msgstr "閉じる"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48
+#, python-format
+msgid "Current Version"
+msgstr "現在のバージョン"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109
+#, python-format
+msgid "DOWNLOAD"
+msgstr "ダウンロード"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115
+#, python-format
+msgid "Decline"
+msgstr "拒否"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148
+#, python-format
+msgid "Decline, uninstall openpilot"
+msgstr "拒否して openpilot をアンインストール"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67
+#, python-format
+msgid "Developer"
+msgstr "開発者"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62
+#, python-format
+msgid "Device"
+msgstr "デバイス"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58
+#, python-format
+msgid "Disengage on Accelerator Pedal"
+msgstr "アクセルペダルで解除"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:186
+#, python-format
+msgid "Disengage to Power Off"
+msgstr "解除して電源オフ"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:174
+#, python-format
+msgid "Disengage to Reboot"
+msgstr "解除して再起動"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:106
+#, python-format
+msgid "Disengage to Reset Calibration"
+msgstr "解除してキャリブレーションをリセット"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32
+#, python-format
+msgid "Display speed in km/h instead of mph."
+msgstr "速度を mph ではなく km/h で表示します。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:61
+#, python-format
+msgid "Dongle ID"
+msgstr "ドングル ID"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#, python-format
+msgid "Download"
+msgstr "ダウンロード"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "Driver Camera"
+msgstr "ドライバーカメラ"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96
+#, python-format
+msgid "Driving Personality"
+msgstr "運転スタイル"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "ERROR"
+msgstr "エラー"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45
+#, python-format
+msgid "ETH"
+msgstr "ETH"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "EXPERIMENTAL MODE ON"
+msgstr "EXPERIMENTAL モード ON"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:225
+#, python-format
+msgid "Enable"
+msgstr "有効にする"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:38
+#, python-format
+msgid "Enable ADB"
+msgstr "ADB を有効化"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64
+#, python-format
+msgid "Enable Lane Departure Warnings"
+msgstr "車線逸脱警報を有効化"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:47
+#, python-format
+msgid "Enable SSH"
+msgstr "SSH を有効化"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30
+#, python-format
+msgid "Enable driver monitoring even when openpilot is not engaged."
+msgstr "openpilot が作動していないときもドライバーモニタリングを有効にする。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46
+#, python-format
+msgid "Enable openpilot"
+msgstr "openpilot を有効化"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186
+#, python-format
+msgid ""
+"Enable the openpilot longitudinal control (alpha) toggle to allow "
+"Experimental mode."
+msgstr ""
+"Experimental モードを許可するには、openpilot の縦制御(アルファ)トグルを有効にしてください。"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89
+#, python-format
+msgid "Enter your GitHub username"
+msgstr "GitHub のユーザー名を入力"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52
+#, python-format
+msgid "Experimental Mode"
+msgstr "Experimental モード"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:178
+#, python-format
+msgid ""
+"Experimental mode is currently unavailable on this car since the car's stock "
+"ACC is used for longitudinal control."
+msgstr ""
+"この車では縦制御に純正 ACC を使用しているため、現在 Experimental モードは利用できません。"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44
+#, python-format
+msgid "Finish Setup"
+msgstr "セットアップ完了"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66
+#, python-format
+msgid "Firehose"
+msgstr "Firehose"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18
+#, python-format
+msgid "Firehose Mode"
+msgstr "Firehose モード"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25
+#, python-format
+msgid ""
+"For maximum effectiveness, bring your device inside and connect to a good "
+"USB-C adapter and Wi-Fi weekly.\n"
+"\n"
+"Firehose Mode can also work while you're driving if connected to a hotspot "
+"or unlimited SIM card.\n"
+"\n"
+"\n"
+"Frequently Asked Questions\n"
+"\n"
+"Does it matter how or where I drive? Nope, just drive as you normally "
+"would.\n"
+"\n"
+"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a "
+"subset of your segments.\n"
+"\n"
+"What's a good USB-C adapter? Any fast phone or laptop charger should be "
+"fine.\n"
+"\n"
+"Does it matter which software I run? Yes, only upstream openpilot (and "
+"particular forks) are able to be used for training."
+msgstr ""
+"最大限の効果を得るには、端末を屋内に持ち込み、毎週優れた USB‑C アダプタと Wi‑Fi に接続してください。\n"
+"\n"
+"Firehose モードは、テザリングや無制限 SIM に接続されていれば走行中でも動作します。\n"
+"\n"
+"\n"
+"よくある質問\n"
+"\n"
+"走り方や場所は関係ありますか? いいえ、普段どおり運転してください。\n"
+"\n"
+"Firehose モードですべてのセグメントが取得されますか? いいえ、一部を選択的に取得します。\n"
+"\n"
+"良い USB‑C アダプタは? 高速なスマホやノート PC の充電器なら十分です。\n"
+"\n"
+"どのソフトウェアでも良いですか? いいえ、学習に使えるのは upstream の openpilot(と特定のフォーク)のみです。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#, python-format
+msgid "GOOD"
+msgstr "良好"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128
+#, python-format
+msgid "Go to https://connect.comma.ai on your phone"
+msgstr "スマホで https://connect.comma.ai にアクセス"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "HIGH"
+msgstr "高"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:139
+#, python-format
+msgid "INACTIVE: connect to an unmetered network"
+msgstr "非アクティブ: 従量制でないネットワークに接続してください"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131
+#, python-format
+msgid "INSTALL"
+msgstr "インストール"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#, python-format
+msgid "Install Update"
+msgstr "アップデートをインストール"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:55
+#, python-format
+msgid "Joystick Debug Mode"
+msgstr "ジョイスティックデバッグモード"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29
+#, python-format
+msgid "LOADING"
+msgstr "読み込み中"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48
+#, python-format
+msgid "LTE"
+msgstr "LTE"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:63
+#, python-format
+msgid "Longitudinal Maneuver Mode"
+msgstr "縦方向マニューバーモード"
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148
+#, python-format
+msgid "MAX"
+msgstr "最大"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75
+#, python-format
+msgid ""
+"Maximize your training data uploads to improve openpilot's driving models."
+msgstr "学習データのアップロードを最大化し、openpilot の走行モデルを改善しましょう。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "NO"
+msgstr "NO"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63
+#, python-format
+msgid "Network"
+msgstr "ネットワーク"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114
+#, python-format
+msgid "No SSH keys found"
+msgstr "SSH 鍵が見つかりません"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126
+#, python-format, python-brace-format
+msgid "No SSH keys found for user '{username}'"
+msgstr "ユーザー『{username}』の SSH 鍵が見つかりません"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18
+#, python-format
+msgid "No release notes available."
+msgstr "リリースノートはありません。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#, python-format
+msgid "OFFLINE"
+msgstr "オフライン"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#, python-format
+msgid "OK"
+msgstr "OK"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "ONLINE"
+msgstr "オンライン"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20
+#, python-format
+msgid "Open"
+msgstr "開く"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "PAIR"
+msgstr "ペアリング"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "PANDA"
+msgstr "PANDA"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "PREVIEW"
+msgstr "プレビュー"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44
+#, python-format
+msgid "PRIME FEATURES:"
+msgstr "PRIME 機能:"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "Pair Device"
+msgstr "デバイスをペアリング"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19
+#, python-format
+msgid "Pair device"
+msgstr "デバイスをペアリング"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103
+#, python-format
+msgid "Pair your device to your comma account"
+msgstr "デバイスをあなたの comma アカウントにペアリング"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25
+#, python-format
+msgid ""
+"Pair your device with comma connect (connect.comma.ai) and claim your comma "
+"prime offer."
+msgstr ""
+"デバイスを comma connect(connect.comma.ai)にペアリングして、comma prime の特典を受け取りましょう。"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91
+#, python-format
+msgid "Please connect to Wi-Fi to complete initial pairing"
+msgstr "初回のペアリングを完了するには Wi‑Fi に接続してください"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Power Off"
+msgstr "電源オフ"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26
+#, python-format
+msgid ""
+"Preview the driver facing camera to ensure that driver monitoring has good "
+"visibility. (vehicle must be off)"
+msgstr ""
+"ドライバー向きカメラをプレビューして、ドライバーモニタリングの視認性を確認してください。(車両はオフにする必要があります)"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161
+#, python-format
+msgid "QR Code Error"
+msgstr "QR コードエラー"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31
+#, python-format
+msgid "REMOVE"
+msgstr "削除"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "RESET"
+msgstr "リセット"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "REVIEW"
+msgstr "確認"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Reboot"
+msgstr "再起動"
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66
+#, python-format
+msgid "Reboot Device"
+msgstr "デバイスを再起動"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113
+#, python-format
+msgid "Reboot and Update"
+msgstr "再起動して更新"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27
+#, python-format
+msgid ""
+"Receive alerts to steer back into the lane when your vehicle drifts over a "
+"detected lane line without a turn signal activated while driving over 31 mph "
+"(50 km/h)."
+msgstr ""
+"時速 31mph(50km/h)以上で走行中、ウインカー未使用のまま検出された車線を越えて逸脱した場合、車線に戻るための警報を受け取ります。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76
+#, python-format
+msgid "Record and Upload Driver Camera"
+msgstr "ドライバーカメラを録画してアップロード"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82
+#, python-format
+msgid "Record and Upload Microphone Audio"
+msgstr "マイク音声を録音してアップロード"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33
+#, python-format
+msgid ""
+"Record and store microphone audio while driving. The audio will be included "
+"in the dashcam video in comma connect."
+msgstr ""
+"走行中にマイク音声を録音・保存します。音声は comma connect のドライブレコーダー動画に含まれます。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "Regulatory"
+msgstr "規制情報"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Relaxed"
+msgstr "リラックス"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote access"
+msgstr "リモートアクセス"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote snapshots"
+msgstr "リモートスナップショット"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123
+#, python-format
+msgid "Request timed out"
+msgstr "リクエストがタイムアウトしました"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Reset"
+msgstr "リセット"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "Reset Calibration"
+msgstr "キャリブレーションをリセット"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "Review Training Guide"
+msgstr "トレーニングガイドを確認"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28
+#, python-format
+msgid "Review the rules, features, and limitations of openpilot"
+msgstr "openpilot のルール、機能、制限を確認"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62
+#, python-format
+msgid "Serial"
+msgstr "シリアル"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107
+#, python-format
+msgid "Snooze Update"
+msgstr "更新をスヌーズ"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65
+#, python-format
+msgid "Software"
+msgstr "ソフトウェア"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Standard"
+msgstr "スタンダード"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22
+#, python-format
+msgid ""
+"Standard is recommended. In aggressive mode, openpilot will follow lead cars "
+"closer and be more aggressive with the gas and brake. In relaxed mode "
+"openpilot will stay further away from lead cars. On supported cars, you can "
+"cycle through these personalities with your steering wheel distance button."
+msgstr ""
+"おすすめはスタンダードです。アグレッシブでは先行車に近づき、加減速が強めになります。"
+"リラックスでは先行車との距離を保ちます。対応車種では、ハンドルの車間ボタンでこれらのモードを切り替えられます。"
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65
+#, python-format
+msgid "System Unresponsive"
+msgstr "システムが応答しません"
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58
+#, python-format
+msgid "TAKE CONTROL IMMEDIATELY"
+msgstr "直ちに操作を引き継いでください"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "TEMP"
+msgstr "TEMP"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64
+#, python-format
+msgid "Toggles"
+msgstr "トグル"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70
+#, python-format
+msgid "UNINSTALL"
+msgstr "アンインストール"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155
+#, python-format
+msgid "UPDATE"
+msgstr "アップデート"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Uninstall"
+msgstr "アンインストール"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117
+#, python-format
+msgid "Unknown"
+msgstr "不明"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47
+#, python-format
+msgid "Updates are only downloaded while the car is off."
+msgstr "アップデートのダウンロードは車両の電源オフ時のみ行われます。"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33
+#, python-format
+msgid "Upgrade Now"
+msgstr "今すぐアップグレード"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31
+#, python-format
+msgid ""
+"Upload data from the driver facing camera and help improve the driver "
+"monitoring algorithm."
+msgstr ""
+"ドライバー向きカメラのデータをアップロードして、ドライバーモニタリングのアルゴリズム改善に協力してください。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88
+#, python-format
+msgid "Use Metric System"
+msgstr "メートル法を使用"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17
+#, python-format
+msgid ""
+"Use the openpilot system for adaptive cruise control and lane keep driver "
+"assistance. Your attention is required at all times to use this feature."
+msgstr ""
+"openpilot を使用して、ACC と LKAS のドライバー支援を行います。使用中は常に注意が必要です。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "VEHICLE"
+msgstr "VEHICLE"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "VIEW"
+msgstr "表示"
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52
+#, python-format
+msgid "Waiting to start"
+msgstr "開始待ち"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19
+#, python-format
+msgid ""
+"Warning: This grants SSH access to all public keys in your GitHub settings. "
+"Never enter a GitHub username other than your own. A comma employee will "
+"NEVER ask you to add their GitHub username."
+msgstr ""
+"警告: GitHub 設定の公開鍵すべてに SSH アクセスを許可します。自分以外の GitHub ユーザー名を入力しないでください。"
+"comma の従業員が自分の GitHub ユーザー名を追加するよう求めることは決してありません。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111
+#, python-format
+msgid "Welcome to openpilot"
+msgstr "openpilot へようこそ"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20
+#, python-format
+msgid "When enabled, pressing the accelerator pedal will disengage openpilot."
+msgstr "有効にすると、アクセルペダルを踏むと openpilot が解除されます。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44
+#, python-format
+msgid "Wi-Fi"
+msgstr "Wi‑Fi"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145
+#, python-format
+msgid "You must accept the Terms and Conditions in order to use openpilot."
+msgstr "openpilot を使用するには、利用規約への同意が必要です。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112
+#, python-format
+msgid ""
+"You must accept the Terms and Conditions to use openpilot. Read the latest "
+"terms at https://comma.ai/terms before continuing."
+msgstr ""
+"openpilot を使用するには利用規約への同意が必要です。続行前に https://comma.ai/terms で最新の規約を確認してください。"
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34
+#, python-format
+msgid "camera starting"
+msgstr "カメラ起動中"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63
+#, python-format
+msgid "comma prime"
+msgstr "comma prime"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105
+#, python-format
+msgid "failed to check for update"
+msgstr "アップデートの確認に失敗しました"
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "km/h"
+msgstr "km/h"
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "mph"
+msgstr "mph"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19
+#, python-format
+msgid "never"
+msgstr "なし"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30
+#, python-format
+msgid "now"
+msgstr "今"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:70
+#, python-format
+msgid "openpilot Longitudinal Control (Alpha)"
+msgstr "openpilot 縦制御(アルファ)"
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51
+#, python-format
+msgid "openpilot Unavailable"
+msgstr "openpilot は利用できません"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:155
+#, python-format
+msgid ""
+"openpilot defaults to driving in chill mode. Experimental mode enables alpha-"
+"level features that aren't ready for chill mode. Experimental features are "
+"listed below:
End-to-End Longitudinal Control
Let the driving "
+"model control the gas and brakes. openpilot will drive as it thinks a human "
+"would, including stopping for red lights and stop signs. Since the driving "
+"model decides the speed to drive, the set speed will only act as an upper "
+"bound. This is an alpha quality feature; mistakes should be expected."
+"
New Driving Visualization
The driving visualization will "
+"transition to the road-facing wide-angle camera at low speeds to better show "
+"some turns. The Experimental mode logo will also be shown in the top right "
+"corner."
+msgstr ""
+"openpilot は既定で chill モードで走行します。Experimental モードでは、chill モード向けに未成熟なアルファ機能が有効になります。"
+"実験的な機能は以下のとおりです:
エンドツーエンド縦制御
走行モデルがアクセルとブレーキを制御します。"
+"openpilot は人間のように走行し、赤信号や一時停止でも停止します。モデルが速度を決めるため、設定速度は上限としてのみ機能します。"
+"これはアルファ品質の機能であり、誤動作が発生する可能性があります。"
+"
新しい走行ビジュアライゼーション
低速時には前方広角カメラの表示に切り替わり、曲がりをより分かりやすく表示します。"
+"右上に Experimental モードのロゴも表示されます。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20
+#, python-format
+msgid ""
+"openpilot learns to drive by watching humans, like you, drive.\n"
+"\n"
+"Firehose Mode allows you to maximize your training data uploads to improve "
+"openpilot's driving models. More data means bigger models, which means "
+"better Experimental Mode."
+msgstr ""
+"openpilot は、あなたのような人間の運転を観察して運転を学習します。\n\n"
+"Firehose モードを使うと、学習データのアップロードを最大化して openpilot の走行モデルを改善できます。"
+"データが増えるほどモデルは大型化し、Experimental モードがより良くなります。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:180
+#, python-format
+msgid "openpilot longitudinal control may come in a future update."
+msgstr "openpilot の縦制御は今後のアップデートで提供される可能性があります。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27
+#, python-format
+msgid ""
+"openpilot requires the device to be mounted within 4° left or right and "
+"within 5° up or 9° down."
+msgstr ""
+"openpilot では、デバイスは左右 4°、上 5°/下 9° の範囲で取り付ける必要があります。"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116
+#, python-format
+msgid "up to date, last checked never"
+msgstr "最新です(最終確認: なし)"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114
+#, python-format
+msgid "up to date, last checked {}"
+msgstr "最新です(最終確認: {})"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108
+#, python-format
+msgid "update available"
+msgstr "更新があります"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169
+#, python-format
+msgid "{} ALERT"
+msgid_plural "{} ALERTS"
+msgstr[0] "{} 件の警報"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39
+#, python-format
+msgid "{} day ago"
+msgid_plural "{} days ago"
+msgstr[0] "{} 日前"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36
+#, python-format
+msgid "{} hour ago"
+msgid_plural "{} hours ago"
+msgstr[0] "{} 時間前"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33
+#, python-format
+msgid "{} minute ago"
+msgid_plural "{} minutes ago"
+msgstr[0] "{} 分前"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:110
+#, python-format
+msgid "{} segment of your driving is in the training dataset so far."
+msgid_plural "{} segment of your driving is in the training dataset so far."
+msgstr[0] "これまでにあなたの運転のセグメント {} 件が学習データセットに含まれています。"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62
+#, python-format
+msgid "✓ SUBSCRIBED"
+msgstr "✓ 登録済み"
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22
+#, python-format
+msgid "🔥 Firehose Mode 🔥"
+msgstr "🔥 Firehose モード 🔥"
diff --git a/selfdrive/ui/translations/app_ko.po b/selfdrive/ui/translations/app_ko.po
new file mode 100644
index 0000000000..9cb34ac247
--- /dev/null
+++ b/selfdrive/ui/translations/app_ko.po
@@ -0,0 +1,937 @@
+# Korean translations for PACKAGE package.
+# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Automatically generated, 2025.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2025-10-20 18:45-0700\n"
+"PO-Revision-Date: 2025-10-20 18:19-0700\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: ko\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:123
+#, python-format
+msgid " Changing this setting will restart openpilot if the car is powered on."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43
+#, python-format
+msgid "--"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "1 year of drive storage"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "24/7 LTE connectivity"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46
+#, python-format
+msgid "2G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47
+#, python-format
+msgid "3G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49
+#, python-format
+msgid "5G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23
+#, python-format
+msgid ""
+"WARNING: openpilot longitudinal control is in alpha for this car and will "
+"disable Automatic Emergency Braking (AEB).
On this car, openpilot "
+"defaults to the car's built-in ACC instead of openpilot's longitudinal "
+"control. Enable this to switch to openpilot longitudinal control. Enabling "
+"Experimental mode is recommended when enabling openpilot longitudinal "
+"control alpha."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:137
+#, python-format
+msgid "ACTIVE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15
+#, python-format
+msgid ""
+"ADB (Android Debug Bridge) allows connecting to your device over USB or over "
+"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30
+#, python-format
+msgid "ADD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110
+#, python-format
+msgid "Acknowledge Excessive Actuation"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Aggressive"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116
+#, python-format
+msgid "Agree"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70
+#, python-format
+msgid "Always-On Driver Monitoring"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183
+#, python-format
+msgid ""
+"An alpha version of openpilot longitudinal control can be tested, along with "
+"Experimental mode, on non-release branches."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Are you sure you want to power off?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Are you sure you want to reboot?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Are you sure you want to reset calibration?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Are you sure you want to uninstall?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147
+#, python-format
+msgid "Back"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38
+#, python-format
+msgid "Become a comma prime member at connect.comma.ai"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130
+#, python-format
+msgid "Bookmark connect.comma.ai to your home screen to use it like an app"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "CHANGE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142
+#, python-format
+msgid "CHECK"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "CHILL MODE ON"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "CONNECT"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "Change Language"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129
+#, python-format
+msgid "Click \"add new device\" and scan the QR code on the right"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105
+#, python-format
+msgid "Close"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48
+#, python-format
+msgid "Current Version"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109
+#, python-format
+msgid "DOWNLOAD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115
+#, python-format
+msgid "Decline"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148
+#, python-format
+msgid "Decline, uninstall openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67
+#, python-format
+msgid "Developer"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62
+#, python-format
+msgid "Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58
+#, python-format
+msgid "Disengage on Accelerator Pedal"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:186
+#, python-format
+msgid "Disengage to Power Off"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:174
+#, python-format
+msgid "Disengage to Reboot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:106
+#, python-format
+msgid "Disengage to Reset Calibration"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32
+#, python-format
+msgid "Display speed in km/h instead of mph."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:61
+#, python-format
+msgid "Dongle ID"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#, python-format
+msgid "Download"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "Driver Camera"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96
+#, python-format
+msgid "Driving Personality"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "ERROR"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45
+#, python-format
+msgid "ETH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "EXPERIMENTAL MODE ON"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:225
+#, python-format
+msgid "Enable"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:38
+#, python-format
+msgid "Enable ADB"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64
+#, python-format
+msgid "Enable Lane Departure Warnings"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:47
+#, python-format
+msgid "Enable SSH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30
+#, python-format
+msgid "Enable driver monitoring even when openpilot is not engaged."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46
+#, python-format
+msgid "Enable openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186
+#, python-format
+msgid ""
+"Enable the openpilot longitudinal control (alpha) toggle to allow "
+"Experimental mode."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89
+#, python-format
+msgid "Enter your GitHub username"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52
+#, python-format
+msgid "Experimental Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:178
+#, python-format
+msgid ""
+"Experimental mode is currently unavailable on this car since the car's stock "
+"ACC is used for longitudinal control."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44
+#, python-format
+msgid "Finish Setup"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66
+#, python-format
+msgid "Firehose"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18
+#, python-format
+msgid "Firehose Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25
+#, python-format
+msgid ""
+"For maximum effectiveness, bring your device inside and connect to a good "
+"USB-C adapter and Wi-Fi weekly.\n"
+"\n"
+"Firehose Mode can also work while you're driving if connected to a hotspot "
+"or unlimited SIM card.\n"
+"\n"
+"\n"
+"Frequently Asked Questions\n"
+"\n"
+"Does it matter how or where I drive? Nope, just drive as you normally "
+"would.\n"
+"\n"
+"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a "
+"subset of your segments.\n"
+"\n"
+"What's a good USB-C adapter? Any fast phone or laptop charger should be "
+"fine.\n"
+"\n"
+"Does it matter which software I run? Yes, only upstream openpilot (and "
+"particular forks) are able to be used for training."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#, python-format
+msgid "GOOD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128
+#, python-format
+msgid "Go to https://connect.comma.ai on your phone"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "HIGH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:139
+#, python-format
+msgid "INACTIVE: connect to an unmetered network"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131
+#, python-format
+msgid "INSTALL"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#, python-format
+msgid "Install Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:55
+#, python-format
+msgid "Joystick Debug Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29
+#, python-format
+msgid "LOADING"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48
+#, python-format
+msgid "LTE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:63
+#, python-format
+msgid "Longitudinal Maneuver Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148
+#, python-format
+msgid "MAX"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75
+#, python-format
+msgid ""
+"Maximize your training data uploads to improve openpilot's driving models."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "NO"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63
+#, python-format
+msgid "Network"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114
+#, python-format
+msgid "No SSH keys found"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126
+#, python-format, python-brace-format
+msgid "No SSH keys found for user '{username}'"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18
+#, python-format
+msgid "No release notes available."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#, python-format
+msgid "OFFLINE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#, python-format
+msgid "OK"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "ONLINE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20
+#, python-format
+msgid "Open"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "PAIR"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "PANDA"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "PREVIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44
+#, python-format
+msgid "PRIME FEATURES:"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "Pair Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19
+#, python-format
+msgid "Pair device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103
+#, python-format
+msgid "Pair your device to your comma account"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25
+#, python-format
+msgid ""
+"Pair your device with comma connect (connect.comma.ai) and claim your comma "
+"prime offer."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91
+#, python-format
+msgid "Please connect to Wi-Fi to complete initial pairing"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Power Off"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26
+#, python-format
+msgid ""
+"Preview the driver facing camera to ensure that driver monitoring has good "
+"visibility. (vehicle must be off)"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161
+#, python-format
+msgid "QR Code Error"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31
+#, python-format
+msgid "REMOVE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "RESET"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "REVIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Reboot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66
+#, python-format
+msgid "Reboot Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113
+#, python-format
+msgid "Reboot and Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27
+#, python-format
+msgid ""
+"Receive alerts to steer back into the lane when your vehicle drifts over a "
+"detected lane line without a turn signal activated while driving over 31 mph "
+"(50 km/h)."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76
+#, python-format
+msgid "Record and Upload Driver Camera"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82
+#, python-format
+msgid "Record and Upload Microphone Audio"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33
+#, python-format
+msgid ""
+"Record and store microphone audio while driving. The audio will be included "
+"in the dashcam video in comma connect."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "Regulatory"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Relaxed"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote access"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote snapshots"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123
+#, python-format
+msgid "Request timed out"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Reset"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "Reset Calibration"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "Review Training Guide"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28
+#, python-format
+msgid "Review the rules, features, and limitations of openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62
+#, python-format
+msgid "Serial"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107
+#, python-format
+msgid "Snooze Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65
+#, python-format
+msgid "Software"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Standard"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22
+#, python-format
+msgid ""
+"Standard is recommended. In aggressive mode, openpilot will follow lead cars "
+"closer and be more aggressive with the gas and brake. In relaxed mode "
+"openpilot will stay further away from lead cars. On supported cars, you can "
+"cycle through these personalities with your steering wheel distance button."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65
+#, python-format
+msgid "System Unresponsive"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58
+#, python-format
+msgid "TAKE CONTROL IMMEDIATELY"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "TEMP"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64
+#, python-format
+msgid "Toggles"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70
+#, python-format
+msgid "UNINSTALL"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155
+#, python-format
+msgid "UPDATE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Uninstall"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117
+#, python-format
+msgid "Unknown"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47
+#, python-format
+msgid "Updates are only downloaded while the car is off."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33
+#, python-format
+msgid "Upgrade Now"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31
+#, python-format
+msgid ""
+"Upload data from the driver facing camera and help improve the driver "
+"monitoring algorithm."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88
+#, python-format
+msgid "Use Metric System"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17
+#, python-format
+msgid ""
+"Use the openpilot system for adaptive cruise control and lane keep driver "
+"assistance. Your attention is required at all times to use this feature."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "VEHICLE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "VIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52
+#, python-format
+msgid "Waiting to start"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19
+#, python-format
+msgid ""
+"Warning: This grants SSH access to all public keys in your GitHub settings. "
+"Never enter a GitHub username other than your own. A comma employee will "
+"NEVER ask you to add their GitHub username."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111
+#, python-format
+msgid "Welcome to openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20
+#, python-format
+msgid "When enabled, pressing the accelerator pedal will disengage openpilot."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44
+#, python-format
+msgid "Wi-Fi"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145
+#, python-format
+msgid "You must accept the Terms and Conditions in order to use openpilot."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112
+#, python-format
+msgid ""
+"You must accept the Terms and Conditions to use openpilot. Read the latest "
+"terms at https://comma.ai/terms before continuing."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34
+#, python-format
+msgid "camera starting"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63
+#, python-format
+msgid "comma prime"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105
+#, python-format
+msgid "failed to check for update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "km/h"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "mph"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19
+#, python-format
+msgid "never"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30
+#, python-format
+msgid "now"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:70
+#, python-format
+msgid "openpilot Longitudinal Control (Alpha)"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51
+#, python-format
+msgid "openpilot Unavailable"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:155
+#, python-format
+msgid ""
+"openpilot defaults to driving in chill mode. Experimental mode enables alpha-"
+"level features that aren't ready for chill mode. Experimental features are "
+"listed below:
End-to-End Longitudinal Control
Let the driving "
+"model control the gas and brakes. openpilot will drive as it thinks a human "
+"would, including stopping for red lights and stop signs. Since the driving "
+"model decides the speed to drive, the set speed will only act as an upper "
+"bound. This is an alpha quality feature; mistakes should be expected."
+"
New Driving Visualization
The driving visualization will "
+"transition to the road-facing wide-angle camera at low speeds to better show "
+"some turns. The Experimental mode logo will also be shown in the top right "
+"corner."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20
+#, python-format
+msgid ""
+"openpilot learns to drive by watching humans, like you, drive.\n"
+"\n"
+"Firehose Mode allows you to maximize your training data uploads to improve "
+"openpilot's driving models. More data means bigger models, which means "
+"better Experimental Mode."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:180
+#, python-format
+msgid "openpilot longitudinal control may come in a future update."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27
+#, python-format
+msgid ""
+"openpilot requires the device to be mounted within 4° left or right and "
+"within 5° up or 9° down."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116
+#, python-format
+msgid "up to date, last checked never"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114
+#, python-format
+msgid "up to date, last checked {}"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108
+#, python-format
+msgid "update available"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169
+#, python-format
+msgid "{} ALERT"
+msgid_plural "{} ALERTS"
+msgstr[0] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39
+#, python-format
+msgid "{} day ago"
+msgid_plural "{} days ago"
+msgstr[0] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36
+#, python-format
+msgid "{} hour ago"
+msgid_plural "{} hours ago"
+msgstr[0] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33
+#, python-format
+msgid "{} minute ago"
+msgid_plural "{} minutes ago"
+msgstr[0] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:110
+#, python-format
+msgid "{} segment of your driving is in the training dataset so far."
+msgid_plural "{} segment of your driving is in the training dataset so far."
+msgstr[0] ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62
+#, python-format
+msgid "✓ SUBSCRIBED"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22
+#, python-format
+msgid "🔥 Firehose Mode 🔥"
+msgstr ""
diff --git a/selfdrive/ui/translations/app_th.po b/selfdrive/ui/translations/app_th.po
new file mode 100644
index 0000000000..cd43157e19
--- /dev/null
+++ b/selfdrive/ui/translations/app_th.po
@@ -0,0 +1,942 @@
+# Thai translations for PACKAGE package.
+# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Automatically generated, 2025.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2025-10-20 18:45-0700\n"
+"PO-Revision-Date: 2025-10-20 18:19-0700\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: th\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:123
+#, python-format
+msgid " Changing this setting will restart openpilot if the car is powered on."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43
+#, python-format
+msgid "--"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "1 year of drive storage"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "24/7 LTE connectivity"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46
+#, python-format
+msgid "2G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47
+#, python-format
+msgid "3G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49
+#, python-format
+msgid "5G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23
+#, python-format
+msgid ""
+"WARNING: openpilot longitudinal control is in alpha for this car and will "
+"disable Automatic Emergency Braking (AEB).
On this car, openpilot "
+"defaults to the car's built-in ACC instead of openpilot's longitudinal "
+"control. Enable this to switch to openpilot longitudinal control. Enabling "
+"Experimental mode is recommended when enabling openpilot longitudinal "
+"control alpha."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:137
+#, python-format
+msgid "ACTIVE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15
+#, python-format
+msgid ""
+"ADB (Android Debug Bridge) allows connecting to your device over USB or over "
+"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30
+#, python-format
+msgid "ADD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110
+#, python-format
+msgid "Acknowledge Excessive Actuation"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Aggressive"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116
+#, python-format
+msgid "Agree"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70
+#, python-format
+msgid "Always-On Driver Monitoring"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183
+#, python-format
+msgid ""
+"An alpha version of openpilot longitudinal control can be tested, along with "
+"Experimental mode, on non-release branches."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Are you sure you want to power off?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Are you sure you want to reboot?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Are you sure you want to reset calibration?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Are you sure you want to uninstall?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147
+#, python-format
+msgid "Back"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38
+#, python-format
+msgid "Become a comma prime member at connect.comma.ai"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130
+#, python-format
+msgid "Bookmark connect.comma.ai to your home screen to use it like an app"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "CHANGE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142
+#, python-format
+msgid "CHECK"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "CHILL MODE ON"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "CONNECT"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "Change Language"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129
+#, python-format
+msgid "Click \"add new device\" and scan the QR code on the right"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105
+#, python-format
+msgid "Close"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48
+#, python-format
+msgid "Current Version"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109
+#, python-format
+msgid "DOWNLOAD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115
+#, python-format
+msgid "Decline"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148
+#, python-format
+msgid "Decline, uninstall openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67
+#, python-format
+msgid "Developer"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62
+#, python-format
+msgid "Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58
+#, python-format
+msgid "Disengage on Accelerator Pedal"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:186
+#, python-format
+msgid "Disengage to Power Off"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:174
+#, python-format
+msgid "Disengage to Reboot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:106
+#, python-format
+msgid "Disengage to Reset Calibration"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32
+#, python-format
+msgid "Display speed in km/h instead of mph."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:61
+#, python-format
+msgid "Dongle ID"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#, python-format
+msgid "Download"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "Driver Camera"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96
+#, python-format
+msgid "Driving Personality"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "ERROR"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45
+#, python-format
+msgid "ETH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "EXPERIMENTAL MODE ON"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:225
+#, python-format
+msgid "Enable"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:38
+#, python-format
+msgid "Enable ADB"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64
+#, python-format
+msgid "Enable Lane Departure Warnings"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:47
+#, python-format
+msgid "Enable SSH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30
+#, python-format
+msgid "Enable driver monitoring even when openpilot is not engaged."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46
+#, python-format
+msgid "Enable openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186
+#, python-format
+msgid ""
+"Enable the openpilot longitudinal control (alpha) toggle to allow "
+"Experimental mode."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89
+#, python-format
+msgid "Enter your GitHub username"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52
+#, python-format
+msgid "Experimental Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:178
+#, python-format
+msgid ""
+"Experimental mode is currently unavailable on this car since the car's stock "
+"ACC is used for longitudinal control."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44
+#, python-format
+msgid "Finish Setup"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66
+#, python-format
+msgid "Firehose"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18
+#, python-format
+msgid "Firehose Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25
+#, python-format
+msgid ""
+"For maximum effectiveness, bring your device inside and connect to a good "
+"USB-C adapter and Wi-Fi weekly.\n"
+"\n"
+"Firehose Mode can also work while you're driving if connected to a hotspot "
+"or unlimited SIM card.\n"
+"\n"
+"\n"
+"Frequently Asked Questions\n"
+"\n"
+"Does it matter how or where I drive? Nope, just drive as you normally "
+"would.\n"
+"\n"
+"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a "
+"subset of your segments.\n"
+"\n"
+"What's a good USB-C adapter? Any fast phone or laptop charger should be "
+"fine.\n"
+"\n"
+"Does it matter which software I run? Yes, only upstream openpilot (and "
+"particular forks) are able to be used for training."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#, python-format
+msgid "GOOD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128
+#, python-format
+msgid "Go to https://connect.comma.ai on your phone"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "HIGH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:139
+#, python-format
+msgid "INACTIVE: connect to an unmetered network"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131
+#, python-format
+msgid "INSTALL"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#, python-format
+msgid "Install Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:55
+#, python-format
+msgid "Joystick Debug Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29
+#, python-format
+msgid "LOADING"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48
+#, python-format
+msgid "LTE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:63
+#, python-format
+msgid "Longitudinal Maneuver Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148
+#, python-format
+msgid "MAX"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75
+#, python-format
+msgid ""
+"Maximize your training data uploads to improve openpilot's driving models."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "NO"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63
+#, python-format
+msgid "Network"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114
+#, python-format
+msgid "No SSH keys found"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126
+#, python-format, python-brace-format
+msgid "No SSH keys found for user '{username}'"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18
+#, python-format
+msgid "No release notes available."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#, python-format
+msgid "OFFLINE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#, python-format
+msgid "OK"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "ONLINE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20
+#, python-format
+msgid "Open"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "PAIR"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "PANDA"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "PREVIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44
+#, python-format
+msgid "PRIME FEATURES:"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "Pair Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19
+#, python-format
+msgid "Pair device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103
+#, python-format
+msgid "Pair your device to your comma account"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25
+#, python-format
+msgid ""
+"Pair your device with comma connect (connect.comma.ai) and claim your comma "
+"prime offer."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91
+#, python-format
+msgid "Please connect to Wi-Fi to complete initial pairing"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Power Off"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26
+#, python-format
+msgid ""
+"Preview the driver facing camera to ensure that driver monitoring has good "
+"visibility. (vehicle must be off)"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161
+#, python-format
+msgid "QR Code Error"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31
+#, python-format
+msgid "REMOVE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "RESET"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "REVIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Reboot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66
+#, python-format
+msgid "Reboot Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113
+#, python-format
+msgid "Reboot and Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27
+#, python-format
+msgid ""
+"Receive alerts to steer back into the lane when your vehicle drifts over a "
+"detected lane line without a turn signal activated while driving over 31 mph "
+"(50 km/h)."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76
+#, python-format
+msgid "Record and Upload Driver Camera"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82
+#, python-format
+msgid "Record and Upload Microphone Audio"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33
+#, python-format
+msgid ""
+"Record and store microphone audio while driving. The audio will be included "
+"in the dashcam video in comma connect."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "Regulatory"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Relaxed"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote access"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote snapshots"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123
+#, python-format
+msgid "Request timed out"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Reset"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "Reset Calibration"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "Review Training Guide"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28
+#, python-format
+msgid "Review the rules, features, and limitations of openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62
+#, python-format
+msgid "Serial"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107
+#, python-format
+msgid "Snooze Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65
+#, python-format
+msgid "Software"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Standard"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22
+#, python-format
+msgid ""
+"Standard is recommended. In aggressive mode, openpilot will follow lead cars "
+"closer and be more aggressive with the gas and brake. In relaxed mode "
+"openpilot will stay further away from lead cars. On supported cars, you can "
+"cycle through these personalities with your steering wheel distance button."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65
+#, python-format
+msgid "System Unresponsive"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58
+#, python-format
+msgid "TAKE CONTROL IMMEDIATELY"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "TEMP"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64
+#, python-format
+msgid "Toggles"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70
+#, python-format
+msgid "UNINSTALL"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155
+#, python-format
+msgid "UPDATE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Uninstall"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117
+#, python-format
+msgid "Unknown"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47
+#, python-format
+msgid "Updates are only downloaded while the car is off."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33
+#, python-format
+msgid "Upgrade Now"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31
+#, python-format
+msgid ""
+"Upload data from the driver facing camera and help improve the driver "
+"monitoring algorithm."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88
+#, python-format
+msgid "Use Metric System"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17
+#, python-format
+msgid ""
+"Use the openpilot system for adaptive cruise control and lane keep driver "
+"assistance. Your attention is required at all times to use this feature."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "VEHICLE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "VIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52
+#, python-format
+msgid "Waiting to start"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19
+#, python-format
+msgid ""
+"Warning: This grants SSH access to all public keys in your GitHub settings. "
+"Never enter a GitHub username other than your own. A comma employee will "
+"NEVER ask you to add their GitHub username."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111
+#, python-format
+msgid "Welcome to openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20
+#, python-format
+msgid "When enabled, pressing the accelerator pedal will disengage openpilot."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44
+#, python-format
+msgid "Wi-Fi"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145
+#, python-format
+msgid "You must accept the Terms and Conditions in order to use openpilot."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112
+#, python-format
+msgid ""
+"You must accept the Terms and Conditions to use openpilot. Read the latest "
+"terms at https://comma.ai/terms before continuing."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34
+#, python-format
+msgid "camera starting"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63
+#, python-format
+msgid "comma prime"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105
+#, python-format
+msgid "failed to check for update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "km/h"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "mph"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19
+#, python-format
+msgid "never"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30
+#, python-format
+msgid "now"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:70
+#, python-format
+msgid "openpilot Longitudinal Control (Alpha)"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51
+#, python-format
+msgid "openpilot Unavailable"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:155
+#, python-format
+msgid ""
+"openpilot defaults to driving in chill mode. Experimental mode enables alpha-"
+"level features that aren't ready for chill mode. Experimental features are "
+"listed below:
End-to-End Longitudinal Control
Let the driving "
+"model control the gas and brakes. openpilot will drive as it thinks a human "
+"would, including stopping for red lights and stop signs. Since the driving "
+"model decides the speed to drive, the set speed will only act as an upper "
+"bound. This is an alpha quality feature; mistakes should be expected."
+"
New Driving Visualization
The driving visualization will "
+"transition to the road-facing wide-angle camera at low speeds to better show "
+"some turns. The Experimental mode logo will also be shown in the top right "
+"corner."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20
+#, python-format
+msgid ""
+"openpilot learns to drive by watching humans, like you, drive.\n"
+"\n"
+"Firehose Mode allows you to maximize your training data uploads to improve "
+"openpilot's driving models. More data means bigger models, which means "
+"better Experimental Mode."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:180
+#, python-format
+msgid "openpilot longitudinal control may come in a future update."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27
+#, python-format
+msgid ""
+"openpilot requires the device to be mounted within 4° left or right and "
+"within 5° up or 9° down."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116
+#, python-format
+msgid "up to date, last checked never"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114
+#, python-format
+msgid "up to date, last checked {}"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108
+#, python-format
+msgid "update available"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169
+#, python-format
+msgid "{} ALERT"
+msgid_plural "{} ALERTS"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39
+#, python-format
+msgid "{} day ago"
+msgid_plural "{} days ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36
+#, python-format
+msgid "{} hour ago"
+msgid_plural "{} hours ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33
+#, python-format
+msgid "{} minute ago"
+msgid_plural "{} minutes ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:110
+#, python-format
+msgid "{} segment of your driving is in the training dataset so far."
+msgid_plural "{} segment of your driving is in the training dataset so far."
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62
+#, python-format
+msgid "✓ SUBSCRIBED"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22
+#, python-format
+msgid "🔥 Firehose Mode 🔥"
+msgstr ""
diff --git a/selfdrive/ui/translations/app_zh-CHS.po b/selfdrive/ui/translations/app_zh-CHS.po
new file mode 100644
index 0000000000..810a1fc32d
--- /dev/null
+++ b/selfdrive/ui/translations/app_zh-CHS.po
@@ -0,0 +1,942 @@
+# Language zh-CHS translations for PACKAGE package.
+# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Automatically generated, 2025.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2025-10-20 18:45-0700\n"
+"PO-Revision-Date: 2025-10-20 18:19-0700\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: zh-CHS\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:123
+#, python-format
+msgid " Changing this setting will restart openpilot if the car is powered on."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43
+#, python-format
+msgid "--"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "1 year of drive storage"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "24/7 LTE connectivity"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46
+#, python-format
+msgid "2G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47
+#, python-format
+msgid "3G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49
+#, python-format
+msgid "5G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23
+#, python-format
+msgid ""
+"WARNING: openpilot longitudinal control is in alpha for this car and will "
+"disable Automatic Emergency Braking (AEB).
On this car, openpilot "
+"defaults to the car's built-in ACC instead of openpilot's longitudinal "
+"control. Enable this to switch to openpilot longitudinal control. Enabling "
+"Experimental mode is recommended when enabling openpilot longitudinal "
+"control alpha."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:137
+#, python-format
+msgid "ACTIVE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15
+#, python-format
+msgid ""
+"ADB (Android Debug Bridge) allows connecting to your device over USB or over "
+"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30
+#, python-format
+msgid "ADD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110
+#, python-format
+msgid "Acknowledge Excessive Actuation"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Aggressive"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116
+#, python-format
+msgid "Agree"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70
+#, python-format
+msgid "Always-On Driver Monitoring"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183
+#, python-format
+msgid ""
+"An alpha version of openpilot longitudinal control can be tested, along with "
+"Experimental mode, on non-release branches."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Are you sure you want to power off?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Are you sure you want to reboot?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Are you sure you want to reset calibration?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Are you sure you want to uninstall?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147
+#, python-format
+msgid "Back"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38
+#, python-format
+msgid "Become a comma prime member at connect.comma.ai"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130
+#, python-format
+msgid "Bookmark connect.comma.ai to your home screen to use it like an app"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "CHANGE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142
+#, python-format
+msgid "CHECK"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "CHILL MODE ON"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "CONNECT"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "Change Language"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129
+#, python-format
+msgid "Click \"add new device\" and scan the QR code on the right"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105
+#, python-format
+msgid "Close"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48
+#, python-format
+msgid "Current Version"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109
+#, python-format
+msgid "DOWNLOAD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115
+#, python-format
+msgid "Decline"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148
+#, python-format
+msgid "Decline, uninstall openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67
+#, python-format
+msgid "Developer"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62
+#, python-format
+msgid "Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58
+#, python-format
+msgid "Disengage on Accelerator Pedal"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:186
+#, python-format
+msgid "Disengage to Power Off"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:174
+#, python-format
+msgid "Disengage to Reboot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:106
+#, python-format
+msgid "Disengage to Reset Calibration"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32
+#, python-format
+msgid "Display speed in km/h instead of mph."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:61
+#, python-format
+msgid "Dongle ID"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#, python-format
+msgid "Download"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "Driver Camera"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96
+#, python-format
+msgid "Driving Personality"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "ERROR"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45
+#, python-format
+msgid "ETH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "EXPERIMENTAL MODE ON"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:225
+#, python-format
+msgid "Enable"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:38
+#, python-format
+msgid "Enable ADB"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64
+#, python-format
+msgid "Enable Lane Departure Warnings"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:47
+#, python-format
+msgid "Enable SSH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30
+#, python-format
+msgid "Enable driver monitoring even when openpilot is not engaged."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46
+#, python-format
+msgid "Enable openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186
+#, python-format
+msgid ""
+"Enable the openpilot longitudinal control (alpha) toggle to allow "
+"Experimental mode."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89
+#, python-format
+msgid "Enter your GitHub username"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52
+#, python-format
+msgid "Experimental Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:178
+#, python-format
+msgid ""
+"Experimental mode is currently unavailable on this car since the car's stock "
+"ACC is used for longitudinal control."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44
+#, python-format
+msgid "Finish Setup"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66
+#, python-format
+msgid "Firehose"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18
+#, python-format
+msgid "Firehose Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25
+#, python-format
+msgid ""
+"For maximum effectiveness, bring your device inside and connect to a good "
+"USB-C adapter and Wi-Fi weekly.\n"
+"\n"
+"Firehose Mode can also work while you're driving if connected to a hotspot "
+"or unlimited SIM card.\n"
+"\n"
+"\n"
+"Frequently Asked Questions\n"
+"\n"
+"Does it matter how or where I drive? Nope, just drive as you normally "
+"would.\n"
+"\n"
+"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a "
+"subset of your segments.\n"
+"\n"
+"What's a good USB-C adapter? Any fast phone or laptop charger should be "
+"fine.\n"
+"\n"
+"Does it matter which software I run? Yes, only upstream openpilot (and "
+"particular forks) are able to be used for training."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#, python-format
+msgid "GOOD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128
+#, python-format
+msgid "Go to https://connect.comma.ai on your phone"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "HIGH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:139
+#, python-format
+msgid "INACTIVE: connect to an unmetered network"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131
+#, python-format
+msgid "INSTALL"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#, python-format
+msgid "Install Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:55
+#, python-format
+msgid "Joystick Debug Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29
+#, python-format
+msgid "LOADING"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48
+#, python-format
+msgid "LTE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:63
+#, python-format
+msgid "Longitudinal Maneuver Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148
+#, python-format
+msgid "MAX"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75
+#, python-format
+msgid ""
+"Maximize your training data uploads to improve openpilot's driving models."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "NO"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63
+#, python-format
+msgid "Network"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114
+#, python-format
+msgid "No SSH keys found"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126
+#, python-format, python-brace-format
+msgid "No SSH keys found for user '{username}'"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18
+#, python-format
+msgid "No release notes available."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#, python-format
+msgid "OFFLINE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#, python-format
+msgid "OK"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "ONLINE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20
+#, python-format
+msgid "Open"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "PAIR"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "PANDA"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "PREVIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44
+#, python-format
+msgid "PRIME FEATURES:"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "Pair Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19
+#, python-format
+msgid "Pair device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103
+#, python-format
+msgid "Pair your device to your comma account"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25
+#, python-format
+msgid ""
+"Pair your device with comma connect (connect.comma.ai) and claim your comma "
+"prime offer."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91
+#, python-format
+msgid "Please connect to Wi-Fi to complete initial pairing"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Power Off"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26
+#, python-format
+msgid ""
+"Preview the driver facing camera to ensure that driver monitoring has good "
+"visibility. (vehicle must be off)"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161
+#, python-format
+msgid "QR Code Error"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31
+#, python-format
+msgid "REMOVE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "RESET"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "REVIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Reboot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66
+#, python-format
+msgid "Reboot Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113
+#, python-format
+msgid "Reboot and Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27
+#, python-format
+msgid ""
+"Receive alerts to steer back into the lane when your vehicle drifts over a "
+"detected lane line without a turn signal activated while driving over 31 mph "
+"(50 km/h)."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76
+#, python-format
+msgid "Record and Upload Driver Camera"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82
+#, python-format
+msgid "Record and Upload Microphone Audio"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33
+#, python-format
+msgid ""
+"Record and store microphone audio while driving. The audio will be included "
+"in the dashcam video in comma connect."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "Regulatory"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Relaxed"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote access"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote snapshots"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123
+#, python-format
+msgid "Request timed out"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Reset"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "Reset Calibration"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "Review Training Guide"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28
+#, python-format
+msgid "Review the rules, features, and limitations of openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62
+#, python-format
+msgid "Serial"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107
+#, python-format
+msgid "Snooze Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65
+#, python-format
+msgid "Software"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Standard"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22
+#, python-format
+msgid ""
+"Standard is recommended. In aggressive mode, openpilot will follow lead cars "
+"closer and be more aggressive with the gas and brake. In relaxed mode "
+"openpilot will stay further away from lead cars. On supported cars, you can "
+"cycle through these personalities with your steering wheel distance button."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65
+#, python-format
+msgid "System Unresponsive"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58
+#, python-format
+msgid "TAKE CONTROL IMMEDIATELY"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "TEMP"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64
+#, python-format
+msgid "Toggles"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70
+#, python-format
+msgid "UNINSTALL"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155
+#, python-format
+msgid "UPDATE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Uninstall"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117
+#, python-format
+msgid "Unknown"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47
+#, python-format
+msgid "Updates are only downloaded while the car is off."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33
+#, python-format
+msgid "Upgrade Now"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31
+#, python-format
+msgid ""
+"Upload data from the driver facing camera and help improve the driver "
+"monitoring algorithm."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88
+#, python-format
+msgid "Use Metric System"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17
+#, python-format
+msgid ""
+"Use the openpilot system for adaptive cruise control and lane keep driver "
+"assistance. Your attention is required at all times to use this feature."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "VEHICLE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "VIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52
+#, python-format
+msgid "Waiting to start"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19
+#, python-format
+msgid ""
+"Warning: This grants SSH access to all public keys in your GitHub settings. "
+"Never enter a GitHub username other than your own. A comma employee will "
+"NEVER ask you to add their GitHub username."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111
+#, python-format
+msgid "Welcome to openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20
+#, python-format
+msgid "When enabled, pressing the accelerator pedal will disengage openpilot."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44
+#, python-format
+msgid "Wi-Fi"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145
+#, python-format
+msgid "You must accept the Terms and Conditions in order to use openpilot."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112
+#, python-format
+msgid ""
+"You must accept the Terms and Conditions to use openpilot. Read the latest "
+"terms at https://comma.ai/terms before continuing."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34
+#, python-format
+msgid "camera starting"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63
+#, python-format
+msgid "comma prime"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105
+#, python-format
+msgid "failed to check for update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "km/h"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "mph"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19
+#, python-format
+msgid "never"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30
+#, python-format
+msgid "now"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:70
+#, python-format
+msgid "openpilot Longitudinal Control (Alpha)"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51
+#, python-format
+msgid "openpilot Unavailable"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:155
+#, python-format
+msgid ""
+"openpilot defaults to driving in chill mode. Experimental mode enables alpha-"
+"level features that aren't ready for chill mode. Experimental features are "
+"listed below:
End-to-End Longitudinal Control
Let the driving "
+"model control the gas and brakes. openpilot will drive as it thinks a human "
+"would, including stopping for red lights and stop signs. Since the driving "
+"model decides the speed to drive, the set speed will only act as an upper "
+"bound. This is an alpha quality feature; mistakes should be expected."
+"
New Driving Visualization
The driving visualization will "
+"transition to the road-facing wide-angle camera at low speeds to better show "
+"some turns. The Experimental mode logo will also be shown in the top right "
+"corner."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20
+#, python-format
+msgid ""
+"openpilot learns to drive by watching humans, like you, drive.\n"
+"\n"
+"Firehose Mode allows you to maximize your training data uploads to improve "
+"openpilot's driving models. More data means bigger models, which means "
+"better Experimental Mode."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:180
+#, python-format
+msgid "openpilot longitudinal control may come in a future update."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27
+#, python-format
+msgid ""
+"openpilot requires the device to be mounted within 4° left or right and "
+"within 5° up or 9° down."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116
+#, python-format
+msgid "up to date, last checked never"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114
+#, python-format
+msgid "up to date, last checked {}"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108
+#, python-format
+msgid "update available"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169
+#, python-format
+msgid "{} ALERT"
+msgid_plural "{} ALERTS"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39
+#, python-format
+msgid "{} day ago"
+msgid_plural "{} days ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36
+#, python-format
+msgid "{} hour ago"
+msgid_plural "{} hours ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33
+#, python-format
+msgid "{} minute ago"
+msgid_plural "{} minutes ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:110
+#, python-format
+msgid "{} segment of your driving is in the training dataset so far."
+msgid_plural "{} segment of your driving is in the training dataset so far."
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62
+#, python-format
+msgid "✓ SUBSCRIBED"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22
+#, python-format
+msgid "🔥 Firehose Mode 🔥"
+msgstr ""
diff --git a/selfdrive/ui/translations/app_zh-CHT.po b/selfdrive/ui/translations/app_zh-CHT.po
new file mode 100644
index 0000000000..a88d4dcc24
--- /dev/null
+++ b/selfdrive/ui/translations/app_zh-CHT.po
@@ -0,0 +1,942 @@
+# Language zh-CHT translations for PACKAGE package.
+# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Automatically generated, 2025.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2025-10-20 18:45-0700\n"
+"PO-Revision-Date: 2025-10-20 18:19-0700\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: zh-CHT\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:123
+#, python-format
+msgid " Changing this setting will restart openpilot if the car is powered on."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43
+#, python-format
+msgid "--"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "1 year of drive storage"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "24/7 LTE connectivity"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46
+#, python-format
+msgid "2G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47
+#, python-format
+msgid "3G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49
+#, python-format
+msgid "5G"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23
+#, python-format
+msgid ""
+"WARNING: openpilot longitudinal control is in alpha for this car and will "
+"disable Automatic Emergency Braking (AEB).
On this car, openpilot "
+"defaults to the car's built-in ACC instead of openpilot's longitudinal "
+"control. Enable this to switch to openpilot longitudinal control. Enabling "
+"Experimental mode is recommended when enabling openpilot longitudinal "
+"control alpha."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:137
+#, python-format
+msgid "ACTIVE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15
+#, python-format
+msgid ""
+"ADB (Android Debug Bridge) allows connecting to your device over USB or over "
+"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30
+#, python-format
+msgid "ADD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110
+#, python-format
+msgid "Acknowledge Excessive Actuation"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Aggressive"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116
+#, python-format
+msgid "Agree"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70
+#, python-format
+msgid "Always-On Driver Monitoring"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183
+#, python-format
+msgid ""
+"An alpha version of openpilot longitudinal control can be tested, along with "
+"Experimental mode, on non-release branches."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Are you sure you want to power off?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Are you sure you want to reboot?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Are you sure you want to reset calibration?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Are you sure you want to uninstall?"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147
+#, python-format
+msgid "Back"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38
+#, python-format
+msgid "Become a comma prime member at connect.comma.ai"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130
+#, python-format
+msgid "Bookmark connect.comma.ai to your home screen to use it like an app"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "CHANGE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142
+#, python-format
+msgid "CHECK"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "CHILL MODE ON"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "CONNECT"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68
+#, python-format
+msgid "Change Language"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129
+#, python-format
+msgid "Click \"add new device\" and scan the QR code on the right"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105
+#, python-format
+msgid "Close"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48
+#, python-format
+msgid "Current Version"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109
+#, python-format
+msgid "DOWNLOAD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115
+#, python-format
+msgid "Decline"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148
+#, python-format
+msgid "Decline, uninstall openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67
+#, python-format
+msgid "Developer"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62
+#, python-format
+msgid "Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58
+#, python-format
+msgid "Disengage on Accelerator Pedal"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:186
+#, python-format
+msgid "Disengage to Power Off"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:174
+#, python-format
+msgid "Disengage to Reboot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:106
+#, python-format
+msgid "Disengage to Reset Calibration"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32
+#, python-format
+msgid "Display speed in km/h instead of mph."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:61
+#, python-format
+msgid "Dongle ID"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49
+#, python-format
+msgid "Download"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "Driver Camera"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96
+#, python-format
+msgid "Driving Personality"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138
+#, python-format
+msgid "ERROR"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45
+#, python-format
+msgid "ETH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50
+#, python-format
+msgid "EXPERIMENTAL MODE ON"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:225
+#, python-format
+msgid "Enable"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:38
+#, python-format
+msgid "Enable ADB"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64
+#, python-format
+msgid "Enable Lane Departure Warnings"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:47
+#, python-format
+msgid "Enable SSH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30
+#, python-format
+msgid "Enable driver monitoring even when openpilot is not engaged."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46
+#, python-format
+msgid "Enable openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186
+#, python-format
+msgid ""
+"Enable the openpilot longitudinal control (alpha) toggle to allow "
+"Experimental mode."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89
+#, python-format
+msgid "Enter your GitHub username"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52
+#, python-format
+msgid "Experimental Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:178
+#, python-format
+msgid ""
+"Experimental mode is currently unavailable on this car since the car's stock "
+"ACC is used for longitudinal control."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44
+#, python-format
+msgid "Finish Setup"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66
+#, python-format
+msgid "Firehose"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18
+#, python-format
+msgid "Firehose Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25
+#, python-format
+msgid ""
+"For maximum effectiveness, bring your device inside and connect to a good "
+"USB-C adapter and Wi-Fi weekly.\n"
+"\n"
+"Firehose Mode can also work while you're driving if connected to a hotspot "
+"or unlimited SIM card.\n"
+"\n"
+"\n"
+"Frequently Asked Questions\n"
+"\n"
+"Does it matter how or where I drive? Nope, just drive as you normally "
+"would.\n"
+"\n"
+"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a "
+"subset of your segments.\n"
+"\n"
+"What's a good USB-C adapter? Any fast phone or laptop charger should be "
+"fine.\n"
+"\n"
+"Does it matter which software I run? Yes, only upstream openpilot (and "
+"particular forks) are able to be used for training."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#, python-format
+msgid "GOOD"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128
+#, python-format
+msgid "Go to https://connect.comma.ai on your phone"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "HIGH"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:139
+#, python-format
+msgid "INACTIVE: connect to an unmetered network"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131
+#, python-format
+msgid "INSTALL"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52
+#, python-format
+msgid "Install Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:55
+#, python-format
+msgid "Joystick Debug Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29
+#, python-format
+msgid "LOADING"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48
+#, python-format
+msgid "LTE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:63
+#, python-format
+msgid "Longitudinal Maneuver Mode"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148
+#, python-format
+msgid "MAX"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75
+#, python-format
+msgid ""
+"Maximize your training data uploads to improve openpilot's driving models."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "NO"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63
+#, python-format
+msgid "Network"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114
+#, python-format
+msgid "No SSH keys found"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126
+#, python-format, python-brace-format
+msgid "No SSH keys found for user '{username}'"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18
+#, python-format
+msgid "No release notes available."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134
+#, python-format
+msgid "OFFLINE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#, python-format
+msgid "OK"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "ONLINE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20
+#, python-format
+msgid "Open"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "PAIR"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142
+#, python-format
+msgid "PANDA"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:64
+#, python-format
+msgid "PREVIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44
+#, python-format
+msgid "PRIME FEATURES:"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52
+#, python-format
+msgid "Pair Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19
+#, python-format
+msgid "Pair device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103
+#, python-format
+msgid "Pair your device to your comma account"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25
+#, python-format
+msgid ""
+"Pair your device with comma connect (connect.comma.ai) and claim your comma "
+"prime offer."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91
+#, python-format
+msgid "Please connect to Wi-Fi to complete initial pairing"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:189
+#, python-format
+msgid "Power Off"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26
+#, python-format
+msgid ""
+"Preview the driver facing camera to ensure that driver monitoring has good "
+"visibility. (vehicle must be off)"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161
+#, python-format
+msgid "QR Code Error"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31
+#, python-format
+msgid "REMOVE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "RESET"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "REVIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:58
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:177
+#, python-format
+msgid "Reboot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66
+#, python-format
+msgid "Reboot Device"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113
+#, python-format
+msgid "Reboot and Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27
+#, python-format
+msgid ""
+"Receive alerts to steer back into the lane when your vehicle drifts over a "
+"detected lane line without a turn signal activated while driving over 31 mph "
+"(50 km/h)."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76
+#, python-format
+msgid "Record and Upload Driver Camera"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82
+#, python-format
+msgid "Record and Upload Microphone Audio"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33
+#, python-format
+msgid ""
+"Record and store microphone audio while driving. The audio will be included "
+"in the dashcam video in comma connect."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "Regulatory"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Relaxed"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote access"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47
+#, python-format
+msgid "Remote snapshots"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123
+#, python-format
+msgid "Request timed out"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:122
+#, python-format
+msgid "Reset"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55
+#, python-format
+msgid "Reset Calibration"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:66
+#, python-format
+msgid "Review Training Guide"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28
+#, python-format
+msgid "Review the rules, features, and limitations of openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62
+#, python-format
+msgid "Serial"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107
+#, python-format
+msgid "Snooze Update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65
+#, python-format
+msgid "Software"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98
+#, python-format
+msgid "Standard"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22
+#, python-format
+msgid ""
+"Standard is recommended. In aggressive mode, openpilot will follow lead cars "
+"closer and be more aggressive with the gas and brake. In relaxed mode "
+"openpilot will stay further away from lead cars. On supported cars, you can "
+"cycle through these personalities with your steering wheel distance button."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65
+#, python-format
+msgid "System Unresponsive"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58
+#, python-format
+msgid "TAKE CONTROL IMMEDIATELY"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129
+#, python-format
+msgid "TEMP"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64
+#, python-format
+msgid "Toggles"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70
+#, python-format
+msgid "UNINSTALL"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155
+#, python-format
+msgid "UPDATE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158
+#, python-format
+msgid "Uninstall"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117
+#, python-format
+msgid "Unknown"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47
+#, python-format
+msgid "Updates are only downloaded while the car is off."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33
+#, python-format
+msgid "Upgrade Now"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31
+#, python-format
+msgid ""
+"Upload data from the driver facing camera and help improve the driver "
+"monitoring algorithm."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88
+#, python-format
+msgid "Use Metric System"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17
+#, python-format
+msgid ""
+"Use the openpilot system for adaptive cruise control and lane keep driver "
+"assistance. Your attention is required at all times to use this feature."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144
+#, python-format
+msgid "VEHICLE"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67
+#, python-format
+msgid "VIEW"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52
+#, python-format
+msgid "Waiting to start"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19
+#, python-format
+msgid ""
+"Warning: This grants SSH access to all public keys in your GitHub settings. "
+"Never enter a GitHub username other than your own. A comma employee will "
+"NEVER ask you to add their GitHub username."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111
+#, python-format
+msgid "Welcome to openpilot"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20
+#, python-format
+msgid "When enabled, pressing the accelerator pedal will disengage openpilot."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44
+#, python-format
+msgid "Wi-Fi"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145
+#, python-format
+msgid "You must accept the Terms and Conditions in order to use openpilot."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112
+#, python-format
+msgid ""
+"You must accept the Terms and Conditions to use openpilot. Read the latest "
+"terms at https://comma.ai/terms before continuing."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34
+#, python-format
+msgid "camera starting"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63
+#, python-format
+msgid "comma prime"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105
+#, python-format
+msgid "failed to check for update"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "km/h"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177
+#, python-format
+msgid "mph"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19
+#, python-format
+msgid "never"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30
+#, python-format
+msgid "now"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:70
+#, python-format
+msgid "openpilot Longitudinal Control (Alpha)"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51
+#, python-format
+msgid "openpilot Unavailable"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:155
+#, python-format
+msgid ""
+"openpilot defaults to driving in chill mode. Experimental mode enables alpha-"
+"level features that aren't ready for chill mode. Experimental features are "
+"listed below:
End-to-End Longitudinal Control
Let the driving "
+"model control the gas and brakes. openpilot will drive as it thinks a human "
+"would, including stopping for red lights and stop signs. Since the driving "
+"model decides the speed to drive, the set speed will only act as an upper "
+"bound. This is an alpha quality feature; mistakes should be expected."
+"
New Driving Visualization
The driving visualization will "
+"transition to the road-facing wide-angle camera at low speeds to better show "
+"some turns. The Experimental mode logo will also be shown in the top right "
+"corner."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20
+#, python-format
+msgid ""
+"openpilot learns to drive by watching humans, like you, drive.\n"
+"\n"
+"Firehose Mode allows you to maximize your training data uploads to improve "
+"openpilot's driving models. More data means bigger models, which means "
+"better Experimental Mode."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:180
+#, python-format
+msgid "openpilot longitudinal control may come in a future update."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27
+#, python-format
+msgid ""
+"openpilot requires the device to be mounted within 4° left or right and "
+"within 5° up or 9° down."
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116
+#, python-format
+msgid "up to date, last checked never"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114
+#, python-format
+msgid "up to date, last checked {}"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108
+#, python-format
+msgid "update available"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169
+#, python-format
+msgid "{} ALERT"
+msgid_plural "{} ALERTS"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39
+#, python-format
+msgid "{} day ago"
+msgid_plural "{} days ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36
+#, python-format
+msgid "{} hour ago"
+msgid_plural "{} hours ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33
+#, python-format
+msgid "{} minute ago"
+msgid_plural "{} minutes ago"
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:110
+#, python-format
+msgid "{} segment of your driving is in the training dataset so far."
+msgid_plural "{} segment of your driving is in the training dataset so far."
+msgstr[0] ""
+msgstr[1] ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62
+#, python-format
+msgid "✓ SUBSCRIBED"
+msgstr ""
+
+#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22
+#, python-format
+msgid "🔥 Firehose Mode 🔥"
+msgstr ""
diff --git a/selfdrive/ui/translations/languages.json b/selfdrive/ui/translations/languages.json
index c6b9a4b7ca..b0674dee82 100644
--- a/selfdrive/ui/translations/languages.json
+++ b/selfdrive/ui/translations/languages.json
@@ -4,5 +4,11 @@
"Français": "fr",
"Português": "pt-BR",
"Español": "es",
- "Türkçe": "tr"
+ "Türkçe": "tr",
+ "العربية": "ar",
+ "ไทย": "th",
+ "中文(繁體)": "zh-CHT",
+ "中文(简体)": "zh-CHS",
+ "한국어": "ko",
+ "日本語": "ja"
}