SSH Setup for HDK
Most Sol3 SDK workflows require passwordless SSH access to the HDK. This guide covers network configuration, SSH key generation, and verification.
Network Connection
The HDK is configured for DHCP by default. Connect it to a network with a DHCP server
and discover its IP address using adb or via your network infrastructure (look for devices
with a hostname in the form of sol3-a1b2c3d4).
The HDK is also configured with a static IP address (10.32.0.10) on the same interface.
If you’d prefer to connect to this IP address, configure your host’s interface
with an IP address on the same subnet (10.32.0.0/24). If you’d would like to
customize the HDK network configuration, edit the file /etc/systemd/network/eth0.network and
refer to this documentation.
Note
The kernel currently randomizes the mac address of the network interface on
each boot. Some DHCP servers respect the Client ID option, and will therefore
provide a consistent IP address, however this may not be the case on your
network. If the device’s IP address continues to change after reboot, you can
fix the system’s MAC address by adding an entry in the eth0.network file:
[Match]
Name=eth0
[Link]
MACAddress=AA:BB:CC:DD:EE:FF
[Network]
DHCP=yes
Connect HDK to Network
Connect an Ethernet cable from your router to the HDK’s Ethernet port
Connect the HDK to your development machine via USB
Discover HDK IP Address
Use the Android Debug Bridge tool to find the HDK’s assigned IP address:
adb shell ip addr show eth0
Look for the inet addresses in the output. For example:
8: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether de:55:d0:68:16:1f brd ff:ff:ff:ff:ff:ff
inet 10.32.0.10/24 brd 10.32.0.255 scope global eth0
valid_lft forever preferred_lft forever
inet 192.168.0.57/24 brd 192.168.0.255 scope global dynamic eth0
valid_lft 2373sec preferred_lft 2373sec
inet6 fe80::dc55:d0ff:fe68:161f/64 scope link
valid_lft forever preferred_lft forever
In this example, the HDK’s has two IP addresses: the static 10.32.0.10 address, and 192.168.0.57 acquired from DHCP. Note these address for SSH configuration, you can use either to connect to your HDK.
Verify connectivity from your development machine:
# Replace <HDK_IP> with your HDK's IP address (e.g., 10.32.0.10)
ping <HDK_IP>
SSH Key Setup
The default dev password for the Sol3 units is H3t11dC9ekWzc1kl. Use this to ssh into
the device before proceeding.
Generate an SSH key if you don’t already have one:
# Generate SSH key (press Enter to accept defaults)
ssh-keygen -t ed25519 -C "sol3-dev"
Copy your public key to the HDK (replace <HDK_IP> with the IP address you discovered):
# Replace <HDK_IP> with your HDK's IP address (e.g., 10.32.0.10)
ssh-copy-id dev@<HDK_IP>
Configure SSH Config
Add the HDK to your SSH config for convenient access. Replace <HDK_IP> with your HDK’s IP address:
cat >> ~/.ssh/config << 'EOF'
# Sol3 HDK
Host sol3-hdk
HostName <HDK_IP>
User dev
IdentityFile ~/.ssh/id_ed25519
StrictHostKeyChecking no
UserKnownHostsFile /dev/null
EOF
This allows you to connect using the alias sol3-hdk instead of typing the full IP address.
Verify SSH Access
Test passwordless SSH access:
ssh sol3-hdk