As Discovery finds CIs, their serial numbers are listed in the Serial Number cmdbserialnumber table so they are easy to identify. Serial number types vary.
From NSIS Wiki
Author: Instructor (talk, contrib)
3DLL Functions
Links
Download v2.0: Stack.zip (70 KB)
Discussion: Forum thread
Description
This NSIS plug-in manipulates either the NSIS stack or its own private stack.
DLL Functions
For NSIS stack (linear)
ns_push_front
Adds an element to the top of the NSIS stack (same as Push).
ns_pop_front
Removes the element from the top of the NSIS stack and puts it in the variable (same as Pop).
ns_push_back
Adds an element to the beginning of the NSIS stack.
ns_read
Finds the NSIS element with index and puts it in the variable.
ns_write
Finds the NSIS element with index and rewrite it.
ns_size
Gets the number of elements in the NSIS stack.
ns_clear
Clears all NSIS stack.
For private plug-in stack (bilinear)
dll_create
Create private stack.
dll_insert
Finds the private element with index and inserts new element in it index.
dll_delete
Finds the private element with index, puts it in the variable and removes it.
dll_read
Finds the private element with index and puts it in the variable.
dll_write
Finds the private element with index and rewrite it.
dll_move
Finds the private element with index and move it to the new index.
dll_exchange
Finds the private elements with indexes and exchanges them.
dll_delete_range
Finds the private elements between indexes and removes.
dll_move_range
Finds the private elements by indexes and move them to the new index.
dll_reverse_range
Reverse range of private elements.
dll_push_sort
Pushs the private element and sorts alphabetically in ascending or descending.
dll_push_sort_int
Pushs the private element and sorts numerically in ascending or descending.
dll_sort_all
Sorts private stack alphabetically in ascending or descending.
dll_sort_all_int
Sorts private stack numerically in ascending or descending.
dll_size
Gets the number of elements in the private stack.
dll_clear
Clears all private stack.
dll_destroy
Destroy private stack.
Other functions
Debug
Debug dialog.
Unload
Unload plugin.
Retrieved from 'https://nsis.sourceforge.io/mediawiki/index.php?title=Stack_plug-in&oldid=23948'
Arduino plugin which lets you get a more meaningful explanation of the stack traces you get on ESP8266/ESP32.
Installation
Make sure you use one of the supported versions of Arduino IDE and have ESP8266/ESP32 core installed.
Download the tool archive from releases page.
In your Arduino sketchbook directory, create tools directory if it doesn't exist yet.
Unpack the tool into tools directory (the path will look like <home_dir>/Arduino/tools/EspExceptionDecoder/tool/EspExceptionDecoder.jar).
Restart Arduino IDE.
Usage
Open a sketch and build it.
Upload the sketch and monitor the Serial port for Exceptions
When you get an Exception, open Tools > ESP Exception Decoder menu item. This will open a new window.
Paste the stack trace into the window's top pane and the result will show in the bottom.
Every time you enter new address or stack trace, the results will refresh
Exception decoded on ESP32
Gedit Highlighting
You can use the StackTrace utility to have gedit highlight the above stack trace for easy viewing. More details can be found here: https://github.com/electronicsguy/ESP8266/tree/master/Misc/StackTrace
Credits and license
Copyright (c) 2015 Hristo Gochkov (ficeto at ficeto dot com)
Licensed under GPL v2 (text)
Command line version
If you are searching for a command line version, look at [EspStackTraceDecoder] (https://github.com/littleyoda/EspStackTraceDecoder). EspStackTraceDecoder is based on the EspExceptionDecoder, but was completely rewritten for the command line usage.