Debugging Utilities#

EmberZNet debugging utilities.

See ember-debug.h for source code.

Functions#

void
emberDebugAssert(const char *filename, int linenumber)

Print the filename and line number to the debug serial port.

void
emberDebugMemoryDump(uint8_t *start, uint8_t *end)

Print the contents of RAM to the debug serial port.

void
emberDebugBinaryPrintf(const char *formatString,...)

Print binary data to the debug channel.

void
emDebugSendVuartMessage(uint8_t *buff, uint8_t len)

Send VUART data out the debug channel.

void
emberDebugError(EmberStatus code)

Print an EmberStatus return code to the serial port.

bool

Turn off all debug output.

void

Restore the state of the debug output.

void
emberDebugPrintf(const char *formatString,...)

Prints text debug messages.

Macros#

#define

This function is obsolete and no longer required to initialize the debug system.

#define

Function Documentation#

emberDebugAssert#

void emberDebugAssert (const char *filename, int linenumber)

Print the filename and line number to the debug serial port.

Parameters
N/Afilename

The name of the file where the assert occurred.

N/Alinenumber

The line number in the file where the assert occurred.


Definition at line 54 of file stack/include/ember-debug.h

emberDebugMemoryDump#

void emberDebugMemoryDump (uint8_t *start, uint8_t *end)

Print the contents of RAM to the debug serial port.

Parameters
N/Astart

The start address of the block of RAM to dump.

N/Aend

The end address of the block of RAM to dump (address of the last byte).


Definition at line 63 of file stack/include/ember-debug.h

emberDebugBinaryPrintf#

void emberDebugBinaryPrintf (const char *formatString,...)

Print binary data to the debug channel.

Parameters
N/AformatString

A string of conversion specification characters describing the arguments to be printed.

N/A

The arguments to be printed.

This function does not use the normal printf format conventions. To print text debug messages, use emberDebugPrintf(). The format string must contain only these conversion specification characters:

  • B - uint8_t value.

  • W - uint16_t value, printed least significant byte first.

  • D - uint32_t value, printed least significant byte first.

  • F - pointer to null terminated string in Flash (const char *).

  • xxxp - pointer to RAM, length is xxx (max 255).

  • lp - pointer to RAM, length is uint8_t argument.

  • xxxf - pointer to Flash (const char *), length is xxx (max 255).

  • lf - pointer to Flash (const char *), length is uint8_t argument.

  • b - EmberMessageBuffer.

Examples:

emberDebugBinaryPrintf("BWD", status, panId, channelMask);
emberDebugBinaryPrintf("F8p", "string example", eui64);
emberDebugBinaryPrintf("lp64fb", length, bytes, dataTable, buffer);

Definition at line 91 of file stack/include/ember-debug.h

emDebugSendVuartMessage#

void emDebugSendVuartMessage (uint8_t *buff, uint8_t len)

Send VUART data out the debug channel.

Parameters
N/Abuff

A pointer to the data to send.

N/Alen

The length of the data to send.


Definition at line 99 of file stack/include/ember-debug.h

emberDebugError#

void emberDebugError (EmberStatus code)

Print an EmberStatus return code to the serial port.

Parameters
N/Acode

The EmberStatus code to print.


Definition at line 106 of file stack/include/ember-debug.h

emberDebugReportOff#

bool emberDebugReportOff (void)

Turn off all debug output.

Parameters
N/A

Returns

  • The current state (true for on, false for off).


Definition at line 112 of file stack/include/ember-debug.h

emberDebugReportRestore#

void emberDebugReportRestore (bool state)

Restore the state of the debug output.

Parameters
N/Astate

The state returned from emberDebugReportOff(). This is done so that debug output is not blindly turned on.


Definition at line 119 of file stack/include/ember-debug.h

emberDebugPrintf#

void emberDebugPrintf (const char *formatString,...)

Prints text debug messages.

Parameters
N/AformatString

Takes the following:

N/A

%%

Percent sign

%c

Single-byte char

%s

RAM string

%p

Flash string (does not follow the printf standard)

%u

Two-byte unsigned decimal

%d

Two-byte signed decimal

%x, %%2x, %%4x

1-, 2-, 4-byte hex value (always 0 padded; does not follow the printf standard)


Definition at line 138 of file stack/include/ember-debug.h

Macro Definition Documentation#

emberDebugInit#

#define emberDebugInit
Value:
(port)

This function is obsolete and no longer required to initialize the debug system.


Definition at line 42 of file stack/include/ember-debug.h

DEBUG_ROUTINES_PRESENT#

#define DEBUG_ROUTINES_PRESENT

Definition at line 46 of file stack/include/ember-debug.h