We don’t provide source code to these pre-built functional test applications, such as NodeTest, because they expose sensitive areas of the stack architecture. However, if you need to customize the test behavior of the NodeTest application, or you want similar functionality in a different interface, you can create your own application binary (or incorporate these test features into your existing application to avoid having to load a separate image during the manufacturing test process) by using Ember’s Manufacturing Test Library, known as “mfglib”.
On EZSP Network CoProcessor [NCP] platforms like the EM260 or the EM35x, MfgLib is available as a subset of the serial command set (see command IDs in the 0×83 – 0×8E range), which is described by the EZSP Reference Guide.
On System-on-Chip [SoC] platforms like the EM250 or EM35x, the mfglib library can be found in the EmberZNet build directory and is described in stack/include/mfglib.h.
For an example application that utilizes Mfglib to perform low-level functional testing, see app/mfglib-host in NCP platform releases or app/mfglib in SoC platform releases. These sample applications (and others) are described in the app/sampleApps.html page included in each release.
For more information about RF functional testing and expected test output, please refer to the FCC/ETSI FAQ at Tips for FCC certification on Ember ZigBee chips.
If you’re interested in replicating the functionality of the token-related NodeTest commands (those with the substring “TOK” in their name), please refer to the token APIs in hal/micro/token.h as part of the HAL section of the EmberZNet API Reference.