实时巴特列车到站显示
Realtime BART Arrival Display

原始链接: https://filbot.com/real-time-bart-display/

这个项目重现了旧式湾区捷运(BART)站台标志的怀旧氛围,作为个人展示。创建者是一位经常乘坐BART的通勤者,他使用Seeed Studio XIAO ESP32C6、红色OLED显示屏和逻辑电平转换器构建了一个显示实时列车到达信息的设备。 为了简化信息,设备没有直接解析复杂的BART数据,而是使用定制的“中间件”服务。该设备被放置在一个3D打印的外壳中,并涂上油漆和逼真的贴纸。 显示器上方安装的显示屏会显示到达时间、当前时间和BART安全信息,模拟了在站台上等待的体验。虽然现成的应用程序可以提供相同的数据,但创建者优先考虑了微型功能复制品的审美和乐趣。所有代码和3D文件分别在GitHub和Makerworld上公开可用。

## 实时 BART 到达显示屏 - Hacker News 摘要 一位 Hacker News 用户分享了一个项目,构建了一个实时 BART(旧金山湾区捷运)到达显示屏 ([filbot.com](https://filbot.com))。该显示屏模仿了官方 BART 标志的设计,使用了 ESP32 微控制器和公开可用的 GTFS 数据。 讨论很快扩展到公共交通时间安排的体验以及计划性与自发性的心理影响。 许多评论者分享了针对芬兰、瑞士和加拿大交通系统的类似项目,强调了应对寒冷天气和服务频率的不同方法。 许多人赞扬了该项目的执行和细节,并建议它可以成为商业产品。 另一些人讨论了访问可靠交通 API 的挑战以及直接微控制器编程与使用中间服务之间的权衡。 此外,还出现了一段关于 BART 标志性的、常常含糊不清的自动语音广播的怀旧讨论。
相关文章

原文
AI generated image of the physical BART display

I have a love-hate relationship with BART. I’m grateful for it, but let’s just say it’s not always the most reliable so it’s nice to see before hand when the train you need is due to arrive. There are plenty of projects out there that show real-time BART arrival information. This one does that too, it’s nothing groundbreaking, but I wanted to build my own version that captures the vintage BART platform sign vibe I associate with commuting between the East Bay and my job in the city.

BART platform sign at the Orinda BART station

The Hardware 🔗

  • Seeed Studio XIAO ESP32C6
  • SPI Red 20x4 Character OLED Display Module from BuyDisplay
  • SparkFun Logic Level Converter

I wanted to find a display that felt as close as possible to the real thing, though I knew it wouldn’t be an exact match. I was mainly after the right vibe, and the BuyDisplay red OLED character display nailed it. The PCB was a bit taller than the display itself, which affected the final dimensions, but it was a tradeoff I was happy to make. I love an OLED.

buydisplay connected and testing

The only other components I needed on the electronics side were the ESP32-C6 to run the display and fetch the latest BART arrival times, along with a logic level shifter. Both parts are small, so I soldered them onto a piece of perfboard with header pins, allowing the whole assembly to plug directly into the display like a cartridge.

perf board back side
electronic modules plugged into display


Firmware 🔗

The official BART API uses GTFS Realtime, a data specification developed in collaboration with Google. I’d never worked with it before, and expecting the ESP32 to fetch and parse the raw feed on its own felt like a stretch (or at least, too much for me to figure out). So instead, I built a middleware service that handles the heavy lifting: it pulls the data, extracts only what I need, and serves a simplified API tailored for the display the ESP32 calls. All the code is available on my GitHub.


Once I had all the pieces together, including some early 3D prints of the housing, I assembled everything to get a feel for the scale and how it works as a finished product. This video shows it all together but before paint. Data is being pulled in live.


Finishing 🔗

All that was left to do was some post processing of the 3d prints and paint, along with some little details like screws and stickers of the company that made the real deal platform signs and which platform the sign was for. I used a Brothers label maker for both. 3D files are available to download on Makerworld.

3D parts post processing
Brother label printed stickers


I used double-stick tape to mount this under a metal shelf above my monitor. Now I can see upcoming train arrivals at a glance, and the display also shows the time and official BART platform safety messages, like staying behind the yellow line, which really makes it feel like I’m standing on the platform. Sure, I could just look it up online, but having this miniature version of the platform display on my wall is much more fun.

Finished display
联系我们 contact @ memedata.com