ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

香橙派RK3588首次上电避坑指南:从系统烧写到SSH远程登录

香橙派RK3588首次上电避坑指南:从系统烧写到SSH远程登录 1. 香橙派RK3588第一次上电我踩过的那些坑拿到香橙派5的第一件事绝大多数人都是插电、看灯、找IP。听起来简单但真到动手的时候你会发现从“板子亮起来”到“我能用SSH登进去敲命令”之间隔着一堆没人告诉你的细节。这篇是“手把手从头到脚香橙派RK3588 yolov5s教程”系列的第二篇专门讲首次使用这块板子要做的所有事情——从系统镜像烧写、首次开机配置、网络连通性排查到SSH远程登录、基础开发环境搭建最后到为后续部署yolov5s做好前置准备。为什么第一篇讲硬件开箱第二篇就要花这么大篇幅讲“首次使用”因为我在实际项目里见过太多人卡在这一步板子买了、镜像烧了、屏幕也亮了但就是连不上网、SSH登不进去、apt装个包报一堆错。这些问题不解决后面什么NPU加速、yolov5s模型转换、推理性能调优全都是空中楼阁。所以这篇的内容定位很明确让一块全新的香橙派RK3588从“刚拆封”变成“随时可以开始跑AI推理任务”的状态。适合谁看如果你刚拿到香橙派5或5 Pro之前只用过树莓派或者完全没接触过ARM开发板这篇就是给你写的。如果你已经用过RK3399或者别的RK平台也可以看看因为RK3588在系统层面有一些不一样的地方尤其是Ubuntu 20.04/22.04的适配细节和NPU驱动的预装情况跟早期平台差别不小。我手上这块是香橙派5RK3588芯片8GB内存版本。下面所有操作都基于这个配置其他版本4GB/16GB、5 Pro等在系统层面基本一致差异主要在内存和外设接口上不影响本文的核心流程。2. 系统镜像的选择与烧写别在第一步就选错2.1 官方镜像到底该选哪个版本香橙派官网提供的镜像种类不少Ubuntu、Debian、Android都有版本号也各不相同。很多人第一次看到下载页面就懵了——到底选哪个我的建议很直接如果你后面要跑yolov5s或者任何NPU相关的推理任务选Ubuntu 20.04或者22.04的桌面版/服务器版。原因有三个第一RK3588的NPU驱动RKNN Toolkit2在Ubuntu上的支持最完善官方文档和社区案例也最多。Debian虽然也能跑但遇到问题搜资料的时候你会发现可参考的内容少很多。第二Ubuntu 20.04和22.04的软件源里Python、OpenCV、CMake这些AI开发常用的工具链版本比较合适不需要你手动编译一堆东西。特别是OpenCVUbuntu 22.04自带的版本已经能满足yolov5s推理的基本需求。第三桌面版和服务器版的区别只在于有没有图形界面。如果你打算用VNC或者直接接HDMI显示器操作选桌面版如果你从一开始就打算SSH远程操作服务器版更轻量启动更快占用的内存也更少。我个人的习惯是烧服务器版所有操作通过SSH完成需要图形界面的时候再单独装。注意香橙派官网的镜像下载页面会标注每个镜像的更新日期和内核版本。尽量选最近三个月内更新的版本太老的镜像可能缺少某些外设驱动。2.2 烧写工具和TF卡的选择烧写工具用balenaEtcher或者RKDevTool都行。balenaEtcher的好处是跨平台Windows、macOS、Linux都能用操作也简单——选镜像、选TF卡、点烧写三步完事。RKDevTool是瑞芯微官方的工具功能更强支持eMMC烧写和分区操作但界面相对复杂一些。TF卡的选择有个坑要提前说别用杂牌卡也别用容量小于16GB的卡。RK3588的系统镜像解压后大概4-6GB加上后续你要装的软件和模型文件16GB是底线32GB以上比较从容。速度方面Class 10或者U1以上的卡就行但如果你手上有U3或者A2的卡系统启动和文件读写会明显快一些。烧写过程本身没什么好说的选好镜像和TF卡等进度条走完就行。但烧完之后有一个关键操作很多人会忽略在Windows上烧写完成后系统会提示“是否格式化”某个分区一定要点“取消”。那个分区是Linux系统的分区Windows识别不了如果你点了格式化系统就废了得重新烧。2.3 首次上电前必须检查的几件事TF卡插进板子之前先确认几个东西板子上的启动模式跳线如果有是否设置在TF卡启动的位置。香橙派5默认就是从TF卡启动但如果你之前动过跳线最好确认一下。电源适配器是否满足要求。RK3588的功耗不低官方推荐是5V/4A以上的电源。用手机充电器通常5V/2A可能会遇到供电不足导致反复重启或者外设不工作的问题。HDMI线、网线、USB键鼠这些外设第一次开机的时候建议都接上方便排查问题。等系统配置好了再改成无头模式只接电源和网线通过SSH操作。这些检查看起来琐碎但实际经验告诉我至少30%的“板子点不亮”问题都出在供电不足或者TF卡没插好上。3. 第一次开机从亮灯到能敲命令之间发生了什么3.1 开机过程的正常表现和异常判断插上电源之后板子上的红色电源灯应该常亮蓝色或绿色的状态灯会闪烁。如果你接了HDMI显示器大概10-20秒后能看到香橙派的Logo和系统启动日志。第一次启动会比后续慢一些因为系统要初始化分区、生成SSH密钥、扩展文件系统等耐心等一两分钟。如果超过两分钟屏幕还是黑的或者状态灯完全不亮按这个顺序排查电源是否插紧适配器功率是否足够前面说过的5V/4A。TF卡是否插紧有没有插反卡的金手指朝向板子内侧。如果接了显示器但没信号换一根HDMI线试试或者换一个显示器接口。以上都没问题的话把TF卡拔下来重新烧写一次可能是烧写过程中出了问题。我遇到过一种情况板子能启动但卡在某个服务启动失败上屏幕上一堆报错。这种通常是镜像本身的问题换一个版本的镜像重新烧写就能解决。3.2 默认账号密码和首次登录香橙派官方Ubuntu镜像的默认账号密码通常是项目默认值用户名orangepi密码orangepiroot密码orangepi第一次登录后系统会强制要求你修改密码某些版本会。如果你用的是服务器版镜像启动完成后直接在HDMI显示器上看到的是命令行登录界面输入账号密码就能进去。提示如果你烧的是桌面版首次启动可能会进入图形化的初始化向导让你选语言、时区、创建用户等。按照提示走就行但建议用户名不要用中文密码不要太简单。3.3 首次开机后必须做的三件事登录系统之后别急着装软件先把这三件事做了第一扩展文件系统。虽然现在的镜像大多会自动扩展但手动确认一下没坏处。用df -h看一下根分区的可用空间如果只有几百MB说明没扩展成功。可以用sudo orangepi-config或者sudo resize2fs /dev/mmcblk0p2来手动扩展。第二更新软件源和系统。执行sudo apt update sudo apt upgrade -y这一步会花一些时间取决于你的网络速度和软件包数量。更新完之后建议重启一次。第三确认网络连通性。如果你插了网线用ip a或者ifconfig看一下有没有拿到IP地址。如果没有检查网线是否插好、路由器是否开启了DHCP。如果是WiFi连接用nmcli或者桌面版的网络设置来配置。这三件事做完你的香橙派就算正式“活”过来了。4. SSH远程登录从能用变成好用4.1 为什么我强烈建议用SSH而不是直接接显示器很多人觉得接个显示器加键鼠就能操作何必折腾SSH。但实际用下来SSH的好处太明显了不需要额外的显示器和键鼠板子可以放在任何有电源和网线的地方。可以在电脑上直接复制粘贴命令不用在板子上手敲。支持多窗口同时操作一边跑推理一边看系统资源。文件传输方便scp或者sftp直接拖拽。可以配合VSCode远程开发后面写Python脚本、调试yolov5s代码的时候效率高很多。所以我的建议是第一次开机用HDMI确认系统正常然后立刻配置SSH之后所有操作都在远程完成。4.2 开启SSH服务并确认端口Ubuntu系统默认可能没有安装SSH服务或者安装了但没启动。先检查sudo apt install openssh-server -y sudo systemctl enable ssh sudo systemctl start ssh sudo systemctl status ssh如果看到active (running)就说明SSH服务已经跑起来了。默认端口是22一般不需要改。如果你处于一个比较复杂的网络环境想改端口的话编辑/etc/ssh/sshd_config找到Port 22那一行改成你想要的端口然后重启SSH服务。确认板子的IP地址ip a | grep inet找到eth0或者wlan0下面的inet地址通常是192.168.x.x这种格式。4.3 从电脑端连接香橙派Windows上我常用的是Windows Terminal自带的SSH客户端或者MobaXterm。macOS和Linux直接用终端就行。连接命令ssh orangepi192.168.1.100把IP换成你板子的实际地址。第一次连接会提示确认指纹输入yes然后输入密码。如果你觉得每次输密码太麻烦可以配置SSH密钥免密登录。在电脑上生成密钥对如果还没有的话ssh-keygen -t ed25519 -C orangepi然后把公钥复制到板子上ssh-copy-id orangepi192.168.1.100之后再用SSH连接就不需要输密码了。注意如果你在Windows上用的是较老版本的OpenSSH可能不支持ed25519密钥换成-t rsa即可。4.4 SSH连不上的常见原因和排查顺序SSH连不上是最常见的问题之一我按排查优先级列一下现象可能原因排查方法Connection refusedSSH服务没启动在板子上执行systemctl status sshConnection timed outIP地址不对或网络不通在板子上ip a确认IP在电脑上ping测试Permission denied用户名或密码错误确认用户名是orangepi密码是否正确Host key verification failed板子重烧过系统密钥变了删除电脑上的~/.ssh/known_hosts中对应条目No route to host电脑和板子不在同一网段检查两者的IP和子网掩码还有一种情况是板子能ping通但SSH连不上这时候在板子上看一下SSH服务是否监听在正确的端口上sudo ss -tlnp | grep ssh如果显示的是127.0.0.1:22而不是0.0.0.0:22说明SSH只监听了本地回环需要修改配置文件里的ListenAddress。5. 基础开发环境搭建为yolov5s铺路5.1 系统级依赖的安装SSH通了之后接下来就是把开发环境搭起来。yolov5s在RK3588上跑通常有两条路线一条是通过RKNN Toolkit2把模型转成NPU能加速的格式另一条是直接用PyTorch在CPU上跑性能差很多只适合验证。不管哪条路线下面这些系统级依赖都是必须的sudo apt install -y python3-pip python3-dev python3-venv \ build-essential cmake git wget curl \ libopenblas-dev liblapack-dev libjpeg-dev libpng-dev \ libavcodec-dev libavformat-dev libswscale-dev \ libgtk-3-dev libcanberra-gtk-module这些包分别对应Python环境、编译工具链、数学运算库、图像处理库、视频编解码库、GUI支持。一次性装完省得后面缺什么再补。5.2 Python虚拟环境的创建和pip源配置我强烈建议用虚拟环境来管理Python依赖不要直接在系统Python里pip install。原因很简单RKNN Toolkit2对某些包的版本有要求如果和系统其他工具冲突了排查起来很麻烦。python3 -m venv ~/yolov5_env source ~/yolov5_env/bin/activate激活虚拟环境后先配置pip源。国内网络环境下默认的PyPI源速度可能很慢换成国内镜像pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple然后安装基础包pip install --upgrade pip pip install numpy opencv-python pillow pyyaml tqdm matplotlib这些是yolov5s推理和后续模型转换的基础依赖。注意opencv-python在ARM平台上安装时可能会尝试从源码编译耗时较长。如果遇到编译失败可以换成opencv-python-headless或者直接用系统包python3-opencv。5.3 确认NPU驱动和RKNN环境香橙派官方的Ubuntu镜像通常已经预装了NPU相关的内核驱动。确认一下ls /dev/rknpu*如果看到/dev/rknpu或者类似设备节点说明NPU驱动已经加载。如果没有可能需要手动加载模块或者更新内核。RKNN Toolkit2的安装稍微复杂一些需要从瑞芯微的GitHub仓库下载对应的whl包。注意要选对版本——RK3588对应的是rknn_toolkit2的ARM64版本不要下成x86的。安装完之后用python3 -c from rknn.api import RKNN; print(RKNN OK)来验证是否安装成功。这一步如果遇到问题大概率是numpy版本不兼容或者缺少某些系统库。根据报错信息逐个解决就行。6. 首次使用中那些“没人告诉你但很重要”的细节6.1 散热问题别忽视RK3588的发热量不小尤其是跑推理任务的时候。如果你只是开机配置系统被动散热片勉强够用。但一旦开始跑yolov5s推理芯片温度会迅速上升超过80度就会触发降频性能直接打对折。我的建议是首次使用阶段就把散热方案准备好。至少加一个5V的小风扇对着散热片吹有条件的话上主动散热器。用cat /sys/class/thermal/thermal_zone0/temp可以查看当前温度正常待机应该在40-50度满载不超过75度比较理想。6.2 电源质量直接影响稳定性前面提过要5V/4A的电源但还有一个细节电源线的线径要够粗。有些便宜的USB线线径很细导致实际到达板子的电压不到5V表现就是系统随机重启、USB外设时好时坏、WiFi断流。换一根粗一点的线或者直接用带DC接口的电源适配器问题就解决了。6.3 系统时间不对会导致apt报错新烧的系统如果时间不对比如显示的是2020年apt update的时候会报证书验证失败。解决方法sudo apt install ntpdate -y sudo ntpdate ntp.aliyun.com sudo hwclock -w或者直接sudo timedatectl set-ntp true时间同步之后apt就能正常工作了。6.4 中文输入法和locale设置如果你用桌面版可能需要中文输入法。但我的建议是在开发阶段尽量用英文locale避免因为编码问题导致Python脚本报错。如果确实需要中文环境sudo apt install language-pack-zh-hans -y sudo locale-gen zh_CN.UTF-8然后在~/.bashrc里设置LANGzh_CN.UTF-8。但注意某些Python库在中文locale下可能会有编码问题遇到奇怪的报错时可以临时切回LANGC试试。6.5 文件传输的几种方式从电脑往板子传文件常用的有这几种scp命令行操作适合传单个文件或文件夹。scp model.pt orangepi192.168.1.100:~/sftp交互式文件传输适合浏览和选择性下载。VSCode Remote SSH直接在VSCode里打开板子的文件系统拖拽上传最方便。Python HTTP服务器在电脑上python -m http.server 8000然后在板子上wget http://电脑IP:8000/文件名。我平时用得最多的是VSCode Remote SSH因为可以同时编辑代码和传文件效率最高。7. 从首次使用到跑通yolov5s之间还差什么到这里你的香橙派RK3588应该已经处于一个“随时可以开始干活”的状态了系统更新完毕、SSH远程可用、Python环境就绪、NPU驱动确认加载。但距离真正跑通yolov5s推理还有几件事要做第一获取yolov5s的模型文件。可以从ultralytics的官方仓库下载预训练的.pt文件然后用RKNN Toolkit2转换成.rknn格式。转换过程中需要指定量化数据集这一步对最终推理精度影响很大。第二准备测试图片或视频。建议先用几张标准测试图比如COCO数据集里的图片验证推理流程是否跑通再换成自己的数据。第三写推理脚本。核心步骤包括加载rknn模型、预处理输入图像、执行推理、后处理解析输出框、绘制结果。这部分代码在RKNN Toolkit2的示例里有参考但需要根据yolov5s的输出格式做适配。第四性能调优。包括调整NPU核心数RK3588有3个NPU核心、选择合适的量化方式、优化前后处理代码等。这些内容我会在后续的教程里详细展开。我个人在实际操作中的体会是首次使用阶段最耗时的不是技术难点而是各种环境配置的琐碎问题。把这篇里的每一步都走一遍后面跑模型的时候会顺畅很多。尤其是SSH和Python虚拟环境这两块前期花十分钟配好后面能省好几个小时。最后分享一个小技巧配置完成后用sudo orangepi-config里的“备份系统”功能把当前状态备份一下。这样万一后面折腾坏了恢复起来很快不用从头再来一遍。
返回列表