Sender ↔ receiver, by design
Senders generate the image; receivers display it. Two clean halves, one shared protocol, and either side can be swapped for a different implementation.
Read the protocol →OpenDisplay is an open standard and open firmware that lets any sender put pictures on any screen. Local, low-power, no cloud in the middle.
What makes it different
Most e-paper projects today reinvent the wheel every time, and lock you into using their screen with their app or cloud. OpenDisplay is the open standard that separates the two sides cleanly, so nobody has to rebuild every part.
Senders generate the image; receivers display it. Two clean halves, one shared protocol, and either side can be swapped for a different implementation.
Read the protocol →Server-side rendering, including dithering and color conversion, keeps receivers cheap, simple, and low-power on battery.
How rendering works →The protocol, reference firmware, and browser tools are open source. Implement either side your way — no partner program required.
Read the spec →What it's actually for
Wireless means a screen can sit on a closet shelf, a bathroom cabinet, or a hallway hook — doing one job well, without running a cable. A handful we use ourselves.
WED · OUT
14°
rain in 12m · radar 2km
Closet & front door
Forecast while you dress, rain radar as you leave. Two tags, same morning routine, no phone required.
Side table
A 7.3″ Spectra 6 panel on a wireless frame. The sender dithers your photos to the palette; the screen just paints what arrives.
THU · POLLEN
Med
grasses · oak
Bathroom shelf
Glance during the morning routine and you know whether hayfever is about to ruin the day.
Meds cabinet
Tag with morning + evening buttons, so the source of truth lives where the meds live.
NEXT · 09:30
Standup
in 12 min
Kitchen wall
For people working from home, placed wherever you tend to lose track of time.
TODAY · ENERGY
4.3 kWh
peak 12:00 · −8% wow
Hallway
Glance on your way past and you know whether to hold off on the dishwasher until prices drop.
Get started
Pick a supported screen from our hardware guide, or wire a dev board and panel yourself. Either way: flash OpenDisplay firmware in the browser, send a test image, then connect your sender.
What hardware to buy Open the Toolbox
Build your own
Web Bluetooth + Web Serial · Firefox, Chrome, Edge
For app developers
Home Assistant is the reference sender today. The Python SDK is for everyone else: photo apps, custom dashboards, anything that wants to put a picture on a screen. A picture is a picture; what's in it is up to you.
The sender does the heavy work, including dithering for whatever panel the receiver advertises, so screens can stay cheap, simple, and battery-powered.
send_to_tag.py
from opendisplay import OpenDisplayDevice
from PIL import Image
async with OpenDisplayDevice(device_name="OD123456") as device:
await device.upload_image(Image.open("photo.jpg"))
Collaboration partner · Open Home Foundation
OpenDisplay is built around the values the Open Home Foundation stands for. They aren't decorative. They're the constraints that shape every decision about the protocol, the firmware, and the tools.
Senders run locally. Receivers talk to senders over Bluetooth. No cloud sits in the middle reading what's on your wall, and no account is required to use the protocol.
no telemetry · no account · BLE local
The standard is open and free to implement. Swap the screen, swap the data source, swap the firmware. Hardware vendors and DIY makers ship into the same ecosystem on equal terms.
open spec · GPL-v3 · vendor-agnostic
Server-side rendering keeps receivers low-power. From a coin cell to a frame LiPo, that can mean years on a charge, even on Spectra 6 when updates are sparse.
low standby · partial refresh · re-use