Skip to content

Used environment

The Pervasive Displays Library Suite is developed in C++ and relies on objects.

Editions

The PDLS comes in four editions: Basic, Evaluation, Commercial and Viewer.

Basic edition SDK

The Basic edition leverages the Arduino SDK as a hardware abstraction layer for the peripherals GPIO, UART, SPI and I²C.

The Arduino SDK supports a large range of platforms and boards, including AVR, Cortex-M, Cortex-A, ESP32, Intel x86, MSP430, PIC32 and more.

The recommended IDE is the Arduino IDE with the boards package corresponding to the targeted platform and board.

The Arduino wiki provides an Unofficial list of 3rd party boards . Another reference is the list of all known Arduino hardware packages .

Users can adapt the Peripherals library to target another SDK.

Evaluation edition pre-compiled libraries

The pre-compiled libraries of the Evaluation edition are generated according to the Precompiled binaries procedure of the Library specifications page for Arduino CLI.

They are available for the following platforms and boards:

Info

The Raspberry Pi Pico with Arduino-Pico is part of the EPD Pico Kit (EPDK) .

Info

The Arduino Nano Matter is part of the E-Paper Development Kit for Matter (EPDK-Matter) .

Other platforms and boards may be available on request, as long as they are supported by the Arduino SDK.

Commercial edition SDK-agnostic

The Commercial edition is SDK- and API-agnostic and only requires standard C/C++ libraries. The peripherals library should be adapted accordingly.

Adaptations have been successfully tested against the following SDKs:

Warning

ARM has announced the end of life of Mbed-OS .

The new Mbed Community Edition is presented as a community-driven alternative.

The technical note details how to Migrate to another SDK.

Viewer edition for Linux and Windows

The Viewer edition runs as a Linux or Windows native application to simulate an e-paper screen and manage touch. It shares the same fonts and application libraries with the Commercial edition.

It allows to develop the application software independently of the hardware. It is meant to be used with the Commercial edition.

It has been tested successfully on Windows, WSL 2 with Debian on Windows, and Linux Debian.

Releases

Commercial version name

PDLS follows a quartely release named after the seasons.

Release Summer 2025

Technical release number

The version name corresponds to a technical release number with the standard MAJOR.MINOR.PATCH format.

The Summer 2025 release includes the changes from 9.0.8, 9.0.9 and 9.1.0.

The technical release number is based on the Semantic Versioning 2.0.0 .

Given a version number MAJOR.MINOR.PATCH, increment the:

  • MAJOR version when you make incompatible API changes
  • MINOR version when you add functionality in a backward compatible manner
  • PATCH version when you make backward compatible bug fixes

Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.

This format allows the Arduino IDE to management the updates automatically and the libraries to checks their dependencies.

Check of dependencies

Each library has its own technical release number.

``` cpp

define hV_FONT_TERMINAL_RELEASE 503

```

Each library checks its dependencies at pre-processing by testing the technical release number.

``` cpp

include “hV_Font_Terminal.h”

if hV_FONT_TERMINAL_RELEASE < 504

error Required hV_FONT_TERMINAL_RELEASE 504

endif

```

In this example, if the hV_Font_Terminal library release is 503, the pre-processor expects 504 and prompts an error message:

``` cpp

error Required hV_FONT_TERMINAL_RELEASE 504

```

Externals tools

External tools have been tested on Linux Debian 12.

Tool Release Status
Arduino IDE 2.3.6
Arduino CLI 1.2.2
Adafruit nRF52 core for Arduino 1.6.1
ESP32 core for Arduino 3.0.4
Silicon Labs core for Arduino 2.1.0
Pico RP2040 core for Arduino 3.9.5
Visual Studio Code IDE 1.92.1
Arduino extension 0.6.230727001
ARM Mbed-OS 6.17.0 or legacy 5.14.2
Mbed Studio 1.4.6
BCM2835 library for Raspberry Pi 1.73
MRAA library for Raspberry Pi 2.2.0
Linux Debian 12.6
Windows 11 24H2

highView library Suite

The Pervasive Displays Library Suite relies on the highView Library Suite technologies.

Pervasive Displays Library Suite and highView Library Suite

The highView Library Suite provides a common high-level interface to drive multiple screen technologies, such as TFT, STN, OLED and e-paper, resistive and capacitive touch, and enhanced haptic feed-back.

The suite leverages objects for modular design, focuses on light footprint for memory and processing, and ensures compatibility with previous iterations of the suite.