InkBoy:基于ESP32-S3的微型电子纸游戏设备

YouTuber Bo 开源 InkBoy,让电子纸跑 Game Boy。他通过定制驱动优化波形,在标准 Waveshare 模块上实现 30 FPS 四灰度显示。但高刷新率可能永久损坏屏幕,用户需自担风险。

YouTube 用户 Bo 近日发布视频,展示了一款名为 InkBoy 的微型电子纸设备。该设备基于 ESP32-S3 驱动,能够在 E Ink 屏幕上以每秒 30 帧的速度运行模拟 Game Boy 游戏,并呈现四种灰度色调。Bo 已将相关驱动程序开源。

定制波形突破E Ink刷新限制

InkBoy 使用的屏幕为 Waveshare 1.54 英寸 ESP32-S3 电子纸显示器。原生驱动器下,该屏幕刷新速度约为 300 毫秒(即约 3.33 帧/秒)。E Ink 技术通过电脉冲移动带电颜料颗粒来改变像素状态,虽然具备低功耗和断电保持图像的优势,但物理层面的像素切换过程极其缓慢。

标准黑白 E Ink 显示器通常包含正电荷黑色颜料和负电荷白色颜料,两者交换需要特定的波形模式逐步清除表面多余颜料。为了突破这一限制,Bo 自行编写了定制驱动程序,通过缩短波形周期和减少每像素驱动时间,有效降低了图像残影(Ghosting)现象。

在灰度显示方面,Bo 最初尝试使用抖动算法创建灰度图像,但效果不佳。他在调试残影问题时偶然发现,显示器本身能产生灰色调。经过进一步调整,他成功实现了以 30 FPS 的速度稳定输出四种灰度,视觉效果接近原始 Game Boy 的绿色屏幕。

Bo 表示,其灵感来源于另一位 YouTuber 制作的自定义硬件 E Ink Game Boy,后者通过完全定制的硬件绕过了典型 E Ink 屏幕的设计限制。相比之下,InkBoy 是在标准 Waveshare 模块上通过软件驱动优化实现的。尽管该项目历时一个月开发,但 Bo 在 GitHub 开源代码时发出了严重警告:强制使用定制波形和高刷新率可能会对 E Ink 屏幕造成永久性损坏,用户需自行承担风险。

评论 0

0/500

评论需审核后展示,请文明发言

💬
还没有评论,来说两句

相关阅读