R3300L运⾏CoreELEC,EmuELEC和Armbian
R3300 电视盒
R3300电视盒有两种型号, 外观⼀样但是使⽤的CPU和内存容量不太⼀样
R3300L的参数
CPU: S905L
RAM: Samsung K4B4G1646E-BCMA 512MB * 2 = 1GB
ROM: Samsung KLM8G1WEPD-B031 8GB eMMC * 1 = 8GB
WLAN: RTL8189FTV
接⼝: USB2.0 * 1, MicroUSB * 1, AV * 1, HDMI * 1, Micro Sdcard Reader * 1, 10/100M eth * 1, IR * 1
功率: 待机 0.6W, ⼯作 2.9~3.0W, 播放视频 3.5W
R3300M的参数
CPU: S905M-B
RAM: Nanya NT5CB256M16DP-EK DDR3 512MB * 2 = 1GB
ROM: TOSHIBA THGBMBG5D1KBAIL 4GB eMMC * 1 = 4GB
WLAN: RTL8189ETV
接⼝: USB2.0 * 1, MicroUSB * 1, AV * 1, HDMI * 1, Micro Sdcard Reader * 1, 10/100M eth * 1
EmuELEC介绍
EmuELEC实际上是⼀个软件的整合, 要把它介绍清楚, 就不得不提相关联的⼀些项⽬.
EmuELEC涉及的项⽬介绍
Kodi
⾸先是Kodi(曾经也叫XBMC), 是⼀个可以跨多平台运⾏的影⾳娱乐中⼼软件. 由XMBC/Kodi基⾦会资助开发. 是当前各种ELEC项⽬的⿐祖. OpenELEC
OpenELEC(Open Embedded Linux Entertainment Center)是⼀个基于JeOS(Just Enough Operating System)的精简Linux, ⽤于将电脑变为可以运⾏Kodi的家庭媒体娱乐中⼼, 其功能包括影⽚管理和播放, TV播放, 相⽚浏览, ⾳乐播放. 因为不基于任何发⾏版, 所以OpenELEC的硬件驱动并不完整, 其优点在于提供了完整的管理界⾯, 普通⽤户完全可以通过界⾯管理系统⽽不需要使⽤命令⾏.
LibreELEC
LibreELEC是从OpenELEC早期版本独⽴出来的⼀个分⽀. 与OpenELEC相⽐更精简, 更新更快(monthly updates), 官⽹⽂档详细, 更容易安装, ⽬前Kodi主页上的Friends列表, 只有LibreELEC, 没有OpenELEC. ⽬前⼤部分⽤户更倾向于使⽤LibreELEC.
OSMC
OSMC 是⼀个基于Debian发⾏版的Kodi运⾏环境. 因为其基于Debian, 所以软件资源相当丰富. 相对应的, 运⾏OSMC需要的硬件要求相对LibreELEC要⾼. OSMC跟EmuELEC其实没什么关系, 但是既然都提到这么多了, 也顺带介绍⼀下.
RetroArch
RetroArch是⼀个跨平台的前端框架, 虽然说也⽀持多媒体, 但其实主要还是⽤于游戏模拟器. RetroArch
⽀持FC, SFC, GB, MD, Mame等各种模拟器引擎.
CoreELEC
CoreELEC 是LibreELEC的⼀个分⽀, 专注于在Amlogic芯⽚⽅案上运⾏的Kodi. 如果你的盒⼦使⽤的是Amlogic系列芯⽚, 推荐使⽤这个. EmuELEC
终于介绍到主⾓了. EmuELEC基于CoreELEC和Lakka, 专注于在Amlogic芯⽚⽅案上运⾏的游戏模拟器, 主要是RetroArch, 附带⼀些PSP这类游戏的独⽴模拟器, 界⾯基于EmulationStation, 在游戏中可以调出RetroArch界⾯. EmuELEC相当于树莓派上RetroPie的Amlogic版. EmuELEC以前叫SX05RE, 从版本2.5开始, 改名为emuELEC, 专注于游戏功能, 不再集成Kodi. 常⽤的WiFi设置, 蓝⽛设置等功能已经集成到主界⾯, 不需要通过Kodi来设置.
EmuELEC的安装
版本4.0之前
版本4.0之前的镜像, 包含两个分区, ⼀个是FAT32格式的引导区, 另⼀个是EXT4格式的系统区, 在Windows下⽆法访问, 游戏ROM放在EXT4格式分区下
- 适⽤于S905/S912芯⽚的设备, 例如N1, Q5, Q7, R3300L等
- 适⽤于新出的S905x2,S922x/A311D芯⽚的设备
版本4.0之后
版本4.0之后的镜像, 新增加了⼀个分区, ⽤于放置游戏ROM.
S912 芯⽚的设备不再⽀持, 例如斐讯T1
EmuELEC-Amlogic.aarch64-x. 适⽤于S905芯⽚的设备, 例如N1, Q5, Q7, R3300L等,
EmuELEC-Amlogic-ng.aarch64-x. 适⽤于新款S905x2, S905x3, S922x/A311D芯⽚的设备
安装
下载完之后, 使⽤ Win32DiskImager, USB Image Tool等⼯具写⼊TF卡(或U盘).
写⼊结束后, TF卡实际被分成了两个分区, ⼀个是FAT32格式的引导区, 另⼀个是EXT4格式的系统区, 在
Windows下⽆法访问.
然后在写好的⽂件系统中, 在device_tree下选择合适的dtb⽂件, 替换掉卡根⽬录下的dtb.img⽂件, 这⼀步是必须的(和Armbian不⼀样, 如果不替换dtb.img, 设备启动时会⼀直⿊屏)
dtb⽂件的对应关系为
Amlogic S905 = p200/p201
Amlogic S905X = p212
Amlogic S905D = p230/231
Amlogic S905W = p281
Amlogic S912 = q200/q201
其中, R3300L要选择S905X对应的 gxl_p212_1g_slowemmc.dtb, 这个版本能开启内置的WiFi.
PS: Q5盒⼦⽤的是 gxbb_p200_1G_100M_RealtekWiFi.dtb 这个dtb.
在插⼊盒⼦启动后, 如果不能⾃动从TF卡启动, 需要安装⼀个Reboot to LibreELEC的app, Reboot to LibreELEC_v1.1_apkpure.apk, 运⾏这个后盒⼦重启, 就会从TF卡启动了, 以后只要插上TF卡, 就会⾃动从TF卡启动.
启动后, 根据提⽰配置按键.
ROM⽂件放置在系统区的 /storage/roms路径下, 可以在联⽹之后通过ssh上传
默认的安装下, EmuELEC缺少命令⾏alias, 需要⾃⼰设置:
vi /storage/.profile
# Add following line
alias ll='ls -al'
CoreELEC的安装
说明: CoreELEC在版本9之后的下⼀个⼤版本是19, 在版本19中不再⽀持S905设备, 因此R3300L能使⽤的最后⼀个版本是9.2.8
将其写⼊TF卡后, 将device_trees下的 gxl_p212_1g_slowemmc.dtb 复制到根⽬录下更名为 dtb.img 就可以了, 将TF插⼊设备后, 就可以从TF 卡启动.
这个版本使⽤的内核依然是3.14, wifi是可⽤的.
R3300L的刷机
对于未刷机的R3300L, 刷机其实是⾮常简单的
准备⼯作
micro-USB线, ⽛签之类⾮导电材质的⼩针状物, 安装好USB_Burning_Tool, 下载已经ROOT的安卓刷机包, 推荐使⽤
刷机步骤
1. 打开USB_Burning_Tool, 打开img⽂件, Erase flash 和 Erase bootloader 默认勾选. 等着
2. R3300L断开电源, 开关关上(弹出状态), 顶住AV⼝内的⼩开关, 连上USB线,
3. 等待⼏秒, 会看到USB_Burning_Tool界⾯显⽰Connect success, 然后点击Start
4. 然后就等进度条⼀直写到100%
5. 完成后点击Stop, 关闭USB_Burning_Tool
拔掉USB线, 重新连上HDMI, 加电, 系统开机就是新的安卓系统了
ROOT操作
启动后运⾏SuperSU, 按提⽰点"继续"更新⽂件, 点"常规⽅式", 如果提⽰更新⽂件, 选择"普通更新",待完成后点"重启"即可
遇到的问题
如果你的设备不是原始系统, 已经刷过机, 那么很有可能在第2步后第3步时电脑⽆反应. 这个情况我在刷过机的R3300L上出现过, 这种情况即使拆机, 短接4R19与地线, 都⽆法让电脑识别连接盒⼦. 解决办法是:
1. 如果还能启动进⼊安卓, 那么在启动进安卓后, 准备好USB线, 在运⾏Reboot To LibreELEC, 点下确定屏幕变⿊的时候, ⽴即将USB线连
上电脑, 就能认出来了. 然后关掉盒⼦电源(此时由USB供电了), 就可以进⾏线刷操作了.
2. 如果能连接TTL, 在启动运⾏安卓后, TTL终端会进⼊命令⾏, 在命令⾏运⾏ reboot update
3. 如果能连接TTL, 在启动后, 显⽰"Hit any key to stop autoboot: 0"前, 按下空格(Space)键, TTL终端会进⼊uboot命令⾏, 在命令⾏运⾏
update
EmuELEC img镜像⽂件
以下操作都是在Ubuntu18.04下进⾏
镜像⽂件结构
可以直接使⽤fdisk查看img⽂件, 内部有两个分区, ⼀个是Win fat32格式, ⼀个是Linux格式
$ fdisk EmuELEC-Amlogic.arm-3.1-Generic.img
Welcome to fdisk (util-linux 2.31.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk EmuELEC-Amlogic.arm-3.1-Generic.img: 549 MiB, 575668224 bytes, 1124352 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x5bfdd6a4
Device Boot Start End Sectors Size Id Type
EmuELEC-Amlogic.arm-3.1-Generic.img1 * 8192 1056767 1048576 512M c W95 FAT32 (LBA)
EmuELEC-Amlogic.arm-3.1-Generic.img2 1056768 1122303 65536 32M 83 Linux
Command (m for help):
挂载镜像⽂件
# 查看可⽤的loop设备
$ sudo losetup -f
/dev/loop18
# 将img挂载到loop设备
$ sudo losetup /dev/loop18 EmuELEC-Amlogic.arm-3.1-Generic.img
# 这⾥也可以⽤fdisk查看img分区信息, 可以看到地⼀个分区是从8192开始
$ sudo fdisk -lu /dev/loop18
Disk /dev/loop18: 549 MiB, 575668224 bytes, 1124352 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
安卓桌面设置Disk identifier: 0x5bfdd6a4
Device Boot Start End Sectors Size Id Type
/dev/loop18p1 * 8192 1056767 1048576 512M c W95 FAT32 (LBA)
/dev/loop18p2 1056768 1122303 65536 32M 83 Linux
# 将img卸载, 重新挂载
$ sudo losetup -d /dev/loop18
# 使⽤ 8192 * 512 = 4194304 作为offset
$ sudo losetup -o 4194304 /dev/loop18 EmuELEC-Amlogic.arm-3.1-Generic.img
# 挂载到⽂件系统, 然后就可以查看了
$ sudo mount /dev/loop18 /mnt/mnt1/
取消挂载
$ sudo umount /mnt/mnt1/
$ sudo losetup -d /dev/loop18
另: 如果是在Ubuntu下⾯, 在执⾏完 sudo losetup -o xxx /dev/loop18 xxx.img之后, 其实在⽂件浏览器中的Other Locations中, 就可以看到分区了.
DTB⽂件的修改
安装dtc命令需要的软件device-tree-compiler
sudo apt install device-tree-compiler
解码
dtc -I dtb -O dts -o meson-gxl-s905d-p230_modified.dts /boot/xxx/meson-gxl-s905d-p230.dtb
修改, vi / vim 等等直接修改⽂本⽂件
编译
dtc -I dts -O dtb -o meson-gxl-s905d-p230_modified.dtb meson-gxl-s905d-p230_modified.dts
R3300-L运⾏Armbian系统
写⼊TF卡, 可以直接插⼊盒⼦启动.
注意: 这⾥和EmuELEC不⼀样,
1. 不需要⾃⼰去复制dtb⽂件, 如果⾃⼰复制并改名为dtb.img, 反⽽会造成⽆法启动
2. 不需要⾃⼰resize TF卡的分区, armbian启动后会⾃⼰把分区扩张为全部剩余空间
⽬前能完美使⽤的是 Armbian_5.44_S9xxx_Ubuntu_bionic_3.14.29_server_ 这个镜像, 启动后⽹卡默认可⽤, WIFI需要⼿动添加
上⾯的百度盘⾥ Armbian_5.99_Aml-g12_Ubuntu_bionic_default_5.3.0_rtl8189ftv.tar 这个镜像是较⾼内核版本(5.3.0)且带WIFI的镜像
第⼀次启动,默认的账号是 root / 1234, 登录后会提⽰添加普通⽤户
如果没有WIFI,添加WIFI的步骤:
sudo modprobe wifi_dummy
# 将 wifi_dummy 加⼊到 /etc/modules 的最后⼀⾏
echo wifi_dummy >> /etc/modules
R3300-L的操作和N1不太⼀样, R3300-L没有dhd设备.
然后重启, 运⾏nmtui启动⽹络管理界⾯, 如果前⾯操作正常, 在Activate a connection⾥⾯就能看到wifi热点列表了, 直接输密码连接就可以了.
将Armbian写⼊R3300-L 的内置 eMMC 存储
运⾏ armbian-config, system -> Install / Update , 注意, 这⼀步会将盒⼦内原来的Android系统覆盖, 如果要恢复回Android系统, 要再次重复线刷的过程.
其他Armbian版本在R3300-L上的运⾏
Armbian_5.44_S9xxx_Ubuntu_bionic_3.14.29_icewm_ 直接刷⼊TF卡, 可以正常启动,
设置⽤户重启后进⼊icewm桌⾯, wifi正常(添加⽅式与命令⾏版本⼀样), 修改语⾔为en_US.UTF-8并将字体放⼊ /usr/share/fonts/truetype/custom 下后, 浏览器可以正常显⽰中⽂.
Armbian_5.44_S9xxx_Ubuntu_bionic_4.16.1_server_ ⽆法启动
Armbian_5.44_S9xxx_Ubuntu_bionic_4.18.0-rc5_server_ ⽆法启动
Armbian_5.90_Aml-s905_Ubuntu_bionic_default_5.1.0_ 直接刷⼊TF卡, 不需要修改uEnv.ini, 正常启动, 有eth0, ⽆wlan, ⽆法通过modprobe wifi_dummy 添加.
Armbian_5.97_Aml-g12_Ubuntu_bionic_default_5.3.0_ 直接刷如TF卡, 第⼀次启动⼀直⿊屏⽆响应, 然后取出TF卡挂在电脑上将uEnv.ini⾥的dtb指向gxl_.._p212.dtb, 再插回R3300-L就可以启动了, 有eth0, ⽆wlan, ⽆法modprobe wifi_dummy
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论