Skip to content

rei-vilo/PDLS_EXT3_Python_Touch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pervasive Displays Library Suite - Touch - Python Edition

Release Codacy Badge GitHub issues

This is an experimental port of the Pervasive Displays Library Suite to Python on the Raspberry Pi Pico and Raspberry Pi Zero 2W or 4B.


The Pervasive Displays Library Suite is specifically designed for the Pervasive Displays e-paper screens and EXT3 extension board.

The PDLS_EXT3_Python_Touch provides a high-level interface to drive the E-paper Pico Development Kit 2.71"-Touch (EPDK-271-Touch) and the EXT3-Touch with 3.70" Touch EPD.

The EPDK-271-Touch includes

Features

  • Graphics routines
  • Text routines
  • Fast update
  • Touch management
  • GUI with button and text
  • Four extended fonts
  • Go to the documentation

Installation

For hardware, refer to

For software, see the procedures on the respective folders for Raspberry Pi Pico and Raspberry Pi Zero 2W or 4B.

Notes

  • Contrary to the version for the Zero 2W and Model 4B, the version for the Pico does not rely on the Blinka library due to its overhead. Instead, it uses the official MicroPython version from Raspberry Pi which includes access to the SPI and I²C ports and GPIOs.

  • The refresh process is very slow with Python. Fast mode refresh takes 2 seconds, compared to 700 ms in in C++, even with the Model 4B, the RP2040 overclocked at 240 MHz, and SPI speed set at 8 MHz.

  • Due to the limited size of Flash and RAM on the Pico, only three fonts are provided. Adding the fourth one raises an memory overflow error.

  • Memory can be tracked with gc.

# Memory
import gc
print("Before", gc.mem_free())
gc.collect()
print("After", gc.mem_free())

Licence

Copyright © Rei Vilo, 2010-2023

Licence Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)