当前位置: 首页 > news >正文

易百纳RV1126开发板刷Firefly Debian固件全流程(附分区扩容技巧)

易百纳RV1126开发板刷Firefly Debian固件全流程(附分区扩容技巧)

第一次接触Firefly生态的开发者,往往会被其丰富的功能和灵活的定制性所吸引。作为一款基于Rockchip RV1126芯片的开发板,易百纳RV1126凭借其强大的AI处理能力和低功耗特性,在边缘计算和物联网领域广受欢迎。然而,从官方固件切换到Firefly Debian系统时,不少开发者会遇到一个共同的问题:刷机完成后,系统分区并未充分利用eMMC的全部空间。本文将详细介绍从零开始的完整刷机流程,并重点解决分区扩容这一痛点问题。

1. 准备工作与环境搭建

在开始刷机之前,确保你已准备好以下硬件和软件:

  • 硬件准备清单

    • 易百纳RV1126开发板
    • 5V/2A电源适配器
    • Type-C数据线(用于连接电脑)
    • 串口调试工具(如USB转TTL模块)
    • 网线(可选,用于网络连接)
  • 软件工具下载

    • RKDevTool刷机工具(建议使用v2.86或更高版本)
    • Firefly Debian固件镜像
    • 串口终端软件(如Putty、MobaXterm)

提示:建议在Windows 10或11系统下进行操作,确保已安装必要的USB驱动。如果使用Linux主机,可能需要额外配置udev规则。

安装RKDevTool时,可能会遇到驱动签名问题。解决方法如下:

# 在Windows中临时禁用驱动签名强制 1. 按住Shift键并点击"重启" 2. 选择"疑难解答"→"高级选项"→"启动设置"→"重启" 3. 按F7选择"禁用驱动程序强制签名"

2. 固件刷写详细步骤

2.1 进入Loader模式

开发板上有两个关键按钮需要配合使用:

  • Recovery键:通常标记为"REC"或"恢复"
  • Reset键:标记为"RST"

操作顺序至关重要:

  1. 使用Type-C线连接开发板和电脑
  2. 按住Recovery键不放
  3. 短按Reset键后立即松开
  4. 保持Recovery键按住约3秒后松开

在RKDevTool中,你应该看到"发现一个LOADER设备"的提示。如果没有出现,请检查:

  • USB线是否正常工作
  • 是否安装了正确的驱动程序
  • 按钮操作时序是否正确

2.2 固件烧录配置

Firefly Debian固件通常包含以下关键文件:

  • update.img:完整系统镜像
  • parameter.txt:分区表配置文件
  • MiniLoaderAll.bin:引导加载程序

在RKDevTool中的正确配置步骤:

操作项具体设置注意事项
工作模式升级固件确保选择正确
镜像文件选择update.img路径不要包含中文
设备类型Maskrom或Loader自动检测即可
高级功能勾选"校验"确保烧录完整性

点击"升级"按钮后,进度条将开始移动。整个过程通常需要3-5分钟,期间不要断开连接或操作开发板。

2.3 首次启动注意事项

烧录完成后,开发板会自动重启。首次启动时,系统会进行以下操作:

  1. 初始化文件系统
  2. 生成SSH密钥
  3. 配置网络接口

这个过程可能需要5-10分钟,在串口终端中你会看到大量启动日志。耐心等待直到出现登录提示符:

Debian GNU/Linux 11 firefly ttyFIQ0 firefly login:

默认登录凭证为:

  • 用户名:root
  • 密码:firefly

3. 分区扩容实战指南

3.1 识别存储空间问题

刷机完成后,立即检查磁盘使用情况:

df -h

典型输出示例:

Filesystem Size Used Avail Use% Mounted on /dev/root 613M 481M 89M 85% / devtmpfs 911M 0 911M 0% /dev tmpfs 912M 0 912M 0% /dev/shm

同时查看实际存储设备容量:

fdisk -l /dev/mmcblk0

输出应显示eMMC的总容量(通常为8GB或16GB),但系统分区只使用了其中一小部分。

3.2 调整分区大小

Firefly Debian默认使用GPT分区表,我们需要调整第三个分区(通常是rootfs)的大小:

  1. 首先确认分区挂载点:
lsblk -f
  1. 在线调整ext4文件系统大小(无需卸载):
resize2fs /dev/mmcblk0p3
  1. 验证调整结果:
df -h

成功扩容后,输出应该显示rootfs分区已使用eMMC的大部分空间:

/dev/root 7.2G 483M 6.4G 7% /

3.3 高级分区管理技巧

对于需要自定义分区布局的高级用户,可以修改parameter.txt文件:

CMDLINE: mtdparts=rk29xxnand:0x00004000@0x00004000(uboot),0x00010000@0x00008000(boot),-@0x00018000(rootfs:grow)

关键参数说明:

  • :grow标记允许分区自动扩展
  • 扇区地址需要与硬件规格匹配
  • 修改后需要重新烧录整个系统

4. 系统优化与常见问题解决

4.1 网络配置技巧

Firefly Debian默认使用NetworkManager管理网络。有线网络配置示例:

nmcli con add con-name "eth0-static" ifname eth0 type ethernet \ ip4 192.168.1.100/24 gw4 192.168.1.1 nmcli con mod "eth0-static" ipv4.dns "8.8.8.8,8.8.4.4" nmcli con up "eth0-static"

Wi-Fi连接方法:

nmcli device wifi list nmcli device wifi connect "SSID" password "PASSWORD"

4.2 软件源配置

不要随意更换默认的软件源,因为Firefly Debian针对ARM架构进行了特定优化:

cat /etc/apt/sources.list.d/firefly.list

正确的做法是只更新软件包索引:

apt update apt upgrade -y

4.3 开发环境搭建

安装基本开发工具链:

apt install -y build-essential git cmake python3-dev

对于AI应用开发,还需要安装Rockchip NPU支持包:

apt install -y rknn-toolkit-lite

验证RKNN环境:

import rknnlite rknn = rknnlite.RKNNLite() print(rknn.list_devices())

4.4 性能监控工具

安装常用系统监控工具:

apt install -y htop iotop iftop

实时查看CPU和内存使用情况:

htop

监控磁盘I/O性能:

iotop -o

5. 进阶应用与扩展

5.1 自定义内核编译

获取Firefly提供的kernel源码:

git clone https://gitlab.com/firefly-linux/kernel/rk-common.git cd rk-common git checkout debian-rk1126

配置内核选项:

make ARCH=arm rockchip_linux_defconfig make ARCH=arm menuconfig

编译并安装内核:

make ARCH=arm -j$(nproc) bindeb-pkg dpkg -i ../linux-image-*.deb

5.2 构建自定义rootfs

使用debootstrap创建最小系统:

apt install -y debootstrap debootstrap --arch=armhf bullseye ./rootfs http://deb.debian.org/debian

配置chroot环境:

chroot ./rootfs /bin/bash passwd root exit

打包为img文件:

dd if=/dev/zero of=custom-rootfs.img bs=1M count=4096 mkfs.ext4 -F -L rootfs custom-rootfs.img mkdir -p /mnt/rootfs mount -o loop custom-rootfs.img /mnt/rootfs cp -a ./rootfs/* /mnt/rootfs/ umount /mnt/rootfs

5.3 硬件接口使用示例

GPIO控制示例(需要安装wiringpi-rk):

gpio readall gpio mode 1 out gpio write 1 1

I2C设备检测:

apt install -y i2c-tools i2cdetect -y 0

PWM控制示例:

echo 0 > /sys/class/pwm/pwmchip0/export echo 1000000 > /sys/class/pwm/pwmchip0/pwm0/period echo 500000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle echo 1 > /sys/class/pwm/pwmchip0/pwm0/enable
http://www.jsqmd.com/news/518327/

相关文章:

  • 一加6T刷Nethunter Pro后能做啥?从渗透测试到无线审计的5个实战场景
  • 协议抽象层设计失败导致SDK崩溃?3类高频错误诊断清单,立即自查!
  • ELK Stack 日志分析实战:5分钟搞定Nginx日志可视化(含Grok配置)
  • IEEE Transactions投稿实战:如何在中科院1区TOP期刊高效发表你的研究(附国人友好期刊清单)
  • Immich:开源高性能的照片视频管理解决方案,你的私人Google Photos
  • 2026昆明学化妆指南:揭秘靠谱化妆学校 - 品牌测评鉴赏家
  • 好写作AI | “代写”与“辅助”之间:AI写作工具的伦理风险与治理路径
  • 告别纯云端:用Ollama本地Embedding+DeepSeek API,低成本打造企业级RAG问答系统
  • GISBox实战:从高斯泼溅到3DTiles,解锁Web端三维场景高效渲染
  • BCompare不止于代码:手把手教你用它做文件夹备份同步和重复文件清理
  • 2026年评测:如何挑选优质沥青路面冷补料厂家,冷补料实力厂家找哪家技术实力与市场典范解析 - 品牌推荐师
  • 实在 Agent 支持哪些企业业务场景的自动化?全行业智能自动化场景深度拆解
  • 好写作AI | 面向毕业论文写作场景的AI提示词模板库构建与应用
  • Redisson看门狗机制实战:如何避免分布式锁超时释放的坑?
  • 【HCI log实战】无需Root!Google Pixel蓝牙HCI日志抓取全攻略
  • 群晖进阶指南-利用ActiveBackupForBusiness实现企业级数据备份策略
  • 昆明化妆培训学校|2026实测不踩坑!零基础小白必看 - 品牌测评鉴赏家
  • 内网穿透不求人:5分钟搞定SSH反向隧道(含GatewayPorts配置详解)
  • 出海项目实战:SpringBoot 2.x 集成 Stripe 支付,从配置到Webhook回调的保姆级避坑指南
  • FineReport参数控件避坑指南:从单选查询到三级联动的6个实战要点
  • 05樊珍3月18日
  • ESP32 SimpleFOC实战:移植ODrive抗齿槽算法实现电机平滑控制
  • 3月20日 Web前端课堂笔记:CSS外部样式表实战
  • 关于web的一些基础认知分享
  • 避坑指南:用MoveIt!的set_position_target()给机械臂设目标点,为什么还是解不出逆运动学?
  • 在树莓派4B的Ubuntu 22.04上,手动编译安装GCC 4.8的完整踩坑记录
  • uniApp XR-Frame小程序实战 | 模型资源池与按需加载策略
  • 毕节学化妆|4 家优质机构盘点,新手选对不踩坑! - 品牌测评鉴赏家
  • WPF中的元素树
  • 红黑树、红黑规则、添加节点处理方案