Revision and Notes
Date | Owner | Revision | Notes | ||||||
---|---|---|---|---|---|---|---|---|---|
26/10/2021 | 1.0 | Initial release | |||||||
26/06/2023 | 1.1 | Production release | |||||||
Table of Contents |
|
Purpose
This guide provides basic instructions for operating the SolidRun AM64 HummingBoard-T and booting into Linux. Advanced usage scenarios are covered by separate technical documentation.
Hardware Setup
Connections
12V DC Power Adapter (12V recommended, HummingBoard-T supports 9V-36V)
microUSB cable for serial console
microSD card for storing bootable SW
TODO: photo showing relevant connectors, with microUSB console and power only, and dip switches
Boot Select
Configure the boot-mode for microSD using onboard DIP switch S1:
Switch | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|
microSD (FAT partition) | 0 | 0 | 0 | 1 | 0 | 1 |
microSD (RAW) | 1 | 0 | 0 | 0 | 1 | 1 |
eMMC | 1 | 0 | 0 | 1 | X | X |
Note: 0 = OFF, 1 = ON.
Console
Start an application for serial console - such as PuTTY or tio. Configure it for baud rate 115200 and the COMx or ttyUSBy interface representing the micro-USB console connection. For details also see Serial Connection.
Software Setup
Prepare bootable microSD Card
Download prebuilt sdcard image based on debian: microsd-222ee62-debian-bullseye.img.xz
uncompress downloaded image file
write image file to microSD card to create a byte-for-byte copy. https://etcher.io/ is recommended, professionals may use unix “dd” command.
First Steps with Debian reference system
Log-In
After inserting the programmed microSD card in the HummingBoard-T and after (re-)connecting the 12V power, the system should automatically boot to a login prompt displayed on the serial console:
...
Log in with user-name “root”, no password.
Networking
By default networking is not configured. For advanced or persistent configurations please refer to the Debian Documentation.
...
Code Block | ||
---|---|---|
| ||
root@3f60b4ebfc7f:~# dhclient eth0 root@3f60b4ebfc7f:~# ip addr show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 34:88:de:e3:c0:17 brd ff:ff:ff:ff:ff:ff inet 192.168.1.225/24 brd 192.168.1.255 scope global dynamic eth0 valid_lft 552sec preferred_lft 552sec inet 192.168.1.226/24 brd 192.168.1.255 scope global secondary dynamic eth0 valid_lft 552sec preferred_lft 552sec inet6 fe80::3688:deff:fee3:c017/64 scope link valid_lft forever preferred_lft forever |
Log-In via SSH
To log in via SSH, an ssh key must be installed first. Copy your favourite public key, e.g. from ~/.ssh/id_ed25519.pub
, into a new file in the root users home directory at ~/.ssh/authorized_keys
:
Code Block | ||
---|---|---|
| ||
root@e7c450f97e59:~# mkdir .ssh root@e7c450f97e59:~# cat > .ssh/authorized_keys << EOF ssh-ed25519 AAAAinsertyour pubkey@here EOF |
Expand Root Filesystem
After flashing the root filesystem is smaller than the eMMC. To utilize all space, resize both the rootfs partition - and then the filesystem:
inspect partitions:
Using fdisk, view the current partitions. Take note of the start sector for partition 1!
Code Block language bash root@e7c450f97e59:~# fdisk /dev/mmcblk0 Welcome to fdisk (util-linux 2.36.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p Disk /dev/mmcblk0: 7.28 GiB, 7820083200 bytes, 15273600 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xcc3ec3d4 Device Boot Start End Sectors Size Id Type /dev/mmcblk0p1 49152 2690687 2641535 1.3G 83 Linux Command (m for help):
resize partition 1:
Drop and re-create partition 1 at the same starting sector noted before, keeping the ext4 signature when prompted:
Code Block language bash Command (m for help): d Selected partition 1 Partition 1 has been deleted. Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-15273599, default 2048): 49152 Last sector, +/-sectors or +/-size{K,M,G,T,P} (49152-15273599, default 15273599): Created a new partition 1 of type 'Linux' and of size 7.3 GiB. Partition #1 contains a ext4 signature. Do you want to remove the signature? [Y]es/[N]o: N Command (m for help): p Disk /dev/mmcblk0: 7.28 GiB, 7820083200 bytes, 15273600 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xcc3ec3d4 Device Boot Start End Sectors Size Id Type /dev/mmcblk0p1 49152 15273599 15224448 7.3G 83 Linux Command (m for help): w The partition table has been altered. Syncing disks.
resize root filesystem:
Linux supports online-resizing for the ext4 filesystem. Invoke
resize2fs
on partition 1 to do so:Code Block language bash root@e7c450f97e59:~# resize2fs /dev/mmcblk0p1