connect to a comma 3X or comma four#
A comma device is a normal Linux computer that exposes SSH and a serial console.
Serial Console#
On the comma 3X, the serial console is accessible from the main OBD-C port, forwarded through the pandaThe secondary processor on the device that implements the functional safety and directly talks to the car over CAN. See the panda repo..
Access it using panda/scripts/som_debug.sh.
comma fourThe latest hardware by comma.ai for running openpilot. More info at comma.ai/shop/comma-four. also exposes a serial console, albeit through an internal debug connector. Dedicated debug hardware coming soon to the comma shop.
Login to the default user with:
- Username:
comma - Password:
comma
SSH#
In order to SSH into your device, you'll need a GitHub account with SSH keys. See this GitHub article for getting your account setup with SSH keys.
- Enable SSH in your device's settings
- Enter your GitHub username in the device's settings
- Connect to your device
- Username:
comma - Port:
22
- Username:
Here's an example command for connecting to your device using its tethered connection:
ssh comma@192.168.43.1 -i ~/.ssh/my_github_key
For doing development work on device, it's recommended to use SSH agent forwarding.
ADB#
In order to use ADB on your device, you'll need to perform the following steps using the image below for reference:
- Plug your device into constant power using port 2, letting the device boot up
- Enable ADB in your device's settings
- Plug in your device to your PC using port 1
- Connect to your device
adb shellover USBadb connectover WiFi- Here's an example command for connecting to your device using its tethered connection:
adb connect 192.168.43.1:5555
Note
The default port for ADB is 5555.
For more info on ADB, see the Android Debug Bridge (ADB) documentation.
Notes#
The public keys are only fetched from your GitHub account once. In order to update your device's authorized keys, you'll need to re-enter your GitHub username.
The id_rsa key in this directory only works while your device is in the setup state with no software installed. After installation, that default key will be removed.
ssh.comma.ai proxy#
With a comma prime subscription, you can SSH into your comma device from anywhere.
With the below SSH configuration, you can type ssh comma-{dongleid} to connect to your device through ssh.comma.ai.
Host comma-*
Port 22
User comma
IdentityFile ~/.ssh/my_github_key
ProxyCommand ssh %h@ssh.comma.ai -W %h:%p
Host ssh.comma.ai
Hostname ssh.comma.ai
Port 22
IdentityFile ~/.ssh/my_github_key
One-off connection#
ssh -i ~/.ssh/my_github_key -o ProxyCommand="ssh -i ~/.ssh/my_github_key -W %h:%p -p %p %h@ssh.comma.ai" comma@ffffffffffffffff
(Replace ffffffffffffffff with your dongle_id)
ssh.comma.ai host key fingerprint#
Host key fingerprint is SHA256:X22GOmfjGb9J04IA2+egtdaJ7vW9Fbtmpz9/x8/W1X4
+---[RSA 4096]----+
| |
| |
| . |
| + o |
| S = + +..|
| + @ = .=|
| . B @ ++=|
| o * B XE|
| .o o OB/|
+----[SHA256]-----+