Fable把Remarkable平板变成哈利波特魔法日记
速览
AI故事公司Fable将Remarkable电子纸平板转化为哈利波特中汤姆·里德尔的魔法日记,用户可用钢笔与之互动。该改造融合AI叙事与物理书写体验,让用户仿佛置身魔法世界。
AI 深度解读
背景
reMarkable 是一款专注于书写体验的电纸书平板,其低延迟墨水显示和纸感书写深受极客与创作者喜爱。近期,一位名为 Fable 的开发者(Hacker News 用户)发布了一个开源项目 riddle,能将 reMarkable Paper Pro 变成《哈利·波特》中汤姆·里德尔的日记:用户用笔在纸页上写字,墨水会被“喝掉”(字迹渐隐),然后日记会以流利的手写体自动回复——整个过程没有屏幕发光、键盘或聊天界面,只有墨水在纸上显现。这个项目结合了硬件控制、AI 模型、手写识别与合成、以及低层级的电子墨水驱动,堪称一次技术魔法的精彩演示。
核心内容
riddle 的工作原理分为几个层次。
书写与墨水效果
用户用触控笔在 reMarkable Paper Pro 上书写,笔迹通过原始 evdev 驱动采集(支持 4096 级压力感应,硬件事件率)。笔迹被暂存后,经过约 2.8 秒的空闲时间,系统会将当前页面提交为 PNG 图片。这张图片随后送给一个常驻的大型语言模型(LLM)进程(称为 oracle)。oracle 逐句流式返回回复文本,而后 riddle 将文本渲染为 Dancing Script 字体,再通过图像细化和骨骼化算法转换为单像素笔迹路径,最后动画式地逐笔绘制在屏幕上,模拟出“日记自动书写”的效果。
显示后端
riddle 提供两种显示模式:
- qtfb – 窗口模式,运行在 xochitl(reMarkable 原版 UI)内部,作为 AppLoad 应用展现。适合开发调试,但延迟相对较高。
- quill – 完全接管模式(takeover):停止 xochitl,直接驱动 reMarkable 的厂商电子墨水引擎(libqsgepaper.so),实现最低可能延迟的即时墨水显现。quill 包含一个名为 scribble 的最小笔触延迟测试程序。
AI 回复生成
日记的回复来自一个视觉语言模型(vision LLM),它能读取书写页面的 PNG 图像。支持两种后端,在启动时选择:
- OpenAI 兼容 API:设置
RIDDLE_OPENAI_KEY环境变量,可直接对接 OpenAI、OpenRouter、Groq 或任何本地兼容/chat/completions端点的服务。需使用支持图像输入的模型(如 GPT-4o-mini)。 - 本地 pi 推理:如果设备上已运行 pi(一个支持热启动的语言模型推理程序),riddle 会自动使用
pi --mode rpc进程,无需额外软件。Node 环境与订阅认证仅在首次加载,每次询问只付出模型推理延迟。
两种后端都逐句流式输出,因此 quill 可在模型完成完整回复前就开始书写,大幅缩短用户等待时间。用户角色提示(persona prompt)位于 riddle/src/oracle.rs。
安装与部署
riddle 需要 reMarkable Paper Pro(型号 ferrari,aarch64 架构,OS 3.26–3.27),且必须处于开发者模式并安装有 xovi + AppLoad。开发者提供了工具 remagic 可一键开启开发者模式并设置环境。项目提供两种部署方式:
- AppLoad 应用:从 Releases 下载
riddle-appload-aarch64.zip,解压后通过scp复制到设备/home/root/xovi/exthome/appload/目录,然后在 AppLoad 中重载(Reload)并启动即可。 - Takeover 模式:需要 reMarkable SDK 工具链(~3.26 版本)以及从设备上拉取的厂商专有库
libqsgepaper.so。通过编译quill和riddle生成libquill.so与riddle-takeover二进制文件,部署到/home/root/quill/和/home/root/riddle/,再通过 AppLoad 启动脚本。该模式会停止 xochitl,启动后可通过电源按钮、五指触摸或 SIGTERM 退出,并自动恢复 xochitl。若卡死,可通过 SSH 执行systemctl start xochitl恢复。
风险与注意事项
- 项目会修改设备,以 root 权限运行,停止官方 UI 并直接驱动电子墨水引擎。
- 仅测试于 reMarkable Paper Pro (ferrari, aarch64, OS 3.26–3.27),其他型号或系统版本可能无法工作。
- 用户完全自行承担风险,开发者不承担任何责任。
- 安装任何内容前必须确保 SSH 访问正常——这是“逃生通道”。
- 项目与 reMarkable AS 公司无关。
许可
仓库内所有代码(除厂商专有库和 Qt 库外)均采用 MIT 协议发布。厂商库需用户从自己设备或 SDK 获取。
关键要点
- 核心创意:将 reMarkable 平板变为交互式魔法日记,书写内容被视觉 AI 读取并以手写体回复,完全模拟电影中汤姆·里德尔的日记体验。
- 技术架构:使用 Rust 编写主要应用(riddle),C/C++ 编写显示后台(quill),通过 libqsgepaper.so 直接驱动电子墨水屏,实现亚秒级延迟(实测首笔到屏幕约 0.9–1.1 秒)。
- AI 集成:支持 OpenAI 兼容 API(OpenAI、OpenRouter、Groq 等)或本地 pi 推理,视觉语言模型读取手写页面 PNG 并逐句流式回复。
- 手写合成:回复文本先渲染为 Dancing Script 字体,再经过 Zhang-Suen 细化和轨迹追踪,转化为单像素笔画动画,逐笔重现。
- 两种部署方式:AppLoad 窗口模式(低风险,易安装)和 quill 全接管模式(最低延迟,需 SDK 编译)。
- 风险提示:root 权限运行、停止官方 UI、仅适配特定设备和系统版本,用户需自行承担损坏风险,并确保 SSH 可作为恢复手段。
- 开源许可:除厂商专有库外,全部采用 MIT 协议,源代码可在 GitHub 仓库获取。
- 硬件要求:仅支持 reMarkable Paper Pro(ferrari 型号,aarch64,OS 3.26–3.27)。
意义与影响
riddle 项目展示了电子墨水设备与 AI 结合的巨大潜力。它不仅仅是技术玩具,更是一个探索新型人机交互范式的实验:
- 弱化屏幕数字感:没有屏幕发光、键盘或 UI,用户只面对纸和笔,AI 的回复也以自然手写呈现,极大降低了技术介入的突兀感。这种“消失的界面”概念未来可应用于教育、创作、笔记等场景。
- 低延迟 e-ink 控制:通过直接操控厂商的波形引擎,riddle 实现了接近纸张直觉的响应速度。这反过来促使厂商思考开放更底层的硬件接口,推动电子墨水生态创新。
- 视觉大模型在笔记设备上的应用:将视觉 LLM 的手写识别能力直接集成到书写流程中,无需额外 OCR 步骤,意味着任何手写内容都能被即时理解并交互。这为结合笔记的智能助理、文档摘要、语言学习等开辟了新路径。
- 社区驱动的黑客精神:项目完全开源、文档清晰、风险自担,鼓励动手能力强的用户探索设备极限。remagic 工具更是降低了门槛,让非开发者也能体验。这种“先玩再怕坏”的精神正是 tech demo 的魅力所在。
- 潜在问题与思考:目前仅支持特定型号,通用性受限;AI 回复依赖云端或本地模型的可达性与成本;直接驱动电子墨水屏可能存在长期稳定性风险。但作为概念验证,riddle 已经成功将魔法带入现实,激发了无数创意。
