我做了一个 Quote/0 看板,把 F1 赛程、积分和结果留在桌面

💡 原文中文,约4900字,阅读约需12分钟。
📝

内容提要

本文介绍了一个基于Quote/0电子纸屏的F1信息看板项目。作者开发了macOS应用,通过API推送赛历、赛果、积分等数据,生成11块简洁看板,覆盖比赛时间、结果、关注车手和车队信息。应用支持自动轮播,每15秒检查实时排名,并强调减法设计,让关键信息一目了然。项目已开源,需从源码构建,数据来自ESPN等公开接口。

🔎

延伸解读

为什么选择电子纸而非手机屏幕

作者强调Quote/0电子纸屏的定位是“环境信息”,而非另一块手机屏幕。它不追求实时刷新,而是让少量关键信息安静地待在那里,供人偶尔一瞥。这种形态与F1的信息节奏契合:非比赛日只需知道下一站倒计时,比赛周确认本地时间,赛后看领奖台和积分。相比手机App的丰富内容,电子纸的克制反而减少了信息过载,让核心数据更突出。

数据来源与实时性的权衡

应用依赖ESPN公开接口获取赛历、赛果和实时排名,并用Jolpica和OpenF1补充车手对应关系及异常状态。但ESPN接口无正式文档,字段可能变化,外部服务也可能不稳定。同时,电子纸刷新频率有限,自动推送最短间隔为60秒,而数据检查每15秒一次,这种设计在及时性和设备寿命之间做了折中。用户需注意,应用完全本地运行,退出或睡眠后数据不再更新。

减法设计:电子纸上的信息层级

作者在开发中经历了从“加更多内容”到“做减法”的转变。152×296的黑白屏幕无法承载完整数据页,因此只保留前三名、关注车手积分等核心信息。赛车侧视图被删除,赛道轮廓仅保留在倒数日页面。由于没有颜色,层级通过字号、粗细、边框和留白建立,类似报纸头版或赛事计时牌,确保远距离也能快速读取关键数据。

Q&A

F1 Quote/0 看板是什么?

F1 Quote/0 看板是一个基于 Quote/0 电子纸屏的 F1 信息显示项目,由作者开发的一款 macOS 应用,通过 API 将 F1 赛程、赛果、积分等数据推送到 Quote/0 设备上,以简洁的卡片形式展示关键信息。

F1 Quote/0 看板能显示哪些信息?

看板共 11 块,分为四组:比赛结果(全部比赛结果、冲刺赛/正赛结果)、比赛时间(下一场比赛时间、下一站倒数日)、关注车手(年度积分、最近全部赛制成绩、最近正赛/冲刺赛成绩)、关注车队(车队年度积分、两位车手年度排名、两位车手最近全部赛制成绩、两位车手最近正赛/冲刺赛成绩)。

F1 Quote/0 看板如何获取数据?

数据主要来自 ESPN 的公开 F1 数据接口,用于赛历、赛果、积分和实时排名;通过 Jolpica F1 补充车手与车队对应关系,通过 OpenF1 补充 DNF、DNS、DSQ 等异常状态;赛道轮廓来自应用内置的本地资源。

F1 Quote/0 看板如何实现自动更新?

应用在比赛期间每 15 秒检查一次 ESPN 排名,自动推送间隔最短为 60 秒。用户可设置自动轮播,勾选多个看板后,应用会按设定间隔推送更新到 Quote/0 设备。

F1 Quote/0 看板有哪些设计特点?

设计上强调减法,只保留关键信息,如比赛结果只显示前三名,车手赛果让名次占据近半屏幕,积分面板突出排名和积分。由于是黑白电子纸,通过字号、粗细、边框、留白和位置建立视觉层级,类似传统报纸或赛事计时牌。

F1 Quote/0 看板有哪些局限性?

局限性包括:应用需在 Mac 本地运行并保持联网,退出或睡眠后停止更新;数据依赖 ESPN 等外部接口,可能变化;电子纸刷新频率有限,自动推送最短间隔 60 秒;项目为非官方个人项目,与 F1、ESPN 等无隶属关系。

如何构建和使用 F1 Quote/0 看板?

项目已在 GitHub 开源,需在 macOS 14 或更高版本、安装 Xcode 的 Mac 上从源码构建,执行 ./scripts/package_app.sh。首次使用需:在 Dot App 创建 API Key 并获取设备 ID;在 Content Studio 将 Canvas API 加入 Loop;打开应用填写 API Key 和设备 ID;选择关注车手、车队和推送间隔;勾选看板并开启自动轮播。

F1 Quote/0 看板为什么选择做成 macOS 应用?

作者认为将逻辑放在服务器或树莓派上配置复杂,对多数人来说太麻烦。做成原生 macOS 应用可以简化部署,用户只需填写 API Key 和设备 ID,即可在本地运行并推送内容。

🏷️

标签

➡️

继续阅读