Skip to content

USB Type-A / C Interface

Rhino Pi A1 (Rhino-X1) has one Type C interface and four USB3.0 Type A interfaces.

  • USB3.0 Type A interface

Supports HOST mode, theoretical maximum transfer rate 5 Gbps.

  • Type C interface

Type C interface supports USB 3.0 OTG, supports DP output.

Hardware Connection

To test the HOST mode function of USB interface, we can test the basic functions of connected devices and U disk read/write speed.

Basic Functions

We can connect card reader, mouse, keyboard and other devices to USB interface, test if devices are normally recognized and used by plugging/unplugging.

Tip

The following tests are all executed in fusion system (AidLux), please refer to Web Login chapter to login to the system.

No External Device Connected

Use lsusb command to view currently recognized devices by the system.

bash
lsusb

Terminal output example:

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
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

External Device Connected

Connect card reader, mouse, keyboard and other devices to USB interface, use lsusb command to check if new device is added.

bash
lsusb

Terminal output example: A U disk device is connected to USB interface.

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
Bus 004 Device 002: ID 0781:55a9 SanDisk Corp.  SanDisk 3.2Gen1
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

By comparing the output information of the two, it can be determined that the new USB device is normally recognized, the new device ID is 0781:55a9.

After normally recognizing USB device, you can use the device to verify if functions are normal.

Read/Write Test

Use U disk to connect to USB interface, use dd command to test U disk read/write speed.

Confirm Storage Device

Use lsblk | egrep "sdi|NAME" command to confirm U disk device name.

bash
 lsblk | egrep "sdi|NAME"

Terminal output example: where sda is the current U disk device name, please replace according to actual situation.

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 /media/sdi1

Test Write Performance

bash
sudo dd if=/dev/zero of=/dev/sdi bs=1M count=100
  • dd : A command line tool in Linux system for copying and converting files.
  • if=/dev/zero : Specify input file as /dev/zero, this is a special file that provides infinite zero byte data.
  • of=/dev/sdi : Specify output file as /dev/sdi, i.e. U disk device.
  • bs=1M : Specify block size as 1MB.
  • count=100 : Specify copying 100 blocks.

This command will write 100MB zero byte data to U disk, display write speed.

Terminal output example:

bash
100+0 records in
100+0 records out
104857600 bytes (105 MB, 100 MiB) copied, 0.0451387 s, 2.3 GB/s

Test Read Performance

bash
sudo dd if=/dev/sdi of=/dev/null bs=1M count=100
  • dd : A command line tool in Linux system for copying and converting files.
  • if=/dev/zero : Specify input file as /dev/zero, this is a special file that provides infinite zero byte data.
  • of=/dev/sdi : Specify output file as /dev/sdi, i.e. U disk device.
  • bs=1M : Specify block size as 1MB.
  • count=100 : Specify copying 100 blocks.

This command will read 100MB data from U disk to /dev/null, and display read speed.

Terminal output example:

bash
100+0 records in
100+0 records out
104857600 bytes (105 MB, 100 MiB) copied, 0.0260768 s, 4.0 GB/s