cryptnox-sdk-arduino 1.0.0
Arduino library for Cryptnox Hardware Wallet
Loading...
Searching...
No Matches
ArduinoLoggerAdapter Class Reference

CW_Logger implementation wrapping Arduino's HardwareSerial. More...

#include <ArduinoLoggerAdapter.h>

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

Public Member Functions

 ArduinoLoggerAdapter ()
 Construct an adapter that writes to the primary Serial.
 ArduinoLoggerAdapter (HardwareSerial *serial)
 Construct an adapter targeting a specific HardwareSerial.
 ~ArduinoLoggerAdapter () override=default
 ArduinoLoggerAdapter (const ArduinoLoggerAdapter &)=delete
ArduinoLoggerAdapteroperator= (const ArduinoLoggerAdapter &)=delete
CW_Logger interface
bool begin (unsigned long baudRate=115200UL) override
 Open the wrapped HardwareSerial at the given baud rate.
void print (const __FlashStringHelper *str) override
 Forwards to HardwareSerial::print(F-string).
void print (const char *str) override
 Forwards to HardwareSerial::print(const char*).
void print (char c) override
 Forwards to HardwareSerial::print(char).
void print (uint8_t value, int base=DEC) override
 Forwards to HardwareSerial::print(uint8_t, base).
void print (uint16_t value, int base=DEC) override
 Forwards to HardwareSerial::print(uint16_t, base).
void print (uint32_t value, int base=DEC) override
 Forwards to HardwareSerial::print(uint32_t, base).
void print (int value, int base=DEC) override
 Forwards to HardwareSerial::print(int, base).
void println () override
 Emits a CR/LF.
void println (const __FlashStringHelper *str) override
 Forwards then CR/LF.
void println (const char *str) override
 Forwards then CR/LF.
void println (char c) override
 Forwards then CR/LF.
void println (uint8_t value, int base=DEC) override
 Forwards then CR/LF.
void println (uint16_t value, int base=DEC) override
 Forwards then CR/LF.
void println (uint32_t value, int base=DEC) override
 Forwards then CR/LF.
void println (int value, int base=DEC) override
 Forwards then CR/LF.
Public Member Functions inherited from CW_Logger
virtual ~CW_Logger ()

Private Attributes

HardwareSerial * _serial
 Non-owning pointer to the wrapped HardwareSerial.

Detailed Description

CW_Logger implementation wrapping Arduino's HardwareSerial.

Lets CryptnoxWallet and CW_SecureChannel emit debug traces through the standard Arduino Serial API. By default the adapter wraps the primary Serial object, but any HardwareSerial instance can be injected — useful on the UNO R4 where Serial1 is exposed on a separate connector.

Example
ArduinoLoggerAdapter logger; // wraps Serial
ArduinoLoggerAdapter logger1(&Serial1); // wraps Serial1
logger.begin(115200);
ArduinoLoggerAdapter()
Construct an adapter that writes to the primary Serial.
bool begin(unsigned long baudRate=115200UL) override
Open the wrapped HardwareSerial at the given baud rate.
Warning
In production firmware, switch to NullLoggerAdapter — when CW_DEBUG_LOGGING is set the SDK emits raw APDUs and (briefly) PIN-related debug traces on the serial port (LOW-03). The NullLoggerAdapter route guarantees nothing reaches the UART regardless of compile-time flags.
Examples
BasicUsage.ino, Connect.ino, Sign.ino, UsdcSigning.ino, and VerifyPin.ino.

Definition at line 48 of file ArduinoLoggerAdapter.h.

Constructor & Destructor Documentation

◆ ArduinoLoggerAdapter() [1/3]

ArduinoLoggerAdapter::ArduinoLoggerAdapter ( )

Construct an adapter that writes to the primary Serial.

Equivalent to ArduinoLoggerAdapter(&Serial). The underlying serial port is not opened — call begin() once early in setup() with the desired baud rate before any log call.

Definition at line 17 of file ArduinoLoggerAdapter.cpp.

References _serial.

Referenced by ArduinoLoggerAdapter(), and operator=().

◆ ArduinoLoggerAdapter() [2/3]

ArduinoLoggerAdapter::ArduinoLoggerAdapter ( HardwareSerial * serial)
explicit

Construct an adapter targeting a specific HardwareSerial.

Parameters
[in]serialPointer to the HardwareSerial to wrap (e.g. &Serial1). Must outlive the adapter; the adapter does not own the underlying object.

Definition at line 21 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ ~ArduinoLoggerAdapter()

ArduinoLoggerAdapter::~ArduinoLoggerAdapter ( )
overridedefault

◆ ArduinoLoggerAdapter() [3/3]

ArduinoLoggerAdapter::ArduinoLoggerAdapter ( const ArduinoLoggerAdapter & )
delete

Member Function Documentation

◆ begin()

bool ArduinoLoggerAdapter::begin ( unsigned long baudRate = 115200UL)
overridevirtual

Open the wrapped HardwareSerial at the given baud rate.

Thin wrapper over HardwareSerial::begin(). Must be called from the sketch's setup() before any log call.

Parameters
[in]baudRateBaud rate to open the port at (default 115200).
Returns
Always true — the underlying Arduino API has no failure channel.

Implements CW_Logger.

Definition at line 25 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ operator=()

ArduinoLoggerAdapter & ArduinoLoggerAdapter::operator= ( const ArduinoLoggerAdapter & )
delete

References ArduinoLoggerAdapter(), and DEC.

◆ print() [1/7]

void ArduinoLoggerAdapter::print ( char c)
overridevirtual

Forwards to HardwareSerial::print(char).

Implements CW_Logger.

Definition at line 32 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ print() [2/7]

void ArduinoLoggerAdapter::print ( const __FlashStringHelper * str)
overridevirtual

Forwards to HardwareSerial::print(F-string).

Implements CW_Logger.

Definition at line 30 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ print() [3/7]

void ArduinoLoggerAdapter::print ( const char * str)
overridevirtual

Forwards to HardwareSerial::print(const char*).

Implements CW_Logger.

Definition at line 31 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ print() [4/7]

void ArduinoLoggerAdapter::print ( int value,
int base = DEC )
overridevirtual

Forwards to HardwareSerial::print(int, base).

Implements CW_Logger.

Definition at line 36 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ print() [5/7]

void ArduinoLoggerAdapter::print ( uint16_t value,
int base = DEC )
overridevirtual

Forwards to HardwareSerial::print(uint16_t, base).

Implements CW_Logger.

Definition at line 34 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ print() [6/7]

void ArduinoLoggerAdapter::print ( uint32_t value,
int base = DEC )
overridevirtual

Forwards to HardwareSerial::print(uint32_t, base).

Implements CW_Logger.

Definition at line 35 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ print() [7/7]

void ArduinoLoggerAdapter::print ( uint8_t value,
int base = DEC )
overridevirtual

Forwards to HardwareSerial::print(uint8_t, base).

Implements CW_Logger.

Definition at line 33 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ println() [1/8]

void ArduinoLoggerAdapter::println ( )
overridevirtual

Emits a CR/LF.

Implements CW_Logger.

Definition at line 38 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ println() [2/8]

void ArduinoLoggerAdapter::println ( char c)
overridevirtual

Forwards then CR/LF.

Implements CW_Logger.

Definition at line 41 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ println() [3/8]

void ArduinoLoggerAdapter::println ( const __FlashStringHelper * str)
overridevirtual

Forwards then CR/LF.

Implements CW_Logger.

Definition at line 39 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ println() [4/8]

void ArduinoLoggerAdapter::println ( const char * str)
overridevirtual

Forwards then CR/LF.

Implements CW_Logger.

Definition at line 40 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ println() [5/8]

void ArduinoLoggerAdapter::println ( int value,
int base = DEC )
overridevirtual

Forwards then CR/LF.

Implements CW_Logger.

Definition at line 45 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ println() [6/8]

void ArduinoLoggerAdapter::println ( uint16_t value,
int base = DEC )
overridevirtual

Forwards then CR/LF.

Implements CW_Logger.

Definition at line 43 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ println() [7/8]

void ArduinoLoggerAdapter::println ( uint32_t value,
int base = DEC )
overridevirtual

Forwards then CR/LF.

Implements CW_Logger.

Definition at line 44 of file ArduinoLoggerAdapter.cpp.

References _serial.

◆ println() [8/8]

void ArduinoLoggerAdapter::println ( uint8_t value,
int base = DEC )
overridevirtual

Forwards then CR/LF.

Implements CW_Logger.

Definition at line 42 of file ArduinoLoggerAdapter.cpp.

References _serial.

Member Data Documentation

◆ _serial

HardwareSerial* ArduinoLoggerAdapter::_serial
private

Non-owning pointer to the wrapped HardwareSerial.

Definition at line 107 of file ArduinoLoggerAdapter.h.

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


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