Skip to content

USB Type-A / C Interfaces

Rhino-A1 provides one Type-C interface and four USB 3.0 Type-A interfaces.

  • USB 3.0 Type-A interface

Supports HOST mode with a theoretical maximum transfer rate of 5 Gbps.

  • Type-C interface

The Type-C interface supports USB 3.0 OTG and DP output.

Hardware Connection

To test the HOST mode of the USB interfaces, you can verify the basic functionality of connected devices and test USB drive read/write speed.

Basic Functionality

You can connect devices such as card readers, mice, and keyboards to the USB interfaces, then plug/unplug them to verify whether they are recognized and work properly.

Tip

The following tests are performed in the Ubuntu Web desktop. Please refer to Web Login to log in to the system.

Without peripherals connected

Use the lsusb command to view currently recognized devices.

bash
lsusb

Example terminal output:

bash
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

With peripherals connected

Connect a card reader, mouse, keyboard, or other devices to the USB interface, then run lsusb to check whether new devices appear.

bash
lsusb

Example terminal output: a USB flash drive is connected to the USB interface.

bash
Bus 002 Device 002: ID 0781:55a9 SanDisk Corp.  SanDisk 3.2Gen1
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

By comparing the outputs, you can confirm that the newly connected USB device is recognized correctly. The new device ID is 0781:55a9.

After the USB device is recognized, you can further verify whether it functions properly.

Read/Write Test

Connect a USB flash drive to the USB interface and use the dd command to test read/write speed.

Confirm the storage device

Use lsblk | egrep "sdi|NAME" to confirm the USB drive device name.

bash
lsblk | egrep "sdi|NAME"

Example terminal output: here sdi is the current USB drive device name. Replace it according to your actual environment.

bash
NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sdi       8:128  1 114.6G  0 disk 
└─sdi1    8:129  1 114.6G  0 part

Test write performance

bash
sudo dd if=/dev/zero of=/dev/sdi1 bs=1M count=100
  • dd: A command-line tool in Linux for low-level copying and converting data.
  • if=/dev/zero: Specifies /dev/zero as the input file (a special device that provides continuous null/zero bytes).
  • of=/dev/sdi1: Specifies /dev/sdi1 as the output file, which is the target USB drive partition.
  • bs=1M: Sets the block size to 1 megabyte.
  • count=100: Copies 100 blocks (total 100MB of zero data).

This command writes 100 MB of zero-byte data to the USB drive and displays the write speed.

Example terminal output:

bash
100+0 records in
100+0 records out
104857600 bytes (105 MB, 100 MiB) copied, 0.816923 s, 128 MB/s

Test read performance

bash
sudo dd if=/dev/sdi1 of=/dev/null bs=1M count=100
  • dd: A command-line tool in Linux for low-level copying and converting data.
  • if=/dev/sdi1: Specifies /dev/sdi1 as the input file, which is the USB drive device.
  • of=/dev/null: Specifies /dev/null as the output file, which discards all output data.
  • bs=1M: Sets the block size to 1 megabyte.
  • count=100: Copies 100 blocks (total 100MB of data).

This command reads 100 MB of data from the USB drive to /dev/null and displays the read speed.

Example terminal output:

bash
100+0 records in
100+0 records out
104857600 bytes (105 MB, 100 MiB) copied, 0.327596 s, 320 MB/s