Skip to content

Fix init() crash on Waveshare grayscale displays (epd3in7)#724

Open
cycsmail wants to merge 1 commit into
fatihak:mainfrom
cycsmail:fix-waveshare-grayscale-init
Open

Fix init() crash on Waveshare grayscale displays (epd3in7)#724
cycsmail wants to merge 1 commit into
fatihak:mainfrom
cycsmail:fix-waveshare-grayscale-init

Conversation

@cycsmail

@cycsmail cycsmail commented Jul 5, 2026

Copy link
Copy Markdown

Fixes #525.

Some Waveshare drivers like epd3in7 take a required mode argument on init() and render through mode-specific methods (Clear(color, mode) / display_1Gray) instead of the generic display(), so init() was raising TypeError: EPD.init() missing 1 required positional argument: 'mode'.

This detects that case from the driver's init signature and drives those panels in 1Gray (monochrome) mode, which lines up with the existing single-color path. Standard mono and bi-color displays are untouched.

Added tests for the epd3in7 init/display path plus a regression check that standard mono displays are unaffected. The new tests pass (3 passed) and the existing suite stays green (28 passed).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

TypeError: EPD.init() missing 1 required positional argument: 'mode'

1 participant