# USB ***Copyright © Quectel Wireless Solutions Co., Ltd. 2026. All rights reserved.*** --- **Quectel Pi M1/L1** 智能主控板自带2个标准 **USB 3.0 Type-A** 接口、2个标准 **USB 2.0 Type-A** 接口和1个 **USB 3.1 Type-C** 接口。USB 2.0接口最高数据传输速率可达 480 Mbps,USB 3.1 接口最高数据传输速率可达5 Gbps。 ```{image} images/image_W8JIbZruNovlG4xBN2sco8Pjnif.webp :width: 883px :height: 583px :align: center ``` **Quectel Pi M1/L1** 板载核心只有一路 **USB ,** 依靠板载硬件拨码开关完成模式切换,可实现 **USB** 主机(**Host**)、**USB** 从机(**Device**)两种核心工作形态的硬件切换,适配设备调试、外设拓展等不同场景。 # USB 从机模式(Device模式) **拨码状态**:对应功能 **拨码1** 开关拨至 **ON** 档位。 **工作形态**:设备作为 **USB** 从设备,由上位机(电脑、调试主机)识别、供电与管控。 **适用场景**:固件烧录、**ADB** 调试、上位机数据交互。 **功能特性**:此模式下 **Type-C** 接口仅接收外部主机指令,无法外接U盘、键鼠等 **USB** 外设,设备自身不输出 **USB** 供电,是设备调试、量产烧录的核心模式。 ```{image} images/image_HUDrbwEIsoWkQ8xsxrvcqic1nNJ.webp :width: 794px :height: 523px :align: center ``` **如上图所示 拨码1** 拨到 **ON** 侧 **,** 将 **USB** 数据线一端接入 **Quectel Pi** 的 **Type-C** 接口 **,** 另一端接入 **PC**,这样就完成了 **adb** 连接。 **PC** 端 **ADB** 环境配置参考:[ADB终端](<../设备连接/ADB终端/ADB终端.md>) ## ADB 使用 - 列出所有连接设备 ```shell # 基本设备列表 adb devices # 详细设备信息列表 adb device -l ``` - 查看设备状态 ```shell # device, offline, unknown adb get-state ``` - 重启设备 ```shell adb reboot ``` - 交互式模式(进入设备内部) ```shell adb shell ``` - 单次命令模式(不进入,直接执行) ```shell adb shell df -h ``` - 文件传输 ```shell # 上传文件 adb push test.txt /data/ # 拉取文件 adb pull /data/test.txt ./ # 推送文件夹 adb push ./MyPhotos /data/ # 拉取文件夹 adb pull /data/MyPhotos ./ ``` # USB 主机模式(Host模式) **拨码状态**:对应功能 **拨码1** 开关反向拨动切换。 **工作形态**:设备作为 **USB** 主控主机,主动管控外接 **USB** 设备,向外设供电并发起数据交互 **适用场景**:外接U盘、USB键鼠、USB网卡、传感器等外设,实现数据读取、人机交互、外设拓展。 **功能特性**:此模式下Type-C接口可主动识别、驱动外接USB设备,输出USB供电,承担主控调度功能,满足边缘计算、工控场景的外设拓展需求。 ```{image} images/image_GZQBbQr5JouoyqxBqGNcnBo9npu.webp :width: 589px :height: 387px :align: center ``` 如上图, **拨码1切换到OFF** 即可完成主机模式的切换。 ## USB 存储 在 **Quectel Pi** 板子上接入U盘,如下图: ```{image} images/image_Eit3bp13ioaHphxZe4ecA8CZnvh.webp :width: 1146px :height: 738px :align: center ``` ### 功能使用(GNOME) 登录Debian Gnome桌面,查看文件管理器 ```{image} images/image_V3wDbF3uqo3CKBx5Hr3cfge5nWe.webp :width: 1920px :height: 1080px :align: center ``` ### 功能使用(Weston) 通过 [Debug UART](<../设备连接/Debug UART/Debug UART.md>) 使用 `df -h` 指令查看U盘是否挂载成功 ```{image} images/image_SevvbzzYQo8t1zxrRD7cUbnontc.webp :width: 636px :height: 118px ``` ## USB 相机 ### 查看相机信息 在 **SSH** 终端或者 **Debug** 终端执行以下命令,查看系统识别到的 **USB** 相机信息 ```shell dmesg | grep usb ``` ```{image} images/image_Fc43bS1lXoOgTdxMWaLcDYqrnqg.webp :width: 1437px :height: 167px :align: center ``` ### **查看节点信息** 在 **SSH** 终端或者 **Debug** 终端执行以下命令,查看新增设备节点 ```shell v4l2-ctl --list-devices # 如果提示 v4l2-ctl: command not found,联网后执行以下命令安装 sudo apt update sudo apt install v4l-utils ``` ```{image} images/image_YgU4bdsxnonYmPxzpfZcf309n5f.webp :width: 842px :height: 405px :align: center ``` **查看支持的格式** 在 **SSH** 终端或者 **Debug** 终端执行以下命令,查看 **video** 节点支持的格式: ```shell v4l2-ctl --list-formats-ext --device /dev/video2 ``` ### 拍照(GNOME) 以 **Quectel Pi M1** 为例, 使用 **SSH** 登录,在 **SSH** 终端中运行以下命令 ```shell gst-launch-1.0 -e v4l2src device=/dev/video2 num-buffers=1 \ ! 'image/jpeg,width=640,height=480,framerate=30/1' \ ! filesink location=/home/pi/photo.jpg ``` - location=/home/**pi**/photo.jpg:将 **pi** 换成Gnome桌面登录的用户名。 ```{image} images/image_ExBubdTcfoF3OFxOn0EcmSiTnwZ.webp :width: 1280px :height: 800px :align: center ``` ### 录像(GNOME) 以 **Quectel Pi M1** 为例 **, 在 SSH** 终端运行以下命令, **SSH** 登录用户需和 **Gnome** 桌面用户保持一致 ```shell # SSH 登录用户需要和桌面登录用户保持一致, 否则$(id -u)和桌面用户不匹配,无法开启预览 export XDG_RUNTIME_DIR=/run/user/$(id -u) export WAYLAND_DISPLAY=wayland-0 export DBUS_SESSION_BUS_ADDRESS=unix:path=$XDG_RUNTIME_DIR/bus gst-launch-1.0 -e v4l2src device=/dev/video2 ! "image/jpeg,width=640,height=480,framerate=30/1"! jpegdec ! videoconvert ! waylandsink async=false ``` ```{image} images/image_UL8ybE1GpoOGtdxyCAOcmbY4n1g.webp :width: 1624px :height: 227px :align: center ``` ### 拍照(Weston) 以 **Quectel Pi L1** 为例,在 **Debug** 终端中运行以下命令 ```shell gst-launch-1.0 -e v4l2src device=/dev/video2 num-buffers=1 \ ! 'image/jpeg,width=640,height=480,framerate=30/1' \ ! filesink location=/home/photo.jpg ``` ```{image} images/image_VvQYbPFFxoMBx3xymeYcEeOTnVf.webp :width: 898px :height: 508px :align: center ``` ### 录像(Weston) 以 **Quectel Pi L1** 为例,在 **Debug** 终端中运行以下命令 ```shell export XDG_RUNTIME_DIR=/run/user/root export WAYLAND_DISPLAY=wayland-1 export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/root/bus gst-launch-1.0 -e v4l2src device=/dev/video2 ! 'image/jpeg,width=640,height=480,framerate=30/1' ! jpegdec ! videoconvert ! waylandsink async=false ``` ```{image} images/image_N2cHbTPtuo3BZDxoYnvcfWCKn8e.webp :width: 1549px :height: 330px :align: center ```