cryptnox-sdk-esp32 1.0.0
ESP32 SDK for Cryptnox Hardware Wallet
Loading...
Searching...
No Matches
ESP32Logger Class Reference

CW_Logger backed by ESP32 UART0. More...

#include <ESP32Logger.h>

Inheritance diagram for ESP32Logger:
[legend]
Collaboration diagram for ESP32Logger:
[legend]

Public Member Functions

 ~ESP32Logger () override
 Default destructor.
Initialisation
bool begin (unsigned long baudRate=115200UL) override
 Initialise UART0 at the given baud rate.
Print (no newline)
void print (const __FlashStringHelper *str) override
 Print a PROGMEM string.
void print (const char *str) override
 Print a NUL-terminated C string.
void print (char c) override
 Print a single character.
void print (uint8_t value, int base=DEC) override
 Print an 8-bit unsigned integer.
void print (uint16_t value, int base=DEC) override
 Print a 16-bit unsigned integer.
void print (uint32_t value, int base=DEC) override
 Print a 32-bit unsigned integer.
void print (int value, int base=DEC) override
 Print a signed integer.
Println (with trailing newline)
void println () override
 Print a CR+LF newline sequence.
void println (const __FlashStringHelper *str) override
 Print a PROGMEM string followed by a newline.
void println (const char *str) override
 Print a NUL-terminated C string followed by a newline.
void println (char c) override
 Print a single character followed by a newline.
void println (uint8_t value, int base=DEC) override
 Print an 8-bit unsigned integer followed by a newline.
void println (uint16_t value, int base=DEC) override
 Print a 16-bit unsigned integer followed by a newline.
void println (uint32_t value, int base=DEC) override
 Print a 32-bit unsigned integer followed by a newline.
void println (int value, int base=DEC) override
 Print a signed integer followed by a newline.

Private Attributes

bool m_initialized = false
 true after a successful begin call.

Detailed Description

CW_Logger backed by ESP32 UART0.

Outputs all log traffic through UART0 (the default USB-serial console on most ESP32 dev kits). The __FlashStringHelper overloads are accepted for Arduino source-compatibility but the pointer is treated as a plain RAM pointer — there is no Harvard-architecture flash on ESP32.

Note
Call begin once before passing this logger to CryptnoxWallet; calling any print / println method before begin is a no-op.
Warning
In production firmware, replace this logger with a null implementation (a CW_Logger that silently discards all output). Leaving ESP32Logger active on a production device exposes full APDU traces and PIN values on the serial console (LOW-03).
Examples
BasicUsage/main/main.cpp, Connect/main/main.cpp, Sign/main/main.cpp, UsdcSigning/main/main.cpp, and VerifyPin/main/main.cpp.

Definition at line 48 of file ESP32Logger.h.

Constructor & Destructor Documentation

◆ ~ESP32Logger()

ESP32Logger::~ESP32Logger ( )
inlineoverride

Default destructor.

Definition at line 191 of file ESP32Logger.h.

Member Function Documentation

◆ begin()

bool ESP32Logger::begin ( unsigned long baudRate = 115200UL)
override

Initialise UART0 at the given baud rate.

Parameters
[in]baudRateUART baud rate (default 115200).
Returns
true on success, false if UART driver installation fails.
Examples
BasicUsage/main/main.cpp, Connect/main/main.cpp, Sign/main/main.cpp, UsdcSigning/main/main.cpp, and VerifyPin/main/main.cpp.

Definition at line 95 of file ESP32Logger.cpp.

References m_initialized, UART_LOG_PORT, and UART_RX_FLOW_THRESH_NONE.

Referenced by app_main().

◆ print() [1/7]

void ESP32Logger::print ( char c)
override

Print a single character.

Parameters
[in]cCharacter to print.

Definition at line 126 of file ESP32Logger.cpp.

References m_initialized.

◆ print() [2/7]

void ESP32Logger::print ( const __FlashStringHelper * str)
override

Print a PROGMEM string.

On ESP32 the pointer is treated as a plain RAM pointer; no special flash-read logic is applied.

Parameters
[in]strNUL-terminated string to print (must not be NULL).

Definition at line 112 of file ESP32Logger.cpp.

References m_initialized, and uart_write_str().

Referenced by println(), println(), println(), println(), println(), println(), and println().

◆ print() [3/7]

void ESP32Logger::print ( const char * str)
override

Print a NUL-terminated C string.

Parameters
[in]strString to print (must not be NULL).

Definition at line 119 of file ESP32Logger.cpp.

References m_initialized, and uart_write_str().

◆ print() [4/7]

void ESP32Logger::print ( int value,
int base = DEC )
override

Print a signed integer.

Outputs a '-' prefix for negative values when base is DEC.

Parameters
[in]valueInteger to print.
[in]baseNumeric base (see print(uint8_t,int)).

Definition at line 157 of file ESP32Logger.cpp.

References clamp_base(), m_initialized, and write_uint_to_uart().

◆ print() [5/7]

void ESP32Logger::print ( uint16_t value,
int base = DEC )
override

Print a 16-bit unsigned integer.

Parameters
[in]valueInteger to print.
[in]baseNumeric base (see print(uint8_t,int)).

Definition at line 141 of file ESP32Logger.cpp.

References clamp_base(), m_initialized, and write_uint_to_uart().

◆ print() [6/7]

void ESP32Logger::print ( uint32_t value,
int base = DEC )
override

Print a 32-bit unsigned integer.

Parameters
[in]valueInteger to print.
[in]baseNumeric base (see print(uint8_t,int)).

Definition at line 149 of file ESP32Logger.cpp.

References clamp_base(), m_initialized, and write_uint_to_uart().

◆ print() [7/7]

void ESP32Logger::print ( uint8_t value,
int base = DEC )
override

Print an 8-bit unsigned integer.

Parameters
[in]valueInteger to print.
[in]baseNumeric base: DEC (10), HEX (16), OCT (8), or BIN (2). Defaults to DEC.

Definition at line 133 of file ESP32Logger.cpp.

References clamp_base(), m_initialized, and write_uint_to_uart().

◆ println() [1/8]

void ESP32Logger::println ( )
override

Print a CR+LF newline sequence.

Definition at line 173 of file ESP32Logger.cpp.

References LOGGER_NEWLINE, m_initialized, and uart_write_str().

Referenced by println(), println(), println(), println(), println(), println(), and println().

◆ println() [2/8]

void ESP32Logger::println ( char c)
override

Print a single character followed by a newline.

Parameters
[in]cCharacter to print.

Definition at line 192 of file ESP32Logger.cpp.

References print(), and println().

◆ println() [3/8]

void ESP32Logger::println ( const __FlashStringHelper * str)
override

Print a PROGMEM string followed by a newline.

Parameters
[in]strNUL-terminated string to print (must not be NULL).

Definition at line 180 of file ESP32Logger.cpp.

References print(), and println().

◆ println() [4/8]

void ESP32Logger::println ( const char * str)
override

Print a NUL-terminated C string followed by a newline.

Parameters
[in]strString to print (must not be NULL).

Definition at line 186 of file ESP32Logger.cpp.

References print(), and println().

◆ println() [5/8]

void ESP32Logger::println ( int value,
int base = DEC )
override

Print a signed integer followed by a newline.

Parameters
[in]valueInteger to print.
[in]baseNumeric base (see print(uint8_t,int)).

Definition at line 216 of file ESP32Logger.cpp.

References print(), and println().

◆ println() [6/8]

void ESP32Logger::println ( uint16_t value,
int base = DEC )
override

Print a 16-bit unsigned integer followed by a newline.

Parameters
[in]valueInteger to print.
[in]baseNumeric base (see print(uint8_t,int)).

Definition at line 204 of file ESP32Logger.cpp.

References print(), and println().

◆ println() [7/8]

void ESP32Logger::println ( uint32_t value,
int base = DEC )
override

Print a 32-bit unsigned integer followed by a newline.

Parameters
[in]valueInteger to print.
[in]baseNumeric base (see print(uint8_t,int)).

Definition at line 210 of file ESP32Logger.cpp.

References print(), and println().

◆ println() [8/8]

void ESP32Logger::println ( uint8_t value,
int base = DEC )
override

Print an 8-bit unsigned integer followed by a newline.

Parameters
[in]valueInteger to print.
[in]baseNumeric base (see print(uint8_t,int)).

Definition at line 198 of file ESP32Logger.cpp.

References print(), and println().

Member Data Documentation

◆ m_initialized

bool ESP32Logger::m_initialized = false
private

true after a successful begin call.

Definition at line 194 of file ESP32Logger.h.

Referenced by begin(), print(), print(), print(), print(), print(), print(), print(), and println().


The documentation for this class was generated from the following files: