Ben NanoNote 评测
命令行是我在任何电脑或小工具中都想要的东西。对我来说,它象征着最终的访问和控制权。当我从 Qi Hardware 听说 Ben NanoNote,并了解到它主要是一个命令行设备时,我就知道我必须得到一个来玩玩。而且,它只卖 99 美元(加上运费 124 美元),这一点也不差。
Qi Hardware 是一家坚信不仅要开源软件,还要开源硬件的公司。根据其网站,其使命是“促进和鼓励版权所有硬件的开发”。作为这项使命的一部分,Ben NanoNote 的完整文档可在其网站上找到,包括电路板布局、原理图和其他硬件文档。
诚然,我可能永远不会有工具或专业知识来从零件创建自己的 NanoNote,即使我可以,我可能也无法以低于购买一台的价格来完成它。但是,文档是可用的,并且它是在许可证下发布的,如果我有意愿,我可以这样做。
顺便说一句,“Ben”指的是一个汉字,意思是“本源”、“根”或“开始”。其理念是,这是最终将成为完整的 NanoNote 和其他相关产品线的初始或第一个版本。
Ben NanoNote 基于 Ingenic Semiconductor 的 JZ4720 366MHz MIPS 兼容处理器构建,配备 3 英寸 320x240 像素彩色 TFT LCD 屏幕(文本控制台中为 40x15 字符)。它具有 32MB SDRAM、2GB NAND 闪存、一个 microSDHC 插槽(支持 SDIO)、一个 59 键键盘、一个耳机端口、一个单声道扬声器和一个 USB 2.0 Mini 端口。它由 3.7V 850mAh 锂离子电池供电,或者可以通过 USB 电源(5V 500mA DC)供电,可以将其插入电脑,也可以使用越来越常见的 USB 电源适配器(我的手机、相机和电子书阅读器都配备了 USB 电源适配器)。Ben NanoNote 名副其实地获得了“nano”这个称号,尺寸仅为 99x75x17.5 毫米。包括电池在内,Ben NanoNote 的重量仅为 126 克,比我的手机还轻。
在订购 Ben NanoNote 四天后,它就送到了我在北卡罗来纳州的家门口——对于从香港远道而来的东西来说,还不错。它装在一个有吸引力的黑色盒子里,里面装着 Ben NanoNote 本身、一本手册(其中大部分内容用于印刷 Creative Commons BY-SA 许可证的全文)、一块超细纤维清洁布、一块电池、一根 USB 电缆和一个用于短接电池仓中“USB Boot”引脚的小橡胶塞。
构建质量不错,没有缝隙或松动的部分。键盘的手感还可以,尽管比我喜欢的要硬一点。而且,尽管它拥有世界上最小的空格键,但布局实际上对于命令行工作来说效果还不错——除了破折号 (-) 键的位置令人恼火。
单个扬声器的音质很差,容易失真,但这在我的意料之中。如果您必须在 Ben NanoNote 上听音乐,外接扬声器或耳机是更好的选择。
像许多嵌入式设备一样,核心软件的升级是通过将设备刷写到最新的固件来完成的。与其他手持设备不同,其他手持设备可以自行刷写或通过 USB 将一些文件复制到设备上来进行刷写,Ben NanoNote 需要在特殊的“USB Boot 模式”下启动才能进行升级。完整的说明在 Qi Hardware Wiki 上,但基本步骤如下:
安装 Xburst 工具(用于通过 USB 启动 Ben NanoNote)。
从 Qi Hardware Wiki 下载 reflash_ben.sh 脚本。
将 Ben NanoNote 置于 USB Boot 模式。
运行 reflash_ben.sh 脚本。
将 NanoNote 置于 USB Boot 模式比我想象的要困难。要做到这一点,您需要取出电池并将 Ben NanoNote 插入您的电脑(如果您插入电脑时屏幕亮起,请短暂拔下 USB 电缆并重新插入;屏幕应保持黑暗)。接下来,使用 Ben NanoNote 附带的小塞子(或其他一些导电材料)来短接电池仓(现在是空的)中的两个 USB Boot 引脚。在保持引脚短接的情况下,并且不要拔下 USB 电缆,您必须按住电源按钮两秒钟。由于电源按钮在顶部,引脚在底部,这对我来说不是很方便。更糟糕的是,您已成功的迹象是什么都没发生——当屏幕在按住电源按钮两秒钟后保持黑暗时。
在经历了这些扭曲的操作后,我更希望屏幕上出现某种图标,甚至是小指示灯来确认我处于正确的模式,但目前,这就是流程。当处于 USB Boot 模式时,Ben NanoNote 正在等待 usbboot 实用程序(Xburst 工具之一)为其提供要从中启动的映像。
最后一步,运行 reflash_ben.sh 脚本,非常方便。该脚本会自动获取最新的固件(除非您指定特定版本),然后启动并刷写 Ben NanoNote。主根映像超过 140MB,因此下载可能需要一些时间,具体取决于您的互联网连接。刷写 rootfs 也需要几分钟。此步骤需要耐心或一次不错的零食时间。
在刷写完我的 Ben NanoNote、拔下电源并重新插入电池后,当它启动并且我看到 OpenWrt 徽标,然后是图形“桌面”(图 5)时,我知道一切都很好。虽然刷写过程并非过于困难,但它并不理想,我希望它随着时间的推移而改进。

图 5. Ben NanoNote “桌面”
Ben NanoNote 使用 OpenWrt Linux 发行版,该发行版用于嵌入式 Linux 设备。在我将它用于 Ben NanoNote 之前,我对这个发行版的唯一接触是在无线路由器上。
与我在路由器上使用 OpenWrt 的经验不同,Ben NanoNote 版本带有一个桌面。桌面是 Gmenu2X,默认情况下,它有两个部分:应用程序和设置。您可以使用 q 和 p 键在各部分之间切换。在部分内使用方向键导航,要启动选定的应用程序图标,请使用 x 键。Enter 键被配置为启动 GMenu2X 配置程序,原因不明。
默认固件中包含的桌面应用程序选择非常稀少。有一个时钟、GMU 音乐播放器、StarDict 词典和一个名为 Explorer 的文件浏览器。
根据其主页,GMU 音乐播放器能够播放各种各样的声音文件,但前提是具有适当的支持库,其中一些库在 Ben NanoNote 默认固件中不可用。按照出厂时的配置,Ben NanoNote 上的 GMU 可以播放 Ogg Vorbis、Muse、MikMod 和 WavPack 文件。我的大部分音乐都编码为 FLAC 或 MP3 格式,因此我可能有的将 Ben NanoNote 用作可脚本化的音乐播放器的想法都搁置了。
在玩了一会儿 GMU,只是为了确认它可以使用我的 .ogg 文件(它确实可以),并且在试用了其他桌面应用程序后,我决定 Ben NanoNote 的图形界面不适合我。它只是不是很实用。公平地说,图形界面更多的是作为一个示例而不是其他任何东西。但是,我对命令行更感兴趣。
要从桌面切换到控制台,请按 Ctrl-Alt-F1,然后按 Enter 键激活控制台。Ben NanoNote 实际上为您提供了四个虚拟控制台,您可以在上述命令中用 F2、F3 或 F4 替换 F1。
要从命令行返回图形模式,请按 Alt-F5。要在虚拟控制台之间切换,请按 Alt 和您要切换到的控制台(F1–F4)。如果您切换到的虚拟控制台显示“Please wait while graphical environment is loading...”或其他一些文本,只需按 Enter 键即可激活它。
如前所述,Ben NanoNote 的控制台大小为 40x15(40 个字符宽,15 行高)。对于下一个 NanoNote,我希望至少将其增加到 80x24。
像许多嵌入式 Linux 环境一样,OpenWrt 命令行基于 BusyBox。Ben NanoNote 版本的 OpenWrt 不仅坚持使用 BusyBox,还包括几个有用的程序来补充它。例如,包括 Vim 7.1。这是一个精简版(例如,没有语法高亮),但它仍然比 BusyBox 内置的 vi 克隆要好。
Qi Hardware Wiki(请参阅“资源”)提供了一些 Ben NanoNote 随附的命令行应用程序的列表,例如 Python、GPG、Vim 和 Mutt。
正如我在前面谈到键盘时提到的,布局在使用控制台时效果相当好。它远非理想,但它确实有效。经过一些练习,我可以以缓慢但稳定的速度打字,而无需大量寻找下一个键。
如今,许多(如果不是大多数)便携式设备都配备了某种形式的 802.11 无线网络。因此,当我得知 Ben NanoNote 连接到互联网的唯一方式是通过其 USB 端口时,我有点惊讶,当连接到主机电脑时,它不会显示为大容量存储设备,而是显示为 USB 以太网设备。
除非您已经在系统中插入了以太网转 USB 适配器,否则 NanoNote 接口很可能会显示为 usb0。可以使用 ifconfig 命令查看您的电脑知道的所有网络接口的列表,如下所示:
ifconfig -a -s
要激活以太网接口,需要分配一个 IP 地址。我使用 ifconfig 命令完成了此操作:
ifconfig usb0 192.168.254.100
我选择上述地址是因为 NanoNote 出厂时 USB 以太网配置的 IP 地址为 192.168.254.101。SSH 在 NanoNote 启动时自动启动,因此一旦在我的桌面上配置了网络,我就能够:ssh以 root 身份连接到 NanoNote(如果您不知道 root 密码,请更改 NanoNote 上的 root 密码)。您还可以使用以下命令将文件复制到 NanoNote 和从 NanoNote 复制文件:scp.
在过去几周使用 Ben NanoNote 的过程中,我脑海中一直萦绕着一个问题:Ben NanoNote 到底有什么用?我得出的简短答案是:我不知道。
从表面上看,Ben NanoNote 可以做很多事情,但在任何一项事情上,它都远非最好,甚至不是特别好。特别是,在没有无线互联网连接的情况下,它不能方便地用于电子邮件、网络搜索、发布博客更新或任何其他小型、互联网连接设备擅长的事情。它可以用于这些事情,但只能在离电脑 15 英尺的范围内(USB 电缆的最大长度)。所以在我想来,我最好还是用电脑。
我可以用它作为便携式电子日记,但像我的手机一样,在 Ben NanoNote 上打字很慢。如果我真的想记录我一整天的想法,我宁愿用一个小的纸质笔记本和笔。
那么 Ben NanoNote 是一个无用的玩意吗?一点也不。Ben NanoNote 吸引我的地方,以及仍然让我着迷的地方是,在几年前我不敢想象的尺寸中,我拥有一台“真正”的电脑,配有屏幕和键盘。
当然,“真正”取决于对该术语的特定定义。对我来说,它意味着一台具有可用的命令行、SSH 和 Vim,以及安装新软件和运行 shell 脚本能力的电脑。
虽然我仍然没有决定最终要用我的 Ben NanoNote 做什么,但我已经想到了一些我可能会考虑的任务。一个想法是将它用作我的家庭服务器的监控设备,如果未满足某些预设条件,则通过内部扬声器播放警报。
另一个想法是将它用作超安全的 GPG 加密设备。当您尝试闯入的设备甚至没有连接到网络时,几乎不可能通过网络闯入,因此 Ben NanoNote 满足了我戴锡箔帽的倾向。我必须小心永远不要将它连接到电脑,因为任何直接连接到互联网的东西都是,或者可能被,入侵的。但是,有了 USB 电源适配器和 microSDHC 插槽(用于在设备上和设备之间传输文件),这应该不会太难。我还必须小心物理地保护设备,但它足够小,应该可以放入几乎任何保险箱。
这些只是两种用途,还有其他的用途在我的脑海中盘旋。Qi Hardware Wiki 或邮件列表上已经讨论了一些想法,但我相信还有许多用途尚未被想到。
Ben NanoNote 不是为被动消费者设计的设备。它是为开发者、黑客和修补匠设计的。为什么?因为 Ben NanoNote 提供的最大好处是自由——完全的自由,可以做任何你想做的事情。Ben NanoNote 没有任何 EULA、加密和/或签名的固件映像或其他人为的锁定来阻碍您。玩它,破解它,弄坏它,修复它,发现新的用途,冲洗,重复。Ben NanoNote 的能力有限,这是真的,但就像俳句的规则一样,重要的是你在限制之内或不顾限制所做的事情,这才是关键。
NanoNote 上的游戏
在过去十年中,如果没有在任何极客设备上玩过 id Software 的第一人称射击游戏 (FPS) DOOM,那么这个设备就不会被认为有多么了不起。Ben NanoNote 也不例外。我不会称在 NanoNote 上玩 DOOM 是“可玩的”,但您可以走动、射击东西并在各个关卡中通关,而不会死太多次,前提是将难度设置为“我太年轻而不能死”。
Quake,id Software 的另一款 FPS 游戏,也可以在 NanoNote 上运行。同样,可用性很低(比 DOOM 更难玩),但它确实以缓慢、断断续续的方式工作。
Ben NanoNote 上提供的更可用的游戏是 Frotz,它来自提供我使用的 DOOM 和 Quake 二进制文件的同一位开发者。Frotz 是 Infocom 风格文本冒险游戏(如 Zork)的解释器。文本换行存在一些问题,行中断很奇怪,但我尝试过的游戏玩起来很好。

在 Ben NanoNote 上玩旧的 Infocom 冒险游戏。

在 Ben NanoNote 上玩 DOOM。似乎一切都可以玩这款游戏。

您也可以在 Ben NanoNote 上玩 Quake,但效果不太好。
资源
Qi Hardware: qi-hardware.com
Ben NanoNote Wiki: en.qi-hardware.com/wiki/Ben_NanoNote
默认固件中包含(或提议包含)的应用程序: en.qi-hardware.com/wiki/Applications
Xburst 工具: projects.qi-hardware.com/index.php/p/xburst-tools/downloads
安装 Debian 的说明: pyneo.org/howto/debian/nano.html
NanoNote 的游戏: downloads.qi-hardware.com/people/zear/games
OpenWrt: openwrt.org
Daniel Bartholomew 在 Monty Program montyprogram.com 担任技术作家和系统管理员。他与妻子和孩子住在北卡罗来纳州,经常可以在 Freenode IRC 上的 #maria 和 #linuxjournal 频道找到他。