Generate a trace¶
This technical note details how to generate a trace for SPI, Wire, OTP memory and power management.
This is especially useful to debug and to create a ticket for the help-desk .
Configure¶
On the hV_Board.h
header file of the hV_Board_EXT3
library, set the corresponding options for SPI, OTP memory and power management.
Always proceed with a clean build of the project.
SPI¶
///
/// @brief 12- Debug options
///
#define DEBUG_SPI_SCREEN 1 ///< SPI debugging for screen, 1 = activated, otherwise 0; recommended = 0
#define DEBUG_OTP 0 ///< Print OTP content, 0 = no, 1 = yes; recommended = 0
#define DEBUG_DELAY 0 ///< Delay ms and us, 1 = activated, otherwise 0; recommended = 0
#define DEBUG_POWER 0 ///< Trace power management, 0 = no, 1 = yes; recommended = 0
#define DEBUG_WIRE 0 ///< Trace Wire, 0 = no, 1 = yes; recommended = 0
On the hV_Board.h
header file of the hV_Board_EXT3
library, set DEBUG_SPI_SCREEN
to 1
.
The option is activated by default on the Evaluation edition.
Wire¶
///
/// @brief 12- Debug options
///
#define DEBUG_SPI_SCREEN 0 ///< SPI debugging for screen, 1 = activated, otherwise 0; recommended = 0
#define DEBUG_OTP 0 ///< Print OTP content, 0 = no, 1 = yes; recommended = 0
#define DEBUG_DELAY 0 ///< Delay ms and us, 1 = activated, otherwise 0; recommended = 0
#define DEBUG_POWER 0 ///< Trace power management, 0 = no, 1 = yes; recommended = 0
#define DEBUG_WIRE 1 ///< Trace Wire, 0 = no, 1 = yes; recommended = 0
On the hV_Board.h
header file of the hV_Board_EXT3
library, set DEBUG_WIRE
to 1
.
The option is activated by default on the Evaluation edition.
OTP memory¶
///
/// @brief 12- Debug options
///
#define DEBUG_SPI_SCREEN 0 ///< SPI debugging for screen, 1 = activated, otherwise 0; recommended = 0
#define DEBUG_OTP 1 ///< Print OTP content, 0 = no, 1 = yes; recommended = 0
#define DEBUG_DELAY 0 ///< Delay ms and us, 1 = activated, otherwise 0; recommended = 0
#define DEBUG_POWER 0 ///< Trace power management, 0 = no, 1 = yes; recommended = 0
#define DEBUG_WIRE 0 ///< Trace Wire, 0 = no, 1 = yes; recommended = 0
On the hV_Board.h
header file of the hV_Board_EXT3
library, set DEBUG_OTP
to 1
.
The option is activated by default on the Evaluation edition.
Delay¶
///
/// @brief 12- Debug options
///
#define DEBUG_SPI_SCREEN 0 ///< SPI debugging for screen, 1 = activated, otherwise 0; recommended = 0
#define DEBUG_OTP 0 ///< Print OTP content, 0 = no, 1 = yes; recommended = 0
#define DEBUG_DELAY 1 ///< Delay ms and us, 1 = activated, otherwise 0; recommended = 0
#define DEBUG_POWER 0 ///< Trace power management, 0 = no, 1 = yes; recommended = 0
#define DEBUG_WIRE 0 ///< Trace Wire, 0 = no, 1 = yes; recommended = 0
On the hV_Board.h
header file of the hV_Board_EXT3
library, set DEBUG_DELAY
to 1
.
Power¶
///
/// @brief 12- Debug options
///
#define DEBUG_SPI_SCREEN 0 ///< SPI debugging for screen, 1 = activated, otherwise 0; recommended = 0
#define DEBUG_OTP 0 ///< Print OTP content, 0 = no, 1 = yes; recommended = 0
#define DEBUG_DELAY 0 ///< Delay ms and us, 1 = activated, otherwise 0; recommended = 0
#define DEBUG_POWER 1 ///< Trace power management, 0 = no, 1 = yes; recommended = 0
#define DEBUG_WIRE 0 ///< Trace Wire, 0 = no, 1 = yes; recommended = 0
On the hV_Board.h
header file of the hV_Board_EXT3
library, set DEBUG_POWER
to 1
.
The option is activated by default on the Evaluation edition.
Use¶
The trace is sent to the default serial UART port.
Open a terminal to display the serial port.
The trace is generated by the Log system.
Examples¶
Below are examples of the output for the different options.
SPI¶
hV = Begin
hV = SPI at 8 MHz
hV - ePaper_EXT3_Advanced_Library.ino
hV - Nov 3 2023 16:18:16
hV - b_reset
hV = SPI at 8 MHz
hV - Screen iTC 2.66"-F -iH 152x296
hV - PDLS Fast v7.0.2
hV - b_sendIndexData [00] 0e
hV - b_waitBusy HIGH
hV - b_sendIndexData [e5] 59
hV - b_sendIndexData [e0] 02
hV - b_sendIndexData [00] df 02
hV - b_sendIndexData [50] 07
hV - b_sendIndexData [50] 27
hV - b_sendIndexData [10] 00 00 00 00 00 00 00 00 ... (5624)
hV - b_sendIndexData [13] 00 00 00 00 00 00 00 00 ... (5624)
hV - b_sendIndexData [50] 07
hV - b_sendCommand8 [04]
hV - b_waitBusy HIGH
hV - b_sendCommand8 [12]
hV - b_waitBusy HIGH
hV - b_sendCommand8 [02]
hV - b_waitBusy HIGH
hV = End
hV = Exit with code 0
hV = Loop
Wire¶
hV = Begin
hV - ePaper_EXT3_Advanced_Library.ino
hV - Aug 31 2024 15:15:11
hV - Screen iTC 2.71"-Fast+Touch iH
hV - Size 176x264
hV - Number 271-PS-09
hV - PDLS Touch v8.0.4
hV . OTP check passed - Bank 0, first 0xa5 as expected
hV = SPI at 16 MHz
hV - hV_HAL_Wire_begin
hV - hV_HAL_Wire write [41] 20
hV - hV_HAL_Wire read [41] b0 00 08 01 05 07 02 00 ... (10)
hV - DISPLAY_GUI_BUTTON...
hV - hV_HAL_Wire write [41] 10
hV - hV_HAL_Wire read [41] 00
hV - hV_HAL_Wire write [41] 10
hV - hV_HAL_Wire read [41] 00
hV - hV_HAL_Wire write [41] 10
hV - hV_HAL_Wire read [41] 01
hV - hV_HAL_Wire write [41] 11
hV - hV_HAL_Wire read [41] 81 00 64 00 b0
hV - hV_HAL_Wire write [41] 10
hV - hV_HAL_Wire read [41] 00
hV - hV_HAL_Wire write [41] 10
hV - hV_HAL_Wire read [41] 01
hV - hV_HAL_Wire write [41] 11
hV - hV_HAL_Wire read [41] 81 00 0c 00 12
hV - hV_HAL_Wire write [41] 10
hV - hV_HAL_Wire read [41] 01
hV - hV_HAL_Wire write [41] 11
hV - hV_HAL_Wire read [41] 81 00 0c 00 12
hV - hV_HAL_Wire write [41] 10
hV - hV_HAL_Wire read [41] 00
hV - hV_HAL_Wire write [41] 10
hV - hV_HAL_Wire read [41] 00
hV = End
hV = Exit with code 0
hV = Loop
OTP memory¶
hV = Begin
hV - ePaper_EXT3_Advanced_Library.ino
hV - Jun 16 2024 17:06:50
hV - Screen iTC 2.66"-BWR iH 152x296
hV - Number 266-JS-0C
hV - PDLS Global v8.0.3
hV . OTP check passed - Bank 0, first 0xa5 as expected
hV - const uint8_t COG_data[2] =
hV - {
hV - 0xcf, 0x8d
hV - } // 2
hV = SPI at 16 MHz
hV = End
hV = Exit with code 0
hV = Loop
Power¶
hV = Begin
hV - ePaper_EXT3_Advanced_Library.ino
hV - Jun 16 2024 17:12:37
hV - Screen iTC 2.66"-BWR iH 152x296
hV - Number 266-JS-0C
hV - PDLS Global v8.0.3
hV - setPowerProfile MODE SPI.GPIO 01
hV - b_resume GPIO SPI.GPIO 00 -> 01
hV - resume GPIO SPI.GPIO 01 -> 01
hV - s_getDataOTP SPI SPI.GPIO 01 -> 01
hV = SPI at 16 MHz
hV - resume SPI SPI.GPIO 01 -> 11
hV . DISPLAY_WHOAMI...
hV - setPowerProfile MODE SPI.GPIO 11
hV - suspend SPI SPI.GPIO 11 -> 01
hV - b_suspend GPIO SPI.GPIO 01 -> 00
hV . Done
hV . Regenerate...
hV - b_resume GPIO SPI.GPIO 00 -> 01
hV - resume GPIO SPI.GPIO 01 -> 01
hV = SPI at 16 MHz
hV - resume SPI SPI.GPIO 01 -> 11
hV - suspend SPI SPI.GPIO 11 -> 01
hV - b_suspend GPIO SPI.GPIO 01 -> 00
hV = End
hV = Exit with code 0
hV = Loop