阅读视图

尝试把树莓派1和小米盒子1改造成游戏机,但是失败了

本文大概只是想讲讲我手中这块树莓派1B的使用经历。小米盒子1只是附带。


我玩树莓派那些事

我2013年的时候买了一块树莓派1B的板子。那时候我只有一台2007年买的奔腾T2130的笔记本,跑虚拟机比较吃力,而且由于是定制显卡所以Linux装上后显卡驱动不起来,这些问题导致没法在家(北京的出租房)用Linux。想要用Linux就只能在公司用公司的服务器。而且由于公司的系统是一个高度魔改的CentOS,公司改了相当大量的内核代码并且安装了大量跨版本的依赖包,只能用来学习Linux基础,嘛毕竟是2004年成立的公司,产品严重依赖Linux内核功能所以就只能一直往里面Merge最新功能,直到后来实在是塞不进去了,全部推倒了从新发布的CentOS7重新搞。

当时树莓派也不贵,就买了一块。说实话没怎么用。因为我没买任何外设,所以所有功能都是纯跑在CPU上的,32位的arm 700Mhz性能基本上只能验证功能上的可行性,一点性能都没有。

screenshot_on_b85m_by_flameshot_at_2025-10-17_19-17-39

IMG_3336

IMG_3337

IMG_3338

IMG_3339

IMG_3342

IMG_3344

IMG_3345

IMG_3346

IMG_3347

IMG_3348

IMG_3349

IMG_3350

(当然,想学 Linux 这个是借口)

当时手中还有个大学时买的罗技C270摄像头(15年了,这玩意到现在还没停产),能拍720p。刚巧当时出租房和公司都用的电信通/宽带通的网络,开DDNS可以用(不知真假的)公网IP互联。在公司摸鱼的时候就用SSH连上家里的树莓派,然后再开小飞机做代理就能完全访问家里的局域网(公司是有上网审计的,但公司主营业务之一也是上网审计,只要不干违法的事情且不影响公司其他同事上网就没问题)

IMG_4279

连上后瞎搞mjpg-streamer,当时调通后拿到的第一张照片刚好是放在窗台上对着窗外拍到的一位路过的美女。(然而当时的照片已经找不到了)

对应 mjpg-streamer 的内容可以参考十多年前的这篇老文章《使用树莓派制作近距离遥控摄像机(无线网卡+摄像头,手机或平板等移动终端控制)》,不过放在现在已经没什么参考意义了。

后来还把树莓派和移动电源和摄像头还有无线网卡组合到一起,把摄像头绑在书包后面,骑自行车上班时拍了一路。

【[远古画质] 北京,2013年某月】 https://www.bilibili.com/video/BV1U9W7zkEm4/?share_source=copy_web&vd_source=bc6d7e4cd2c1f2bba38d19773d2bc1fc

(请忽视评论区那些自嗨的精神病)

当年我还对视频编码什么的一无所知,就只留下了这么一个编码格式是H.262的远古画质的视频。

当时想调通这一套可是费劲。没有接入点的情况下,想把控制终端和树莓派连起来就很麻烦。而且树莓派的电路设计一直超级缺心眼,它的供电设计,一直没有优先保障主板,且USB接口一直有反相供电的问题。插拔USB设备造成的电压波动基本上100%会导致树莓派重启。输入电流也被压在500mA(201x年USB供电基本都是1A了),这就导致像无线网卡或摄像头这些用电大户(?)在工作的时候可能导致树莓派自己供电不足而重启。

为此专门买了一个同时有外置电源和反相供电屏蔽的USB Hub。这玩意可是非常稀有了。

screenshot_on_b85m_by_flameshot_at_2025-10-17_19-38-29

IMG_6866

用这玩意也就意味着没法插着移动电源用。

IMG_20140503_001825

2013年去广西出差的时候,带的公司的笔记本,散热风扇坏掉了。干活办公开SSH和Word/Excel没事,但是玩游戏或者看视频几分钟就直接蓝屏重启。恰巧客户那边网络炸了,所以一个星期我都只能在酒店发呆。当时就带着树莓派,装了个 OpenELEC 系统,用酒店的电视把《刀剑神域1》全看完了。

DSC_0195

DSC_0202

(之所以是 OpenELEC 是因为,Raspbian系统需要4GB SD卡,而3DS原装的SD卡是2GB的,落灰中。而 OpenELEC 只需要 2GB 的空间就可以安装。当然另一个理由是 Raspbian 图形界面实在太卡)

当时还买过一张跳舞毯。厂家给的光盘当然只包含一个 Windows 32位的游戏端,实际上就是个 Stepmania 汉化版。Stepmania本身是开源的,但是当时官方也只提供 64位 的 Linux 客户端。我当时对交叉编译一无所知,完全搞不懂,就只好把源码都复制到树莓派上然后直接在上面编译,结果编译了一个通宵,第二天早上屏幕上还在滚屏编译,实在是等不起,这性能可能就算跑起来了也够呛能运行(更别提还要跑在图形界面上),就放弃了。(后来在x86的Linux笔记本上编译,没报错直接成功编译并且成功运行,所以说代码里并没有int64这种必须用64位CPU才能编译运行的代码)

screenshot_on_b85m_by_flameshot_at_2025-10-18_01-05-57

再后来配套的亚克力板磕坏了,想要再买发现买不到了,网上只有B+外形的外壳了(后续的树莓派外壳基本也都是B+的)。我最后就只能用个饼干盒子套着用。就开始落灰。

IMG_20150512_152030_hongmi1

IMG_20150512_152103_hongmi1

IMG_20150725_110321_hongmi1

再再后来换了工作,我拿着树莓派当作一个远程控制设备插在公司服务器上当远程控制,即我远程登录到树莓派上模拟用户操作,这样我就不用蹲在服务器旁边干活了。结果老总为了要用墙壁上的电源插座给手机充电,直接把树莓派拔下来扔杂物堆里了。

(除非你已经为领导创造过巨大的收益,否则任何领导没见识过的努力都是狗屎)

再再再后来又换公司,公司搞高度网络劫持,然而用的是一个及其白痴的上网审计,导致大部分HTTP网站都访问不了,那时候HTTPS还没普及,导致想在网上搜资料就只能手机开热点,搜完了再切回公司网络。于是又翻出来插在出租房的联通宽带上,当时还有公网IP,在浏览器里写好规则,在公司翻到家里上网。尤其是那个白痴上网审计只会疯狂的主动探测端口的HTTP协议,小飞机的日志里全是主动探测告警,我还得专门安装个旧版的不会自动封禁主动探测的小飞机。

后来还买过扩展版和传感器模块(温度气压高度光线,但是没有湿度)。没学的时候觉得是魔法,树莓派社区吹得及其玄幻,学会后发现就是从对应API读数据,而且因为都是用Python写的,代码质量还稀烂,所以被社区吹得越来越玄乎。当时我还没转型做开发,没搞明白PHP怎么去抠系统级的API(事实上读不了,PHP-FPM不是干这个的,PHP-CLI又不是跑在Web上的,想以正经方式拿系统信息还是得走系统指令,那就和调用Python没区别了),且想在树莓派1上跑HTTP服务非常吃力,就更别提还没火起来的NodeJS了。实际上这屁事只用Bash应该就能做,只要能处理好从API中提取出来的二进制数据然后转换成人类可读的数据,然后再排版就好了。当然,Bash处理二进制数据和排版都超级麻烦,理所当然社区没人做。去他妈的国内开源社区

IMG_20151019_225300_MiPad

IMG_20151025_002219_MiPad

IMG_20151223_221943

IMG_20171030_192817

后来还买过 315M433M无线模块,想用树莓派做物联网。但是最后因为精力有限,买回来之后一直在落灰,一点都没动过。(后来物联网的发展趋势也是一坨狗屎,一帮傻逼搞紫蜂全死了,最后变成WiFi是亲爹,断网就报废,电饭锅都物联网人工智能)

screenshot_on_b85m_by_flameshot_at_2025-10-18_01-05-26

IMG_20151103_233125

再再再后来我也不在那个公司工作了,北京联通也不再分配公网IP了,手里这个树莓派又开始落灰。我也想过再利用,尝试把这树莓派做成同步网盘(大容量SD卡和U盘已经很便宜了),但是这设备的IO性能是在不够,虽然可以插外置硬盘,但兼容一代的硬盘盒也不存在,更别提之前说过跑Apache和PHP都很吃力了。

最后这树莓派1就正式落灰了。


年轻的时候憋坏了

我这个人,上学的时候憋坏了。早年间上大学从哈尔滨到西安,火车单程42个小时,后来提速后36个小时,但晚点又是日常。当年最多只能用个不到2寸的诺基亚3110c玩马里奥医生,因为屏幕小且九宫格键盘难操作且模拟器限制,只能玩这一个游戏,其他游戏都玩不了。(我也纳闷这大学4年我为什么不买一个俄罗斯方块机呢)

毕业工作后我就买了台3DS,买了两块移动电源。

后来买了台式机之后,老笔记本也开始落灰,我就装了个RetroArch又当作游戏机,在有大电视的合租房客厅里放了一年。结果是没玩,HDMI线超过2米之后要不就是价格登月,要不就是直接花屏。

IMG_20160124_160039_SHOT2SHOT1

而作为控制器的手柄,USB连接线同样没法超过两米;蓝牙又莫名其妙的高延迟。总之怎么样姿势都不舒服。

再后来有了新笔记本(就是那个后来自燃了的戴尔灵越7380),PS2模拟器的性能甚至比有GTX1080独显的台式机还好,经典掉帧场景在这个核显笔记本上竟可以全程60帧。虽然有着8代i7,但跑分和x264这笔记本(都因为散热问题)输给4代i7的,却在这个特别的场景下略微获胜(但是屁用没有,过场动画掉几帧根本不影响游戏性)(更别提Win10会给更低端的模拟器造成明显抽搐的问题,而且3DS模拟器在4代U上能稳定跑,在这破本上启动都费劲)。但最终结果也是一样的,一根又粗又硬的HDMI线扯着笔记本,笔记本还要再插着电源适配器,然后一根USB线连在手柄上,怎么样都不舒服。再再后来这破笔记本自燃了,这场景也自然没有了。

(所以我还是觉得,同样都是走2.4GHz频段,在无线键鼠和蓝牙手柄都出问题的情况下,游戏机无线手柄能做到延迟无感知是一种魔法。当然我也没钱去专门买一个无线手柄适配器,毕竟不适应需求,PC游戏还是坐在电脑显示器前玩,不需要无线)


煎熬后想把树莓派1改造成游戏机

前几年过春节都是在自己家熬夜的,用自己的电脑打一宿的TF2或者100oj。

去年在外公家过夜,但是下午的时候回家了一趟,然后晚上徒步走了3公里到街机厅,玩跳舞机一直玩到人家除夕闭店。

今年过春节时,则是在一个我不怎么熟的大人的朋友家过的。

纯煎熬。

能玩的东西就只有手机和3DS。

倒不是说3DS游戏性不行,而是我在嘈杂且陌生且随时会被打断的环境下,玩不下去那种期望有沉浸体验的游戏。

结果就是一个除夕,歪坐在一个陌生的沙发上,把魔法气泡手游的无尽之塔打到实在打不过,然后又在3DS上打了半宿的PPT(魔法气泡俄罗斯方块),最后结果是坐着落枕了。

邻居家当然是有电脑和电视的,只不过电脑是人家工作用的,别人的工作设备我基本不想碰;电视全是在播放春晚,根本看不得。

那一晚真的是纯煎熬。好在第二天大人们晚上全跑去歌厅唱歌了,我自己回了自己家,才算解脱。

再后来整理物品的时候又翻到箱子里落灰很多年的树莓派1和小米盒子1(还有2台小霸王),遂有了把这俩玩意改造成游戏机的想法。

两台小霸王机当然也是能用的,我还有一张400合1游戏不重复的游戏卡,基本上涵盖所有热门FC游戏。但这些年来我一直是在NTSC模式下以60fps的帧率玩FC的,如今再回到PAL模式的50fps,就显得特别的不适应。

为什么自己年轻的时候没感受到这么大的差异呢,我高中期间是同时玩模拟器和小霸王的啊。


把树莓派1改造成游戏机,但是失败了

思路有多个:

  • 安装个有图形界面的操作系统(Raspbian),然后在里面跑独立模拟器或者RetroArch。
  • 安装 OpenELEC ,然后在里面的 XBMC中 安装模拟器插件
  • 安装 Lakka 或 RetroPie 这种专门(只)跑 RetroArch 的操作系统

首先抛弃方法2。这个方法本来是我道听途说的,真实性不高。OpenELEC 已经停止维护太久了,XBMC也早就改名 Kodi。如今肯定是连不上那古董的插件服务器,就不费那劲了。

事实上现在想在网上搜树莓派1的资料已经很少了,就更别提树莓派基金会搞了一堆幺蛾子之后名声都臭掉了,现在还做树莓派资料的基本都是 外国营销号,没啥正经玩意,搜什么关键字都是一群人复制粘贴的垃圾(有一种百度比谷歌遥遥垃圾的领先感)。本身就追求开放的老粉肯定不会在这一根歪脖树上吊死,直接去 Linux on Arm 这种大领域玩去了。

用了几个AI工具搜了一下(百度、豆包、必应、秘塔,排名不分先后),基本上给出的答案都类似:

screenshot_on_b85m_by_flameshot_at_2025-10-17_21-58-02

screenshot_on_b85m_by_flameshot_at_2025-10-17_22-35-22

看起来还行?

Raspbian 方案

首先刷了 Raspbian 试了下。甭说模拟器了,只要进图形界面,分分钟整个系统卡到无响应。我专门是了下最新版的 Raspbian 和 自己电脑里保存的 2013 年的旧版 Raspbian ,结果是一样的。

这个配置跑一个图形界面操作系统实在是太勉强了,再在上面跑其他东西,还是算了。

RetroPie 和 Lakka

这俩方案我已经记不清前后顺序了。记忆里2013年的时候用过其中一个(另一个当时肯定没诞生),只记得当时那个很漂亮的仿PS3/PSP的系统界面(因为邻居家有台PS3)。

现在在装回来,只感觉到莫名其妙的超级卡顿。

RetroPie 方案

其中 RetroPie 又叫 EmulationStation ,看着很像是对 RetroArch 的重度套皮。不仅如此,所有对非模拟器的设置,全部都会先退出这个图形界面,然后调用Raspbian提供命令行风格的配置界面,配置完成后再重新启动 EmulationStation。这一套白痴操作下来,整个系统直接就炸了。

DSC_8108

屎山设计。

Lakka 方案

Lakka 则简介多了,看介绍,Lakka应该是直接把 OpenELEC 减掉大部分功能,只保留图形功能支持,然后在里面启动 RetroArch。

和 RetroPie 不同。RetroPie 是做加法,屎山;Lakka 是做减法,仅保留需要的内容。

缺点就是需要基于RetroArch之外的第三方功能基本没戏(但是把Samba这种功能塞进RetroArch是有可能的)。

Lakka跑起来后,首先是着跑 FC/NES,结果是卡顿得不行。

除了QuickNES核心之外,其他模拟器核心都是卡到爆炸,60fps最多只能跑到一半,30帧。

DSC_8111

这跟AI给出的答案完全对不上。还 SFC/SNES呢,连 FC/NES 都不行

试着给树莓派超频,结果是只要动树莓派的频率设置,就完全不启动。超频失败

最后勉强用 QuickNES 跑起来松鼠大战1,能将就着维持到60fps。

把耳机接上显示器/树莓派之后,又发现根本没声音,看了一眼,发现音频输出是null。手动把音频输出更改为 HDMI 或者 3.5mm 之后,游戏瞬间又卡得没法玩了。

RetroArch 的小插曲

当年在树莓派上跑RetroArch,也是我第一次RetroArch这个应用的渠道。

后来也想过在旧笔记本上安装这个操作系统,但是旧笔记本的性能可以跑Ubuntu这种功能正规操作系统,性能都绰绰有余,没必要专门安装专用操作系统,直接再在Ubuntu上安装RetroArch就好了,但是玩瘾没那么大,想玩直接上台式机,旧笔记本大部分时间在落灰。

再后来把整体操作系统环境从Win7迁移到LinuxMint时,在笔记本上使用过一阵RetroArch,结论是: RetroArch安装在专门用于游戏的机器上,或者给无经验者作为综合模拟器使用,用户体验还行;但是对于有经验的用户,在PC上使用窗口环境的模拟器的用户体验更棒。

于是之后再也没用过 RetroArch 玩游戏。

OpenELEC

本来没指望再用 OpenELEC 的,但是心理很别扭,总觉得以前不是这样的。

把 OpenELEC 重刷进去,发觉连操作菜单都卡顿得不得了。每个选择操作都能卡顿1秒以上。

啥情况?CPU缩肛了?

按理说菜单这些内容都是加载到内存的,就算SD卡因为放置太久有IO性能问题了,也不至于影响到菜单操作。

选了个 H.264的视频,播放起来倒是很顺畅,但我又用不着这玩意看视频。(尤其是现在大部分视频都是Webrip或Web-DL的,都需要手动选字幕,旧版的OpenELEC字幕能力太弱了,更别说操作还这么卡顿)

DSC_8112

DSC_8113

我电脑里当然是存着2013年的 旧版 OpenELEC 的。

刷了当初的旧版,依旧的性能问题。

看来树莓派是指望不上了。

想当年家里亲戚有过一台从单位搬回家的1988年产的 COMPAQ 486,只有486MHz主频和16MB内存(MMX指令集都没有),在DOS下用Nesticle模拟器也是能玩大部分NES游戏的(只要Mapper支持就行)(在Win95下开声音会掉帧)。

(暂时不想为了验证是否是SD卡的问题再买新的SD卡。手里的旧卡都一堆了,线上在用的只剩下3DS的卡和一个相机的卡,也都是偶尔开机)

(事实上固态存储长期不通电不擦除不读写导致性能下降的问题目前很严重且无解。PC端的冷数据还是用机械硬盘或者光盘存储更安全,SSD只适合做系统盘。但是这个情况在移动设备和移动存储上怎么做都绕不开)


小米盒子1

与树莓派1装在一个袋子里的还有个小米盒子1。

IMG_6867

IMG_6871

IMG_6876

话说小米这破品牌,当年我竟然还因为他曾把一个停产的产品在网站上多放了几个月页面,就夸了一下,当时绝对是脑子没有被门挤出屎。

(都是年轻时犯下的错)

小米盒子1这玩意,配置可比树莓派高太多了。

screenshot_on_b85m_by_flameshot_at_2025-10-17_22-04-44

(纸面参数甚至比我的旧笔记本还高)(但是别忘了这破玩意是精简指令集)

于是也想拿出来试一试。

思路很简单:小米盒子1内置的是魔改的安卓4.4系统,所以只要:

  • 安装安卓版本的 RetroArch 或其他模拟器
  • 使用任何可行办法将游戏ROM复制到小米盒子中,或使用USB OTG访问U盘
  • 使用内置蓝牙模块与PS4手柄DS4配对连接,或使用 USB OTG 有线连接PS4的DS4手柄

首先用遥控器把小米盒子1重置到出厂状态,然后连网,希望通过网络把文件复制到小米盒子中。

结果,只要一连网,小米盒子1就炸了。整个操作界面强制更新到了一个作坊风格的净是推广内容的界面,所有功能入口都没有了。用文件管理器,所有APK文件均被提示禁止安装。

DSC_8106

没办法只能用遥控器重新重置。

这回用USB OTG插U盘把好用的文件管理器和RetorArch安装包复制到小米盒子上,然后安装。

然后尝试连网,期望通过自己安装的文件管理器把游戏ROM复制到小米盒子上。

(之所以一直要连网,是因为 RetroArch 默认不带任何模拟器核心,需要连网才能下载对应的模拟器核心才能运行)

结果连网之后,不仅界面炸回山寨风格,而且隐藏了所有应用的入口,刚才安装的文件管理器和RetroArch在界面看不到了,完全被隐藏。

没办法只能再次用遥控器重新重置。

这回决定完全不连网,RetroArch的问题先搁置,大不了等会在路由器把抓包把小米盒子的所有网络请求全封掉,只放行 RetroArch 的请求。或者干脆不用 RetorArch,使用其他独立模拟器。

然后尝试用小米盒子的蓝牙配对手柄或者键盘,结果是:小米盒子除非小米自己品牌的外设之外,其余任何设备都不识别。

最后直接把手柄插在USB OTG上,依旧不识别。

封闭的垃圾!!!


开放的东西越来越封闭

本身表面上树莓派这玩意是个很新奇很开放的东西,但是实际上树莓派基金会是由博通建立的,芯片也是一直用的博通最便宜的垃圾。本身博通这公司有多烂就不用解释了。

只是没想到 卡片电脑 这个概念能在那个时间段突然爆发。之后树莓派除了换了几代SoC之外基本没任何改良,但由于名声在外,其他同类型产品都没能撼动这个破烂的地位。

然而树莓派5登场后,卡片电脑这个概念终于或许是大抵确实是好像死了。

天下苦 Intel x86 久已,但 arm 却不是来拯救大家的。

很可惜资本主义下,开放指令集根本没法发展。

没钱寸步难行。

而像小米之流的更是打着开放的名义把用户当牲口,成功培养出了很大一批的“有问题就刷机”但实际上只会在特定网站上下载自己都不知道里面是啥玩意的东西往手机里装的年轻韭菜。自由即吃饲料,自由即当牲口。

vlcsnap-2025-10-18-01h22m50s403

vlcsnap-2025-10-18-01h25m28s409

看手里一堆一堆的塑料电子垃圾,最后的结局都是换个5块钱的不锈钢铁盆。

“我们”是商品。

The post 尝试把树莓派1和小米盒子1改造成游戏机,但是失败了 first appeared on 石樱灯笼博客.
  •