Skip to content

MiPDebug

github-actions[bot] edited this page Aug 10, 2026 · 9 revisions

Class MiPDebug

Telnet and Serial debug server for real-time remote diagnostics.

Detailed Description

Inherits from Arduino's Print class to support formatted output methods (print, println, printf) over telnet network connections and optional hardware Serial.

Members & Functions

Type Signature Description
variable const uint8_t PROFILER
variable const uint8_t VERBOSE
variable const uint8_t DEBUG
variable const uint8_t INFO
variable const uint8_t WARNING
variable const uint8_t ERROR
variable const uint8_t ANY
function void begin(String hostname, uint8_t startingDebugLevel=VERBOSE) Initializes and starts the telnet debug server.
function void stop() Stops the telnet debug server and disconnects active clients.
function void handle() Service loop handler for maintaining telnet client connections and processing commands.
function void setSerialEnabled(bool enable) Configures whether debug messages are echoed to HardwareSerial.
function void setResetCmdEnabled(bool enable) Configures whether the telnet server allows remote system reset commands.
function void setHelpProjectsCmds(String help) Sets custom project help text displayed when a telnet client sends the help command.
function void setCallBackProjectCmds(void(*callback)()) Registers a callback handler for custom sketch/project telnet commands.
function String getLastCommand() Retrieves the last command string received from the connected telnet client.
function void clearLastCommand() Clears the internal last-command buffer string.
function void showTime(bool show) Configures whether timestamps (in milliseconds) are prepended to log outputs.
function void showProfiler(bool show, uint32_t minTime=0) Configures execution profiler logging between consecutive prints.
function void showDebugLevel(bool show) Configures whether debug severity tags ([INFO], [DEBUG], etc.) are prepended to messages.
function void showColors(bool show) Configures whether ANSI color codes are included in telnet log output.
function void autoProfilerLevel(uint32_t millisElapsed) Automatically switches logging level to PROFILER if elapsed time exceeds threshold.
function void setFilter(String filter) Applies a text filter string to debug outputs.
function void setNoFilter() Removes any active text filter string.
function bool isActive(uint8_t debugLevel=DEBUG) Checks if logging output is active for the specified debug level.
function size_t write(uint8_t byte) override Writes a single byte to active debug channels (Stream/Print override).
function size_t write(const uint8_t *buffer, size_t size) override Writes a byte buffer to active debug channels (Stream/Print override).
function String expand(String string) Helper method to expand CR/LF control characters into literal "\r" and "\n" strings.

Clone this wiki locally