以下是在 RK3308 开发板上安装 Android 系统的详细操作指南,结合官方工具链与社区实践经验,分步骤说明关键操作与注意事项:
一、环境准备
硬件要求
开发板:确认设备为搭载 RK3308 芯片的开发板(如 Firefly ROC-RK3308-CC),确保 USB OTG 接口、串口调试接口(UART0)正常。
调试工具:准备 USB 转 TTL 模块(推荐 CP2104 芯片),用于串口通信,波特率设置为 1500000,8 位数据位,无校验位。
软件工具
编译环境
推荐系统:Ubuntu 18.04(较新的版本可能需调整依赖)。
依赖安装:
```。
烧录工具
Windows:使用RKAndroidTool v2.69(支持 RK3308)或SDCard Installer一键烧录工具。
Linux:通过rkdeveloptool或upgrade_tool命令行烧录。
固件获取
从 Firefly 官网下载最新 Android BSP(如 Android 7.1.2),或通过 Git 获取社区 SDK:
```。
二、编译与配置
内核与 U-Boot 编译
U-Boot 配置
make -j4
内核编译
若需支持 AP6236 WIFI 模块,需修改buildroot/configs/firefly_rk3308_release_defconfig,关闭 RTL8188EU 驱动。
设备树调整
编辑device/rockchip/rk3308/BoardConfig.mk,指定设备树文件(如rk3308-roc-cc-dmic-pdm_emmc.dts),并根据硬件版本调整电源配置。
生成固件
执行一键编译脚本:
生成的update.img位于rockdev目录,包含 boot、system 等分区。
三、烧录与调试
进入升级模式
硬件方式:断电后短按 MaskROM/RECOVERY 键,通过 USB OTG 连接电脑,上电后松开进入 MaskROM 模式。
软件方式:已烧录固件的设备可通过串口或 ADB 执行reboot loader进入 Loader 模式。
烧录操作
Windows
使用RKAndroidTool选择update.img,点击 “升级”。
或用SDCard Installer一键烧录至 SD 卡(适用于 SD 启动设备)。
Linux
```。
串口调试
连接:将 USB 转 TTL 模块的 RXD 接开发板 TXD,TXD 接 RXD,GND 共地。
监听日志:
```。
四、常见问题与解决方案
烧录失败
驱动问题:Windows 需安装RKDriverAssistant,Linux 需添加libusb权限。
Loader 版本不匹配:确保使用与芯片型号一致的 Loader(如rk3308_loader_uart0_m0_emmc_port_support_sd_20190717.bin)。
启动卡在 logo
设备树错误:检查rk3308-roc-cc-dmic-pdm_emmc.dts中屏幕、WIFI 节点是否正确启用。
内核参数异常:通过串口修改 U-Boot 环境变量,确保bootargs包含正确根文件系统路径。
硬件功能异常
驱动缺失:重新编译时启用对应模块(如 AP6236 WIFI),并清理缓存:
rm -rf buildroot/output/firefly_rk3308_release/build/rkwifibt-1.0.0/
```。
电源配置错误:参考官方文档调整 VDD_CORE 和 DDR 电压。
无法进入 Loader 模式
按键操作:确保短按 MaskROM 键的同时上电,松开时机需精准(约 2 秒)。
串口触发:通过串口发送组合键(如 Ctrl+B)进入 MaskROM 模式。
五、进阶配置
GPU 驱动支持
启用内核CONFIG_MALI选项,集成瑞芯微闭源驱动库,并在 Android.mk 中添加 OpenGL ES 依赖。
OTA 升级
生成差分固件:
./mkupdate.sh ota
通过 ADB 无线升级:
```。
多系统支持
修改 U-Boot 环境变量实现双启动:
```。
### 六、资源与社区
- **官方文档**:Firefly提供[SDK编译指南](https://wiki.t-firefly.com/ROC-RK3308-CC/sdkbuilding.html)和[硬件手册](https://dl.radxa.com/rockpis/docs/hw/datasheets/Rockchip%20RK3308%20Datasheet%20V1.0-2018027.pdf)。
- **社区支持**:在[Firefly开发者论坛](https://dev.t-firefly.com/forum-380-1.html)和[瑞芯微官方论坛](https://bbs.rock-chips.com/)获取最新固件与技术支持。
- **代码仓库**:社区维护的SDK可在[GitHub](https://github.com/ariaboard-com/rockchip_rk3308_linux_sdk)和[GitLab](https://gitlab.com/TeeFirefly/rk3308-linux)获取。