据外媒报道,去年在Kickstarter众筹了近30万美元制造了一台复古游戏机,并于去年夏天开始陆续向支持者发货。收到货物的作者进行了开箱和测评。

ClockworkPi Gameshell是一款便携式复古游戏机,硬件设计方面使用运行Linux的Allwinner R16处理器,以及兼容Arduino的Atmel AVR MCU。该机器是开源的,带有PDF原理图,并在Github上提供固件源代码。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(1)

ClockworkPi Gameshell拆箱

这款机器的包装非常大,里面包含“GameShell - 重新定义便携式游戏机”和一节1200毫安的电池。外包装的列表罗列了整个游戏机的规格:“四核Cortex A7处理器、WiFi和蓝牙连接、1GB RAM、带操作系统的16GB micro SD存储,微型HDMI输出。”

arduino源码固件(小孩儿玩的东西都要嵌入式了)(2)

打开UC浏览器 查看更多精彩图片

拆开包装,映入眼帘的是整洁的套装,如同一个收拾干净有序的行李箱。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(3)

打开UC浏览器 查看更多精彩图片

拆开摊在桌子上,包括两个保护外壳的塑料部件、五个带有“高度可破解的开源设备”标识的黑色盒子、一张贴纸和一个装配指南。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(4)

是时候打开所有黑匣子了!原来拆开里面是这种画风,好像有点游戏机的感觉了。

第一个盒子(GS_PRT2)里面是按钮相关的部件:

arduino源码固件(小孩儿玩的东西都要嵌入式了)(5)

第二个盒子(GS_FCWT)里面装的是白色的塑料外壳,这就是我们的机身顶盖:

arduino源码固件(小孩儿玩的东西都要嵌入式了)(6)

第三个盒子(GS_RCII)里面则是游戏机标配的后盖,以及可以访问Arduino GPIO的制造商后壳和另外五个称为LightKey部件的按钮。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(7)

第四个盒子(GS_PRT1)包括封装电路板、电缆、两个扬声器、1,200mAh的电池和预装Linux的16GB micro SD卡。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(8)

第五个盒子(GS_PCBA)正如其名是我们的主角——封装功能主板,采用运行Linux的ClockworkPi Allwinner R16板、Arduino兼容板和显示模块。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(9)

仔细观察这块ClockworkPi(CPI)1.3板(下图),可以看到这款板子的全貌:Allwinner R16-J四核Cortex A7处理器、三星K4B8G1646D-MYK0 1GB DDR3 RAM芯片、Ampak AP6212 2.4GHz WiFi 4和蓝牙4.1无线模块、AXP223电源管理IC和ITE IT66121FN HDMI 1.4发射器。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(10)

电路板背面包括micro SD卡插槽,micro HDMI端口,micro USB端口,3.5mm音频插孔,各种按钮,显示器连接器,电池,Arduino板/键盘等。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(11)

Arduino板(下图)则基于Microchip Atmel ATMEGA168PA 8位AVR MCU,并配有微型USB端口,以及连接5“LightKeys”和其他I / O的连接器。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(12)

Arduino板的背面采用可编程keyboard,包括触摸板。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(13)

把它组装起来

看完有什么部件,我们应该理解这个游戏机到底该大概该怎么拼了,来吧,拿出说明书来进行最有趣的环节。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(14)

由于提供的指南非常详细,所以装配也异常简单。跟着编号走就没错了,建议使用专用工具,但本人则是裸手完成整个装配,如果你不想破坏塑料部件,还是要小心一点。强烈建议使用工具,最后成品会更干净完美一点。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(15)

好的,接下来第二个模块是组装是主板,和上面是同样的道理,小心操作。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(16)

按钮部分虽然有好多部件,但是非常容易组装。现在还没装完时候如果你转动键盘模块,D-Pad将脱落,但这是正常的,一旦安装完就不会出现问题了。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(17)

除了将电路板放置在正确的位置之外,现在还不是考验电池模块的时候,因为这个阶段不需要电缆。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(18)

GameShell安装默认最后一步安装两个扬声器,开始吧。当然安装模块时候还是要取下保护盖,确保扬声器连接接触扬声器板上的焊盘。 准备好了五个模块,开始使用布线。将显示器和Arduino键盘连接到主板,然后将扬声器和电池模块连接上,把所有东西都放在后壳中,另外再安装四个柔性塑料钻头,放上顶盖,大功告成。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(19)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(20)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(21)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(22)

把L1和L2的塑料盖扣紧,让我们自恋一下,欣赏一下成品吧。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(23)

激动人心的时刻,按开关开机:

arduino源码固件(小孩儿玩的东西都要嵌入式了)(24)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(25)

不过我们还是有一些可以扩充的部分,这些是替代和可选的LightKey部件和制造商后壳,增加了5个用户键,还有乐高联动的后壳,以及连接到Arduino板的跳线的开口。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(26)

完整的构建,包括拍照的时间,花了大约一个小时。这个过程非常有趣,看着童年记忆自己拼出来也非常有成就感。从理论上讲,它也应该是一个很好的教育平台,孩子们可以创建自己的游戏,还能了解Linux和Arduino。

趁热,盘它!

arduino源码固件(小孩儿玩的东西都要嵌入式了)(27)

按下电源启动后,几秒钟后我们进入主菜单,其中包含几个图标,具体是设置、MAME、MGBA、NES和PCxs游戏模拟器,运行模拟器装在相应ROM/BIOS就可以运行游戏了。当然,也有着很有趣的独立游戏,诸如太空飞船设计、NyanCat。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(28)

进入右侧的独立游戏菜单,里面有著名的RetroArch模拟器,可以轻松扩展核心。另外两个图标为CaveStroy(洞穴大冒险)、FreeDM(一款射击游戏)。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(29)

一些功能如下。PICO-8进入后发现并不存在,需要付15美元添加。另外。还内置音乐播放器。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(30)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(31)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(32)

设定菜单就非常常见普通了,包括飞行模式,电源选项,WiFi,蓝牙,音量,背光亮度,存储,时区,语言,通知,更新,关于,关闭电源,按钮布局,GPU驱动程序切换,网络网关切换,使用WiFi或USB以太网。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(33)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(34)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(35)

接下来,连接到WiFi网络。不过遗憾的是,这款设备仅适用于2.4 GHz连接,因为硬件不支持双频段/ 5 GHz WiFi。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(36)

简单的升级一下固件,到最新的稳定1.24版。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(37)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(38)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(39)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(40)

我们现在完成了最基本的配置了,让我们回到最初的云图标上。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(41)

它将显示用户名和密码,IP地址,ssh / scp命令,用于游戏和音乐共享的Windows网络链接,Airplay名称和USB以太网IP地址。我可以通过SSH轻松连接到游戏机:

ssh cpi@192.168.1.116Linux clockworkpi 4.14.2-clockworkpi-cpi3-g638f2a7 #1 SMP Mon Dec 10 07:46:56 UTC 2018 armv7l ___/\/\/\/\/\__/\/\/\/\/\____/\/\/\/\__/\/\__________/\/\____/\/\____/\/\____/\/\__________/\/\/\/\/\______/\/\____/\/\__________/\/\____________/\/\______/\/\/\/\/\__/\/\__________/\/\/\/\_______________________________________Welcome to clockworkPi For more information please visit:https://forum.clockworkpi.com HAPPY HACKING Last login: Sat Feb 23 16:26:10 2019cpi@clockworkpi:~$ uname -aLinux clockworkpi 4.14.2-clockworkpi-cpi3-g638f2a7 #1 SMP Mon Dec 10 07:46:56 UTC 2018 armv7l GNU/Linuxcat /etc/issueDebian GNU/Linux 9 \n \lcpi@clockworkpi:~$ df -hFilesystem Size Used Avail Use% Mounted on/dev/root 15G 3.1G 11G 23% /devtmpfs 471M 0 471M 0% /devtmpfs 503M 0 503M 0% /dev/shmtmpfs 503M 9.1M 494M 2% /runtmpfs 5.0M 4.0K 5.0M 1% /run/locktmpfs 503M 0 503M 0% /sys/fs/cgrouptmpfs 101M 0 101M 0% /run/user/1000cpi@clockworkpi:~$ free -mhtotal used free shared buff/cache availableMem: 1.0G 156M 661M 9.2M 188M 819MSwap: 0B 0B 0Bcpi@clockworkpi:~$ cat /proc/cpuinfo processor : 0model name : ARMv7 Processor rev 5 (v7l)BogoMIPS : 48.00Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm CPU implementer : 0x41CPU architecture: 7CPU variant : 0x0CPU part : 0xc07CPU revision : 5 processor : 1model name : ARMv7 Processor rev 5 (v7l)BogoMIPS : 48.00Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm CPU implementer : 0x41CPU architecture: 7CPU variant : 0x0CPU part : 0xc07CPU revision : 5 processor : 2model name : ARMv7 Processor rev 5 (v7l)BogoMIPS : 48.00Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm CPU implementer : 0x41CPU architecture: 7CPU variant : 0x0CPU part : 0xc07CPU revision : 5 processor : 3model name : ARMv7 Processor rev 5 (v7l)BogoMIPS : 48.00Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm CPU implementer : 0x41CPU architecture: 7CPU variant : 0x0CPU part : 0xc07CPU revision : 5 Hardware : Allwinner sun8i FamilyRevision : 0000

这个控制台在带有1GB RAM的Allwinner R16(sun8i)四核Cortex-A7处理器上运行带有Linux 4.14.2的Debian 9,以及16GB microSD卡提供的大约11GB存储空间。

不过问题来了,这些截图我是怎么截的?我是通过官方的下面的两个指令实现的:

1.安装imagemagick:

sudo apt updatesudo apt install

2.在SSH控制台中导出显示,并将帧缓冲区捕获到您选择的文件名:

export DISPLAY=:0xwd -root convert xwd:- screenshot01.png

完成后,您将在/ home / cpi中找到捕获就能找到截图了。

回归正题,我们连接到SAMBA共享中心查看游戏和音乐目录,我下载了一些版权的音乐:

arduino源码固件(小孩儿玩的东西都要嵌入式了)(42)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(43)

arduino源码固件(小孩儿玩的东西都要嵌入式了)(44)

好消息是最新的1.24固件里支持6种语言:英语,日语,简体中文,繁体中文,西班牙语和法语。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(45)

虽然有些模拟器没有ROM,不过控制台里面有预装的游戏和即时游戏,这简直是童年回忆满满啊,我心里已经要有万字长文要说。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(46)

我还装了RetroArch模拟器的游戏,我还尝试用它玩了2048。

arduino源码固件(小孩儿玩的东西都要嵌入式了)(47)

总的来说,这款GameShell Kit非常有趣,既可以学习也可以玩,能够自定义Arduino和Linux代码非常灵活,学习嵌入式要从娃娃抓起。159美元的价格相对来说中规中矩。不过要感叹的是,以后小孩儿的游戏机都要学会玩嵌入式了,还真的是“长江后浪推前浪”。

转自oschain

,