ZWP500
™
Z-Wave Production Programmer & Tester
www.ExpressControls.com
February 2018
Bringing
the Internet of Things (IoT) to Life
19
I2C device which is then followed by an I2CGet. The I2C data to be sent is dependent on the capabilities of the I2C
device. The data rate is just under 100Kbps which ensures that virtually any I2C device can be supported. If the address
or data fields are not hexadecimal a ‘?’ is returned. If the slave NAKs any byte of the command, a ‘!’ is returned. If the
c
ommand completed without error a ‘*’ is returned.
Example:
I2CSend 21 01 02 03 p
Returns:
*<cr>
This command will send to I2C slave address 0x21 (the first byte is 0x42), the data 0x01, 0x02, 0x03 and then will NOT
issue a STOP at the end of the command.
LEDSet RGB
Set the color of the LED on the ZWP500 enclosure to one of the eight possible colors. Each of the three LEDs (Red,
Green, Blue) can be turned ON with a 1 or off with a 0. The RGB value must be three digits of either 0 or 1. Invalid values
will return a ?. The LED on the ZWP500 can be used to indicate to the operator that the DUT is passed (green) or failed
(red) or that the programming/testing is underway (any of the other colors).
000=OFF
001=BLUE
010=GREEN
100=RED
111=WHITE
Example:
LEDSet 100
Turns on only the RED LED
Returns:
*<cr>
NVMGet SSSSSS:EEEEEE
Most Z-Wave devices utilize an external Non-Volatile Memory to store the Z-Wave routing tables, application specific
variables and an Over-The-Air firmware image. The NVM is most often an Adesto AT25PExx which is fully supported by
the ZWP500. The NVM chip select signal must be connected to the Z-Wave programming cable pin 3 to enable access by
the ZWP500. The NVMGet command reads the NVM starting at address SSSSSS and ending at address EEEEEE. Both
fields must be six hexadecimal characters long and separated by a colon (:) character. The data is returned 16 bytes per
line with the address at the beginning of the line. The NVM manufacturer strings can be returned with the command
NVMGet M. Getting the manufacturing strings is a quick command to verify the NVM is functional. If S or E are not
hexadecimal a ? is returned. If there is an error then a ! is returned.
Example:
NVMGet M<cr>
Returns:
*<cr>
NVM MFG=20 80 12
This is the manufacturing string for the Micron M25PE20.
Example: Get the first 16 bytes of the NVM
NVMGet 000000:00000F
Returns:
*<cr>
@000000= 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F<cr>
NVMSet AAAAAA=DD
The NVMSet command programs the NVM address AAAAAA with the value DD. The address and data fields are in
hexadecimal. All six characters of the address field must be present. If the fields are not hexadecimal a ? is returned. After