Inkplate 10 ENODEV error with basicBW.py example

Customer:

Following the instructions from GitHub - SolderedElectronics/Inkplate-micropython: MicroPython driver for Soldered Inkplate devices · GitHub with the Inkplate 10, running an example produces an error:

python3 pyboard.py --device /dev/tty.usbserial-10 "Examples/Inkplate10/basicBW.py"

Output:

Sd card could not be read
Traceback (most recent call last):
 File "", line 17, in
 File "inkplate10.py", line 814, in begin
 File "inkplate10.py", line 71, in init
 File "mcp23017.py", line 20, in __init__
 File "mcp23017.py", line 32, in write
OSError: [Errno 19] ENODEV

Running display.begin() directly from the REPL produces the same error. This suggests a firmware issue. What could be causing this?

Originally submitted via email support on 17 August 2025. Migrated to the forum for community visibility.

Soldered Support:

The inkplate10.py version you’re using was written for an older panel model. If you purchased your display recently, it uses the PCAL IO expander instead of the MCP version, which is why you’re seeing the “device not found” error.

For your board, use the soldered_inkplate10.py module from the GitHub repository.

There is also a revamped Inkplate MicroPython library available on the Inkplate MicroPython Library Revamp branch. This version requires uploading a different firmware file, Inkplate-firmware.bin, which is also in the repository.

New features in the revamped library include:

  • JPEG and PNG image display with dithering
  • Custom fonts
  • Overall performance improvements

The library is still under development, so if you run into any issues or have questions while setting it up, please report them.