1. 开箱之后先别急着上电:香橙派RK3588首次使用的整体思路
拿到香橙派RK3588这块板子的时候,很多人第一反应是赶紧插电看看能不能亮。我当初也是这个心态,结果因为没做任何准备,连系统都没烧录就上电,屏幕黑着,指示灯亮着,心里慌得不行。所以这篇内容的核心就是帮你把“首次使用”这件事从头到尾走一遍,把该踩的坑提前填平。
香橙派RK3588本质上是一台卡片大小的ARM架构计算机,搭载瑞芯微RK3588芯片,八核CPU(4个A76大核+4个A55小核),内置NPU算力6TOPS,拿来跑yolov5s这类轻量目标检测模型非常合适。但前提是你得先让它跑起来,能联网、能远程登录、能装软件,后面才能谈部署模型的事。
首次使用的完整链路其实就四步:系统镜像烧录到存储介质、板子启动并完成初始配置、打通SSH远程连接、配好基础开发环境。这四步里任何一步出问题,后面都进行不下去。我见过太多人卡在第一步——烧录工具选错、镜像下错、TF卡质量不行,折腾一整天连系统都没进去。
这篇内容适合谁看?如果你刚拿到香橙派RK3588或者香橙派5系列,之前没接触过ARM开发板,或者玩过树莓派但没碰过RK3588平台,那这篇就是写给你的。我会把每个步骤的操作意图、参数选择理由、常见报错和排查方法都讲清楚,让你少走弯路。
提示:首次使用建议先用TF卡烧录系统,不要一上来就折腾eMMC或NVMe SSD。TF卡烧坏了换一张就行,eMMC烧坏了修复起来麻烦得多。
2. 系统镜像的选择与烧录:第一步走稳后面才顺
2.1 该选哪个Ubuntu版本
香橙派官方为RK3588系列提供了多个系统镜像,包括Ubuntu 20.04、Ubuntu 22.04、Debian 11等。很多人纠结选哪个,我的建议很直接:如果你后面要部署yolov5s或者yolov8,优先选Ubuntu 22.04。原因有三个:一是22.04的Python版本是3.10,对主流深度学习工具链兼容性更好;二是官方对22.04的驱动支持更新更及时;三是社区里关于RK3588+Ubuntu 22.04的教程和问题解答最多,遇到坑容易搜到答案。
Ubuntu 20.04也不是不能用,但它的Python 3.8在一些新版本的pip包上会碰到兼容性问题,比如某些onnxruntime的预编译轮子只提供Python 3.9以上的版本。当然如果你有特定需求必须用20.04,那也没问题,后面手动编译安装就行,只是多花点时间。
镜像文件从香橙派官网下载,注意区分“桌面版”和“服务器版”。桌面版带图形界面,适合调试和可视化操作;服务器版没有图形界面,资源占用低,适合最终部署。我一般先用桌面版调试,调通了再换服务器版做最终部署。但如果你一开始就打算SSH远程操作,直接下服务器版也行,省得后面再换。
下载的时候注意核对文件大小和MD5值。我遇到过下载中断导致镜像文件不完整的情况,烧录进去系统起不来,排查了半天才发现是镜像本身的问题。官网一般会提供MD5校验值,下载完用md5sum命令对一下,几秒钟的事,能省掉几小时的排查。
2.2 烧录工具的选择与实操
烧录工具用balenaEtcher或者RKDevTool。这两个工具适用场景不同:balenaEtcher适合把镜像烧录到TF卡,操作简单,图形化界面,选镜像、选TF卡、点烧录,三步搞定;RKDevTool是瑞芯微官方的工具,适合通过USB线把镜像烧录到eMMC或直接烧录到板载存储,操作稍微复杂一点,但功能更强。
首次使用我强烈建议用balenaEtcher烧录到TF卡。TF卡建议用Class 10以上、容量16GB起步的卡,品牌选闪迪、三星、金士顿都行。别用杂牌卡,读写速度慢不说,还容易出现烧录后无法启动的问题。我有一次图便宜买了张不知名品牌的32GB卡,烧录过程没问题,但板子启动到一半就卡死,换回闪迪的卡立刻正常。
烧录步骤不复杂,但有几个细节要注意:
- 下载balenaEtcher后安装,打开软件,点击“Flash from file”选择下载好的镜像文件(通常是
.img.xz格式,Etcher会自动解压)。 - 插入TF卡,点击“Select target”选中TF卡对应的盘符。千万注意别选错盘,选成电脑硬盘就麻烦了。
- 点击“Flash”开始烧录,等待进度条走完。烧录完成后Etcher会自动校验,校验通过才算真正完成。
- 烧录完成后,Windows可能会弹出“需要格式化磁盘”的提示,直接关掉,不要格式化。这是因为Windows不认识Linux的分区格式,格式化会把刚烧录的系统毁掉。
注意:烧录完成后如果TF卡在Windows下显示为“未分配空间”或弹出格式化提示,这是正常现象,直接拔卡插到板子上就行。
2.3 首次上电与启动观察
TF卡烧录好之后,插到香橙派RK3588的TF卡槽里。注意板子上可能有多个存储接口,TF卡槽通常标注为“TF”或“MicroSD”,别插错到其他槽位。
上电之前先确认几件事:HDMI线接好(如果用桌面版)、网线接好(如果用有线网络)、电源适配器规格对。RK3588开发板一般需要5V/4A以上的电源,用手机充电器那种5V/2A的可能带不动,表现为启动过程中反复重启或者根本起不来。我一开始用了个旧充电器,板子灯亮但HDMI没输出,换了官方推荐的电源立刻正常。
上电后观察指示灯:红色电源灯常亮表示供电正常,绿色或蓝色灯闪烁表示系统正在启动。如果绿灯一直不闪,可能是TF卡没插好或者镜像烧录有问题。HDMI接显示器的话,正常启动后几十秒内会看到Ubuntu的启动日志和登录界面。
首次启动系统会自动扩展文件系统、生成SSH密钥等,这个过程可能需要一两分钟,耐心等。启动完成后,桌面版会进入图形登录界面,默认用户名和密码一般是orangepi/orangepi,具体看官方文档说明。
3. 打通SSH远程连接:让板子脱离显示器独立工作
3.1 为什么一定要用SSH
香橙派RK3588最终是要拿来跑yolov5s推理的,你不可能一直给它接个显示器当台式机用。SSH远程连接是开发板最核心的使用方式,让你在电脑上通过终端操作板子,传文件、跑命令、看日志都方便。
而且SSH连接打通之后,板子可以放在任何有网络的地方,你坐在电脑前就能操作,不用来回插拔HDMI线和键盘鼠标。对于后面部署模型、调试代码来说,SSH是基础设施级别的东西,必须先搞定。
3.2 有线网络直连与IP发现
最稳妥的方式是用网线把香橙派和路由器连起来。板子启动后会自动通过DHCP获取IP地址。问题是你怎么知道它获取到了什么IP?
几种方法:一是登录路由器管理后台,在“已连接设备”列表里找香橙派对应的设备名,通常显示为orangepi或rk3588;二是用nmap扫描局域网网段,比如nmap -sn 192.168.1.0/24,找到新增的设备IP;三是如果板子接了显示器,直接在终端里运行ip addr或ifconfig查看。
我一般用第二种方法,因为路由器后台有时候设备名显示不直观,而nmap扫描结果里能看到MAC地址前缀,香橙派的MAC地址前缀是固定的,一眼就能认出来。
如果你没有路由器,也可以用网线把香橙派和电脑直连。这时候需要手动给电脑网卡配一个同网段的静态IP,比如电脑配192.168.1.100,板子默认可能是192.168.1.1或者需要手动设置。这种方式适合临时调试,长期用还是接路由器方便。
3.3 SSH连接实操与常见报错
知道IP之后,在电脑终端里运行:
ssh orangepi@192.168.1.xxx第一次连接会提示确认主机指纹,输入yes回车,然后输入密码。默认密码通常是orangepi,登录成功后你就进入了香橙派的命令行界面。
如果连接失败,按以下顺序排查:
| 报错信息 | 可能原因 | 解决方法 |
|---|---|---|
| Connection refused | SSH服务未启动 | 板子上运行sudo systemctl start ssh |
| Connection timed out | IP不对或网络不通 | 确认IP、ping一下板子 |
| Permission denied | 用户名或密码错误 | 确认用户名,默认密码尝试orangepi |
| Host key verification failed | 主机指纹变了 | 删除~/.ssh/known_hosts中对应条目 |
我遇到过最坑的一种情况是:板子明明获取到了IP,ping也能通,但SSH就是连不上。后来发现是系统首次启动时SSH服务没有自动启动,需要在板子上手动开启。如果你也碰到这种情况,接显示器登录板子,运行sudo systemctl enable ssh && sudo systemctl start ssh,之后就能正常连接了。
提示:建议首次SSH连接成功后立刻修改默认密码,运行
passwd命令按提示操作。开发板默认密码是公开的,不改的话局域网内任何人都能登录。
3.4 配置SSH免密登录提升效率
每次SSH都要输密码很烦,配个免密登录能省不少事。原理是在电脑上生成一对密钥,把公钥放到板子的~/.ssh/authorized_keys文件里,之后连接时板子用公钥验证电脑身份,不需要再输密码。
操作步骤:
- 在电脑上运行
ssh-keygen -t rsa -b 4096,一路回车,生成密钥对。 - 运行
ssh-copy-id orangepi@192.168.1.xxx,输入一次密码,公钥自动复制到板子上。 - 之后
ssh orangepi@192.168.1.xxx直接登录,不再需要密码。
如果你用VSCode做远程开发,配好免密登录后VSCode的Remote-SSH插件也能直接连,编辑板子上的代码就像编辑本地文件一样方便。这个后面部署yolov5s的时候会大量用到。
4. 基础环境配置:为后续部署yolov5s铺路
4.1 系统更新与换源
首次SSH登录成功后,第一件事是更新软件源和已安装的包。Ubuntu默认的官方源在国内访问速度可能不理想,建议换成国内镜像源。编辑/etc/apt/sources.list文件,把里面的archive.ubuntu.com和security.ubuntu.com替换成国内镜像地址。
换源之后运行:
sudo apt update sudo apt upgrade -y这个过程可能需要几分钟到十几分钟,取决于网络速度和更新包的数量。更新完成后建议重启一次:sudo reboot。
注意:
apt upgrade过程中如果提示某些配置文件有冲突,一般选择保留当前版本即可。除非你明确知道新版本配置更好,否则不要轻易覆盖。
4.2 安装常用工具链
系统更新完之后,装一批后续开发必备的工具:
sudo apt install -y build-essential cmake git wget curl vim htop net-tools这几个包的作用分别是:build-essential提供gcc、g++、make等编译工具;cmake是跨平台构建工具,后面编译一些库会用到;git用于拉取代码仓库;wget和curl用于下载文件;vim是终端编辑器;htop看系统资源占用;net-tools提供ifconfig等网络命令。
如果你后面要跑yolov5s,Python环境也需要提前配好。Ubuntu 22.04自带Python 3.10,但pip可能需要手动安装:
sudo apt install -y python3-pip python3-dev python3-venv装完之后用python3 --version和pip3 --version确认版本。
4.3 配置中文环境与输入法
如果你用桌面版,可能需要中文输入法。Ubuntu下常用的中文输入法框架是fcitx,配合搜狗输入法或谷歌拼音。安装步骤:
sudo apt install -y fcitx fcitx-googlepinyin装完后在“语言支持”设置里把键盘输入法系统切换为fcitx,重启后生效。然后在fcitx配置里添加谷歌拼音输入法。
不过说实话,如果你主要用SSH远程操作,中文输入法不是必须的。板子上大部分操作都是命令行,不需要输入中文。桌面版调试阶段可能用得上,最终部署用服务器版的话完全不需要。
4.4 文件传输:电脑与板子互传文件
开发过程中经常需要在电脑和板子之间传文件。除了scp命令,还有几种方式:
scp是最基础的,比如把本地文件传到板子:
scp local_file.py orangepi@192.168.1.xxx:/home/orangepi/从板子下载文件到本地:
scp orangepi@192.168.1.xxx:/home/orangepi/result.txt ./如果文件多或者目录大,可以用rsync,支持断点续传和增量同步:
rsync -avz --progress local_dir/ orangepi@192.168.1.xxx:/home/orangepi/remote_dir/VSCode的Remote-SSH插件也支持拖拽上传下载文件,图形化操作更直观。我平时写代码用VSCode远程编辑,传大文件用rsync,小文件直接scp,基本覆盖所有场景。
5. 常见问题与排查技巧实录
5.1 板子启动不了怎么办
启动不了分几种情况:完全没反应(灯不亮)、灯亮但无输出、启动到一半卡死。
完全没反应先检查电源。RK3588开发板对供电要求比较高,5V/4A是基本要求,有些板子甚至需要5V/5A。用万用表量一下电源适配器实际输出电压,有些标称5V的充电器带载后电压掉到4.5V以下,板子就起不来。
灯亮但HDMI无输出,先确认HDMI线没问题、显示器输入源选对了。然后检查TF卡是否插紧、镜像是否烧录正确。可以换一张卡重新烧录试试。
启动到一半卡死,大概率是TF卡质量问题或者镜像损坏。重新下载镜像、换卡烧录。如果换了卡还是卡死,可能是板子硬件问题,联系售后。
5.2 SSH连不上排查清单
SSH连不上是最常见的问题,我整理了一个排查顺序:
- 板子是否正常启动?接显示器确认系统起来了。
- 网络是否通?电脑上
ping 板子IP看是否响应。 - SSH服务是否运行?板子上
systemctl status ssh查看。 - 防火墙是否拦截?
sudo ufw status查看,必要时sudo ufw disable临时关闭。 - 用户名密码是否正确?默认一般是
orangepi/orangepi。 - 是否在同一网段?电脑IP和板子IP前三段要一致。
按这个顺序走一遍,基本能定位到问题。
5.3 系统时间不对导致的问题
ARM开发板没有板载RTC电池的话,断电后系统时间会丢失,启动后时间可能回到1970年。这会导致apt update时报证书错误、git操作失败等问题。
解决方法:联网后运行sudo ntpdate ntp.aliyun.com同步时间,或者启用systemd-timesyncd服务自动同步:
sudo timedatectl set-ntp true如果板子有RTC电池接口,可以装个纽扣电池,断电后时间也能保持。
5.4 存储空间不足的处理
TF卡容量小的话,装完系统+更新+几个工具包可能就满了。用df -h查看空间占用。如果不够用,几种方案:换大容量TF卡、外接USB存储、或者用NVMe SSD(如果板子支持)。
香橙派RK3588一般有M.2接口,可以装NVMe SSD。把系统和数据放在SSD上,速度和容量都比TF卡好很多。但首次使用建议先用TF卡把系统跑通,再折腾SSD启动。
5.5 常见问题速查表
| 问题现象 | 可能原因 | 快速解决 |
|---|---|---|
| 上电无反应 | 电源功率不足 | 换5V/4A以上电源 |
| HDMI无输出 | 镜像问题或TF卡故障 | 重新烧录或换卡 |
| SSH拒绝连接 | SSH服务未启动 | 板子上启动ssh服务 |
| apt更新报错 | 系统时间不对 | 同步NTP时间 |
| 磁盘空间满 | TF卡容量小 | 清理或换大卡 |
| 网络时通时断 | 网线或接口问题 | 换网线换接口 |
6. 首次使用完成后的检查清单
走到这里,你的香橙派RK3588应该已经能正常启动、SSH远程登录、联网更新、装软件了。在进入下一步部署yolov5s之前,花两分钟确认以下事项:
- 系统能正常启动,SSH能稳定连接
- 默认密码已修改
- 系统时间已同步
- 软件源已更新,
apt update无报错 - Python3和pip3可用
- 电脑与板子之间能互传文件
- 板子能正常访问外网
这几项都OK的话,基础环境就算搭好了。后面部署yolov5s的时候,还需要装NPU驱动、RKNN工具链、Python虚拟环境等,那些属于下一阶段的内容。
我个人在实际操作中的体会是,首次使用阶段最耗时的不是操作本身,而是排查各种意外问题。电源不对、TF卡质量差、镜像下载不完整、SSH服务没启动,这些坑我几乎都踩过一遍。所以建议你每一步都按上面的检查点确认一遍再往下走,看起来多花了几分钟,实际上省掉的是后面几小时的排查时间。
最后分享一个小技巧:首次配置完成后,用sudo dd if=/dev/mmcblk0 of=backup.img bs=4M status=progress把整张TF卡备份成镜像文件存到电脑上。后面如果系统玩坏了,直接烧录备份镜像就能恢复到当前状态,不用从头再配一遍。这个习惯在折腾开发板的时候特别有用,尤其是后面装NPU驱动、编译工具链这些容易搞崩系统的操作之前,备份一次能救命。