Add Inkplate 6COLOR (EP585C_600x448) ACeP 7-color panel#33
Closed
brandon-dacrib wants to merge 2 commits into
Closed
Add Inkplate 6COLOR (EP585C_600x448) ACeP 7-color panel#33brandon-dacrib wants to merge 2 commits into
brandon-dacrib wants to merge 2 commits into
Conversation
New panel entry for the Soldered Inkplate 6COLOR (5.85in, 600x448, 7-color ACeP, UC8159 controller): - EP585C_600x448 enum constant - epd6color_init: full init transcribed from SolderedElectronics' Inkplate-Arduino-library (Inkplate6COLORDriver.cpp), 600x448 resolution - u8Colors_6color: color table remapping bb_epaper logical colors to the 6COLOR panel's native nibble codes (green=2/blue=3/red=4/yellow=5), which differ from EP73's order - panelDefs row wiring it as BBEP_7COLOR / BBEP_CHIP_UC81xx Compiles for esp32:esp32:esp32 via the four_color example. Not yet hardware-verified (color nibble packing order and post-reset BUSY polarity to be confirmed on a real panel). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Verification example for EP585C_600x448: draws one labeled bar per ACeP color and refreshes. Confirmed on real hardware that colors render in the correct positions, validating epd6color_init + the u8Colors_6color remap. Note the required sequence: fillScreen/draw -> writePlane() -> refresh(). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This was referenced Jun 18, 2026
Closed
Author
|
Closing this because we are stopping the OpenDisplay path for Inkplate 6COLOR. The panel driver work was useful and hardware-verified, but OpenDisplay's client-push/direct-write model is a poor fit for this board: the ESP32 reset happens when firmware wakes/initializes the UC8159 during BLE DIRECT_WRITE_START. A robust OpenDisplay fix would require a larger direct-write buffering redesign, while Soldered's ESPHome component already matches the board better with a local framebuffer and local wake/write/refresh/sleep cycle: https://github.com/SolderedElectronics/Soldered-Inkplate-ESPHome. Also noting the overlapping Soldered-origin panel support in #30. Thanks, and sorry for the noise. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds support for the Soldered Inkplate 6COLOR panel — a 5.85", 600×448, 7‑color ACeP display (black/white/red/green/blue/yellow/orange) driven by a UC8159 (UC81xx family) controller.
It's the same old‑generation ACeP technology as the existing
EP73_800x480, so this follows that entry closely:EP585C_600x448enum constantepd6color_init— full init sequence transcribed from Soldered's Inkplate‑Arduino‑library (Inkplate6COLORDriver.cpp), at 600×448u8Colors_6color— color table remapping the logicalBBEP_*colors to the 6COLOR's native nibble codes (green=2, blue=3, red=4, yellow=5), which differ fromEP73's orderpanelDefsrow wiring it asBBEP_7COLOR/BBEP_CHIP_UC81xxexamples/inkplate_6color_test— a labeled 7‑color‑bar test sketchTesting
esp32:esp32:esp32via thefour_colorand new example.epd6color_initand theu8Colors_6colorremap. (Sequence:fillScreen/draw →writePlane()→refresh(); the 7‑color framebuffer is allocated in PSRAM.)Related
panel_ic_type 0x0043 → EP585C_600x448.🤖 Generated with Claude Code