Eike Hein Puts ChatGPT to Work Creating a Customized Daily ePaper Newspaper Front Page
Scraped by a Raspberry Pi, this newspaper's articles are trimmed and toned by ChatGPT before being formatted for display.
Software engineer Eike Hein has put OpenAI's popular yet divisive ChatGPT large language model (LLM) to work building a customized newspaper — displayed on an automatically-updating Espressif ESP32-powered ePaper photo frame.
"Hyepaper an automatic newspaper in a frame, intended as a decorative piece," Hein explains. "It features a 13.3" 1600×1200 E Ink panel in an ESP32-based, battery life-optimized frontend that wakes up once a day from deep sleep to fetch and update with a new newspaper image. All onboard software is written in Rust, including a custom driver for the ITE IT8951 EPD controller chip."
The idea of grabbing and displaying a newspaper's front cover on a paper-like daylight-readable ePaper display isn't new — we've seen multiple examples over the years, including this by Greg Raiz and an even larger one by Max Braun — but the Hyepaper is different: it's created specifically for Hein, using OpenAI's ChatGPT service to summarize the text from multiple configurable news sources.
"The backend running on the [Raspberry] Pi is written in Python," Hein explains. "It includes lxml
-based article scrapers for some websites my wife and I like, and then runs the content through OpenAI's ChatGPT API to trim articles for size, perform light style transfer, and generate suitably short headlines for the layout. It also fetches a weather forecast from the OpenWeatherMap API, which goes into the top-right corner of the header — the layout is of course heavily inspired by the frontpage of the New York Times. With the content in hand it then generates a LuaTeX input file using the Jinja2 template library."
The result looks and reads very convincingly like a newspaper, complete with masthead, imagery, and a columnar format, but is wholly customized. Some smart power handling, including a 5V relay to prevent phantom power drains from the ePaper display driver and a real-time clock which wakes the ESP32 up when it's time to draw a new front page, allows the entire frontend device to run from battery for weeks at a time.
More information is available in Hein's build log and project page.