chunjiu 发表于 2023-7-7 01:01:39

原来 Gitlab 早就支持 arm64 了,在 S905x3 机顶盒上安装挺顺利

本帖最后由 chunjiu 于 2023-7-7 14:10 编辑

警告,小白不要轻易尝试!

警告的原因

我买的是 4+32GB 的 HK1 BOX ,分三个电商前后买了 4 个,因为要验证一个随机宕机的问题(已找到答案,是原机的元器件品质不佳)!

先买了一个 ATV 固件的,刷了 Armbian 之后,测试过后感觉性能没话说,跑 Server 毫无压力,但总是在几小时后随机宕机。

和多数的机顶盒一样,boot 的 dtb 来自其它产品的逆向工程抽取和魔改,非 Soc 官方支持,所以跑桌面总有点小问题(我这个没声音,但其它功能正常)。

所以只要不用桌面,仅仅让它跑 Server 还是挺欢快的,我的 RK3399 Pi 连续跑了应该超过两年了,一直很稳定,而且体积很小,塞哪儿都合适。

接前言的宕机事件调查:

为了找到第一台 HK1 BOX 宕机的原因,我又找了另两个电商、加上原电商各自买了一台,现在就 4 台了。

除了第一家电商只提供刷了 ATV 固件的盒子,另外两家还同时提供刷了 Android 9 固件的盒子。

到手后,有 Android 9 固件的两个盒子运行正常,连续跑了好几天没宕机,而两只 ATV 的盒子故障一样,都是随机宕机。

这样终于让我找到了原因:刷了 ATV 固件的 HK1 BOX 应该是品检筛选下来的。

由于 ATV 功能是固定的,虽然是 Android 9 的底层,却不能自由安装 APP,机内仅提供了在线播放等几个有限的应用范围,能避免触发宕机的(掩盖了)事件。

而提供 Android 9 固件的 HK1 BOX 是品检正常的机顶盒,允许用户安装自己的 APP。因为只要一装游戏,各种机能就被榨尽了,运行在极限状态,品质不佳的话立马就暴露了。

在 Armbian 和其它 Linux 论坛上,有很多老外吐槽外贸 TVBOX 和 狗-shi 一样的烂,发誓再也不会碰了,估计就是买了刷 ATV 固件的次品盒子吃了亏。

安装 Gitlab,点这儿看下载和安装说明

在准备安装 gitea 时,无意中看到有人说 gitlab 开始提供通用的 arm64 版本,而不是树莓派的专用版本,就去看了,结果是真的,于是很开心的在 HK1 BOX 上试安装了一下。

Gitlab 官方说资源需求至少 4GB RAM 和 20GB 硬盘剩余空间,HK1 BOX 的 Soc ~ S905x3 只有 4GB 的寻址空间(所以仅 3.6GB 可用),为了防止内存溢出,我在硬盘上开了一个 4GB 的交换文件。

自己装的硬盘倒是够大,用一个 128GB 的 USB 3.0 U 盘(联想 TU100)当系统盘,跑起来也是嗖嗖的,测试交换文件时,跑到了 290MB/s。

# 基于 Ubuntu 的 Armbian

curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

# 看一下仓库中的 gitlab
sudo apt search gitlab-ce

# 安装所需的指定版本
sudo apt-get install gitlab-ce=16.1.2-ce.0

我的这次安装很顺利,准备在后面几天找个空闲将 Intel NUC8 上的 Gitlab 备份文件导入看看,用起来究竟效率如何?

在 HK1 BOX 上安装 Armbian

注意不要点击官方的最新释放(它多数情况下只有源码),而是最新释放下面的之前释放版本,那里面有打包好的 img 文件。

不要使用 TF 卡来烧录系统,因为固件上的 bug,S905x3 很挑 TF 卡,只有比较老式的 TF 卡在 HK1 BOX 上才能顺利识别出来,我的一堆 HC 类高速 TF 无法使用。

在 HK1 BOX 上,两个 USB 口(2.0*1 / 3.0*1) 都能识别 U 盘,无论是移动 SSD 硬盘盒还是 U 盘都挺顺利,烧录好 img 的设备很顺利启动了 Armbian。

===
PS :
别忘记按照要求修改 dtb 配置
===

首次启动 Armbian 需要按下特殊的 “启动键”,它藏在 3.5 耳机插孔的后方,用一只牙签或小棍子捅进去按住它再上电,等几秒后松开,就能看见 HK1 BOX 商标一闪而过,接着就是 Armbian 的启动信息了。

按照 Armbian 的安装要求,填入 root 密码和创建一个基本用户后,就能愉快的玩耍啦!

由于 S905x3 基于 12nm 工艺,工作时发热量远远低于全志的 H6 和 RK3399,在室温 30℃ 时,编译 wxPython 全程没有超过 70℃(旁边立了风扇)。

注意散热片!官方的小散热片是用硅胶粘住的,不是硅脂和双面胶!是用硅胶粘死了!无法取下来!

我之前想换个大一点的散热器,但尝试拆了几次原装散热器都失败了,因为感觉会搞坏 PCB 板,最终还是放弃拆除它的想法,还是用散热硅胶垫叠加一个大散热器算了。

qwe2231695 发表于 2023-7-7 02:02:33

gitlab 很吃内存要PC级别比较稳定,还能设置备份和CI/CD,arm小电脑适合用gitea

chunjiu 发表于 2023-7-7 07:15:45

本帖最后由 chunjiu 于 2023-7-7 08:08 编辑

qwe2231695 发表于 2023-7-7 02:02
gitlab 很吃内存要PC级别比较稳定,还能设置备份和CI/CD,arm小电脑适合用gitea
(引用自2楼)

是的,本来就是想装 gitea 的,碰巧发现 gitlab 也支持 arm64 了,那就顺便测试一下吧,

手上有个 RK3566的盒子也要测试一下 gitlab 的效果,它是 8GB 的 RAM,做流服务器半年了,很稳定。

PS 补充一下:

在 S905x3 的 Armbian 上,跑 Monodevelop 算是比较顺畅的,做 APP 方便了。

除了缺少声音暂时不好解决,其实添加一个 USB 声卡就可以了,但感觉有点别扭。

polarbear 发表于 2023-7-7 09:14:01

HK1 BOX这种消费品的盒子,不太可能有筛选环节(跑内存压力测试?, 消费品产线上测试时间超过5分钟的测试都是不可接受的), 然后刷其他固件出货的事情;

chunjiu 发表于 2023-7-7 09:35:42

本帖最后由 chunjiu 于 2023-7-7 10:56 编辑

polarbear 发表于 2023-7-7 09:14
HK1 BOX这种消费品的盒子,不太可能有筛选环节(跑内存压力测试?, 消费品产线上测试时间超过5分钟的测 ...
(引用自4楼)

因为两个官方刷 ATV 的盒子在跑 Armbian 时都会随机宕机,

而两个刷 Android 9 的就不会,所以才这样下结论的。

难道是生产上批次性的巧合?


当前面判断是元器件质量不佳问题后,解决方案是将 Soc 主频限制在 1.8GHz 之下,

目前跑了超过 36 小时没宕机。


而且运行 DuckStation、wxPython,QT 6.5.1, Monodevelop 等,

这一大圈绕下来也暂时还没发现问题,除了速度稍微慢一点。


PS 补充一下 :

有问题的刷了 ATV 盒子,将 Armbian 刷到板载 eMMC 上也会宕机,甚至无法启动,

但是在 USB 上,使用 U 盘跑 Armbian 就没问题了。

而前面的两台官方刷 Android 系统的,将 Armbian 刷到板载 eMMC 上没遇到啥问题,

连续跑了几天没出现过宕机或出错的现象。

PS 2:

生产商是不是简单粗暴的用最大压力测试来筛选的?

最大压力下启动不了或宕机就刷成 ATV,否则就刷 Android ...

wxws 发表于 2023-7-7 18:25:08

问过深圳做盒子的商家,最靠谱的盒子反而是电信移动等集采的,用的全是原装全新ic .而其他盒子大概率是拆机 内存,flash .
一样的主板一样的盒子,就这两货拆开比较下好了。

所以楼主可以试试 这种电信移动电视盒重刷固件。

dz20062008 发表于 2023-7-7 19:51:01

本帖最后由 dz20062008 于 2023-7-7 20:47 编辑

我的cm311 1a s905l3a atv看电视遇到定屏,观察了一下规律,十有八九是soc高温后不稳定,推荐不要超过70度。rk3399虽然温度高很多80度轻松应对,绝不会出现不稳定的问题。soc真是一分钱一分货,rk能用在广告机就说明稳定性好,价格高也是有道理的,这是晶辰与全志所需要加强的
Ps
Hk1 box拆机图




底部散热孔空气无法流通,内部密封散热片小。cm311 1a 直接导热到底部大配重铁片都有点压不住发热,在顶部把上壳用铝箔纸贴一下然后soc pcb背部导热到过去才勉强压制在67度以下,依然有些吃力。
Hk1 box 娱乐兔跑分4600


S905l3a 2+64跑分 4800原配置2+16 4600


楼主试试果板加风扇吹看看稳定性如何,大概率是高温造成不稳定。拆机ddr与emmc只要是好的也不是影响稳定的主要原因,主要还是soc本身体质影响








qwe2231695 发表于 2023-7-8 00:04:45

3399是28nm,特别稳定,就是速度慢了

chunjiu 发表于 2023-7-8 00:17:36

本帖最后由 chunjiu 于 2023-7-8 02:27 编辑

wxws 发表于 2023-7-7 18:25
问过深圳做盒子的商家,最靠谱的盒子反而是电信移动等集采的,用的全是原装全新ic .而其他盒子大概率是拆机 ...
(引用自6楼)

电信盒子的配置太低,拿来玩玩可以,想做 Server 就捉襟见肘的太憋屈自己了。

chunjiu 发表于 2023-7-8 00:23:35

本帖最后由 chunjiu 于 2023-7-8 02:28 编辑

dz20062008 发表于 2023-7-7 19:51
我的cm311 1a s905l3a atv看电视遇到定屏,观察了一下规律,十有八九是soc高温后不稳定,推荐不要超过70度 ...
(引用自7楼)

测试的时候外壳已经全部拆开了,它的散热片太小,但被粘死了无法换大的。因此我在散热片上放了一个风扇强吹,并监控温度的,所以散热上没啥问题了。

PS:平常使用时一直没超过 60℃,做 Server 时,Soc 大多数处于闲置状态,温度在 42℃ 左右,只有在连续几小时编译软件包才会逼近 70℃。

还是类似前面坛友说的问题,可能因使用了大量的拆机件(DDR & eMMC),导致了设备不稳定,在我强行降频后使用起来就正常多了。

刚才看了一下时间,有毛病的一台设备在降频后连续运转超过两天,目前还正常的跑,没宕机,说明我分析的原因和解决方案找对方向了。

chunjiu 发表于 2023-7-8 00:25:17

qwe2231695 发表于 2023-7-8 00:04
3399是28nm,特别稳定,就是速度慢了
(引用自8楼)

是的,我的那一台 RK3399 Pi,除了固件更新时重启,一直在默默的工作,现在超过两年了,稳如磐石。

chunjiu 发表于 2023-7-14 12:02:08

嘈,宕机的真实原因找到了!{:sweat:}四台 S905x3 全部开始正常工作!

给设备刷上最古老的 Android 固件就行了!不是元件品质的问题!

2019 年以后的固件全部有问题!

原因分析:

AML 的 S905x3 后期 Android 固件应该是在启动时打开了 SOC 某些特定的功能,

而 Armbian 的内核尚未支持它们(可能是超频或特效),导致随机的宕机。

dz20062008 发表于 2023-7-14 14:08:42

chunjiu 发表于 2023-7-14 12:02
嘈,宕机的真实原因找到了!    四台 S905x3 全部开始正常工作!

给设备刷上最古老的 Android 固 ...
(引用自12楼)

这么隐藏的bug都能找到,厉害了

我是一个大白菜 发表于 2023-7-14 20:20:52

chunjiu 发表于 2023-7-14 12:02
嘈,宕机的真实原因找到了!    四台 S905x3 全部开始正常工作!

给设备刷上最古老的 Android 固 ...
(引用自12楼)

用安卓,是不是那些linux服务就不能用了

chunjiu 发表于 2023-7-14 21:21:55

本帖最后由 chunjiu 于 2023-7-14 21:29 编辑

我是一个大白菜 发表于 2023-7-14 20:20
用安卓,是不是那些linux服务就不能用了
(引用自14楼)

是呀,安卓基本上就只能玩玩了,大多数服务搞不起来。
页: [1]
查看完整版本: 原来 Gitlab 早就支持 arm64 了,在 S905x3 机顶盒上安装挺顺利