Migrate from release 6 to release 7¶
This technical note lists how to migrate from from release 6 to release 7.
The user guide has been adapted to new release 7.
New features¶
Release 7 does not include new features.
All the application libraries are unchanged.
Deprecated features¶
Release 7 does not deprecate features.
Modified features¶
Screen and board functions¶
Release 7 refactors screen and board functions into two new libraries, hV_Board and hV_Utilities_PDLS.
The new library hV_Board includes the low-level functions for the EXT3.1 extension board hardware and simulated Viewer.
The new library hV_Utilities_PDLS shares common functions and variables for all the screens.
Configuration¶
Release 7 also migrates some elements from the hV_Configuration header file.
The new hV_List_Constants header file lists all the constants used at run-time.
The new hV_List_Options header file sets the build-time options.
The new hV_List_Boards header file defines the main controller boards configurations.
The new hV_List_Screens header file references the supported screens and their corresponding frame-buffers sizes.
Peripherals¶
Deprecated functions and synonyms (shown in italics below) have been removed from the peripherals library.
General
| Release 5.5.0 | Release 6.1.3 | Release 7.0.0 | 
|---|---|---|
| - | hV_HAL_begin() | hV_HAL_begin() | 
GPIOs
| Release 5.5.0 | Release 6.1.3 | Release 7.0.0 | 
|---|---|---|
| hV_HAL_GPIO_pinMode() | hV_HAL_GPIO_pinMode()hV_HAL_GPIO_define() | hV_HAL_GPIO_define() | 
| hV_HAL_digitalWrite() | hV_HAL_digitalWrite()hV_HAL_GPIO_set()hV_HAL_GPIO_clear() | hV_HAL_GPIO_set()hV_HAL_GPIO_clear()hV_HAL_write() | 
| hV_HAL_digitalRead() | hV_HAL_digitalRead()hV_HAL_GPIO_get() | hV_HAL_GPIO_get()hV_HAL_GPIO_read() | 
Serial
| Release 5.5.0 | Release 6.1.3 | Release 7.0.0 | 
|---|---|---|
| hV_HAL_Debug_print()hV_HAL_Debug_println() | hV_HAL_Debug_print()hV_HAL_Debug_println()hV_HAL_Serial_printf() | hV_HAL_Serial_printf() | 
| - | hV_HAL_crlf()hV_HAL_Serial_crlf() | hV_HAL_Serial_crlf() | 
| hV_HAL_Debug_flush() | hV_HAL_Debug_flush() | - | 
SPI
| Release 5.5.0 | Release 6.1.3 | Release 7.0.0 | 
|---|---|---|
| hV_HAL_SPI_configure() | hV_HAL_SPI_configure()hV_HAL_SPI_begin() | hV_HAL_SPI_begin() | 
I²C
| Release 5.5.0 | Release 6.1.3 | Release 7.0.0 | 
|---|---|---|
| hV_HAL_Wire_write()hV_HAL_Wire_read() | hV_HAL_Wire_write()hV_HAL_Wire_read()hV_HAL_Wire_writeRead() | hV_HAL_Wire_transfer() | 
Time
| Release 5.5.0 | Release 6.1.3 | Release 7.0.0 | 
|---|---|---|
| hV_HAL_delay() | hV_HALdelay()hV_HAL_delayMilliseconds() | hV_HAL_delayMilliseconds() | 
Log system
| Release 5.5.0 | Release 6.1.3 | Release 7.0.0 | 
|---|---|---|
| - | hV_HAL_log() | hV_HAL_log() | 
Screen constant¶
The screen constant starts with eScreen_EPD_EXT3_, contains the size and the controller, both taken from the product number.
The product number of the panel is printed on the back of the screen, on the top line close to the QR-code.
Example

The screen with product number CE2271CS094 corresponds to a 2.71” panel with film CS and controler 09. The last digit 4 is ignored.
| - | Size | Film | Controller | - | 
|---|---|---|---|---|
| CE2 | 271 | CS | 09 | 4 | 
| eScreen_EPD_EXT3_ | 271 | _ | 09 | 
The screen constant for the constructor is eScreen_EPD_EXT3_271_09.
Screen_EPD_EXT3_Fast myScreen(eScreen_EPD_EXT3_271_09, boardRaspberryPiPico_RP2040);
The specific cases for the constructor are listed below.
The product number of the screens with normal update only includes a C after the size.
The screen constant starts with eScreen_EPD_EXT3_ and mentions the size of the screen. Although the controller of the screen can be omitted, it is recommended to include it.
Example
The product number of the screens with normal update only includes a C after the size 271.
The screen with product number CE2271CS0E corresponds to a 2.71” panel with controler 0E.
| - | Size | Film | Controller | 
|---|---|---|---|
| CE2 | 271 | CS | 0E | 
| eScreen_EPD_EXT3_ | 271 | 
The screen constant for the constructor is eScreen_EPD_EXT3_271.
eScreen_EPD_EXT3 myScreen(eScreen_EPD_EXT3_271, boardRaspberryPiPico_RP2040);
A better solution is to include the controller with eScreen_EPD_EXT3_271_0E.
eScreen_EPD_EXT3 myScreen(eScreen_EPD_EXT3_271_0E, boardRaspberryPiPico_RP2040);
The product number of the screens with red colour includes a J after the size. The commercial name is Spectra.
The screens featuring red colour require the additional mention of BWR.
The screen constant starts with eScreen_EPD_EXT3_ and contains the size taken from the product number, then _ and Red.
Example
The screen with product number CE2969JS08 corresponds to a 9.69” black-white-red panel with controler 0B.
| - | Size | Film | Controller | Colour | 
|---|---|---|---|---|
| CE2 | 969 | JS | 0B | |
| eScreen_EPD_EXT3_ | 969 | _BWR | 
The screen constant for the constructor is eScreen_EPD_EXT3_969_BWR. The controller is omitted.
Screen_EPD_EXT3_Fast myScreen(eScreen_EPD_EXT3_969_BWR, boardRaspberryPiPico_RP2040);
The size of the 12.0” panel is coded as B98 and corresponds to 11.98”.
The product number of the screens with red and yellow colours includes a Q after the size. The commercial name is Spectra 4.
The screens featuring red colour require the additional mention of BWRY.
The screen constant starts with eScreen_EPD_EXT3_ and contains the size taken from the product number, then _ and BWRY.
Example
The screen with product number CE2154QS0F corresponds to a 1.54” black-white-red-yellow panel with controler 0F.
| - | Size | Film | Controller | Colour | 
|---|---|---|---|---|
| CE2 | 154 | QS | 0F | |
| eScreen_EPD_EXT3_ | 154 | _BWRY | 
The screen constant for the constructor is eScreen_EPD_EXT3_154_BWRY. The controller is omitted.
Screen_EPD_EXT3_Fast myScreen(eScreen_EPD_EXT3_154_BWRY, boardRaspberryPiPico_RP2040);
The product number of the screens with embedded fast update includes a P after the size. The commercial name is Aurora.
Screens with embedded fast update require the additional mention of Fast.
The screen constant starts with eScreen_EPD_EXT3_ and contains the size and the controller, both taken from the product number, then _ and Fast.
Example
The product number of the screens with embedded fast update includes a P after the size 271.

The screen with product number SE2271PS09 corresponds to a 2.71” panel with embedded fast update with controler 09.
| - | Size | Film | Controller | Fast | 
|---|---|---|---|---|
| SE2 | 271 | PS | 09 | |
| eScreen_EPD_EXT3_ | 271 | _ | 09 | _Fast | 
The screen constant for the constructor is eScreen_EPD_EXT3_271_09_Fast.
Screen_EPD_EXT3_Fast myScreen(eScreen_EPD_EXT3_271_09_Fast, boardRaspberryPiPico_RP2040);
The product number of the screens with wide temperature and embedded fast update includes a K after the size. The commercial name is Wide Temperature.
Screens with wide temperature and embedded fast update require the additional mention of Wide.
The screen constant starts with eScreen_EPD_EXT3_ and contains the size and the controller, both taken from the product number, then _ and Wide.
Example
The product number of the screens with touch includes a K after the size 271.

The screen with product number SE2271KS09 corresponds to a 2.71” panel with embedded fast update with controler 09.
| - | Size | Film | Controller | Wide | 
|---|---|---|---|---|
| SE2 | 271 | KS | 09 | |
| eScreen_EPD_EXT3_ | 271 | _ | 09 | _Wide | 
The screen constant for the constructor is eScreen_EPD_EXT3_271_09_Wide.
Screen_EPD_EXT3_Fast myScreen(eScreen_EPD_EXT3_271_09_Wide, boardRaspberryPiPico_RP2040);
The screens featuring touch and embedded fast update require the additional mention of Touch.
The screen constant starts with eScreen_EPD_EXT3_ and contains the size and the controller, both taken from the product number, then _ and Touch.
Example
The product number of the screens with touch includes a T at the second position.

The screen with product number QT2370PS0C1 corresponds to a 3.70” touch-panel with controler 0C.
| - | Size | Film | Controller | Touch | 
|---|---|---|---|---|
| QT2 | 370 | PS | 0C | |
| eScreen_EPD_EXT3_ | 370 | _ | 0C | _Touch | 
The screen constant for the constructor is eScreen_EPD_EXT3_370_0C_Touch.
Screen_EPD_EXT3_Fast myScreen(eScreen_EPD_EXT3_370_0C_Touch, boardRaspberryPiPico_RP2040);
Frame-buffer size constant¶
The constant for the size of the frame-buffer starts with frameSize_EPD_EXT3_ and contains the size taken from the product number.
Editions and variants names¶
Evaluation and Commercial editions¶
The names of the variants of the Evaluation and Commercial editions are unchanged.
Viewer edition¶
The name of the variant of the Viewer edition is unchanged.
Basic edition¶
The names of the variants of the Basic edition are unchanged, except for PDLS_EXT3_Basic now called PDLS_EXT3_Basic_Global.