OpenDisplay Flex
Overview
OpenDisplay Flex is the full-featured protocol standard with comprehensive configuration system, YAML-based schema, and advanced capabilities. This is the standard used by OpenDisplay firmware and provides complete control over device configuration, communication, and image transfer.
The Flex standard consists of three sub-standards (the communication spec covers both BLE and LAN):
- Configuration - YAML-based schema defining device capabilities and settings
- Communication protocol - BLE GATT and optional Wi‑Fi LAN (TCP); same commands and responses on both transports
- OpenDisplay Language - Format for describing visual layouts for e-paper displays
The Flex standard uses the same image transmission format as the OpenDisplay standard, ensuring compatibility across both standards.
1. Configuration
The YAML-based configuration schema that defines the BLE protocol structure. Learn about packet types, field definitions, enumerations, bitfields, and how the configuration system works. This standard defines how device capabilities and settings are structured and transmitted.
View Configuration Standard2. Communication protocol (BLE & Wi‑Fi LAN)
BLE GATT connection flow, optional Wi‑Fi LAN transport (device as TCP server, length-prefixed frames),
optional AES-CCM session encryption and 0x0050 authentication, configuration read/write, image transfer,
command reference, and response codes. Commands and encryption behavior match across BLE and LAN.
3. OpenDisplay Language
The format standard for describing visual layouts for e-paper displays. Complete specification including all drawing element types, color support, font options, and template examples. This standard defines how visual content is structured and interpreted.
View OpenDisplay LanguageDisplay Data Format
Learn how image data is encoded into bytes for transmission to OpenDisplay devices. Understand the encoding format for each color scheme (monochrome, bitplanes, multi-color) with visual examples showing pixel ordering and byte packing. This format is shared with the OpenDisplay standard.
View FormatComparison with OpenDisplay Standard
The Flex standard provides more features than OpenDisplay, but both share the same image format:
| Feature | OpenDisplay | Flex |
|---|---|---|
| Configuration System | Minimal (announcement only) | ✓ Full YAML-based schema |
| Image Format | ✓ OpenDisplay format | ✓ OpenDisplay format |
| Communication | Binary packets (fixed positions) | ✓ Binary packets (YAML-defined); BLE GATT + optional Wi‑Fi LAN (TCP) |
| String Handling | 16-bit integer IDs with mappings | ✓ Variable-length strings |
| Advanced Features | Limited | ✓ Sensors, WiFi, power management |
| Use Case | Products that want to show images from user's sources | ✓ Full-featured implementations |