I've noticed a discrepancy in the AN-1160 specification and the CM3WSD software with regards to the verify command. If I understand correctly the AN-1160 spec says that the verify command uses two separate messages. The first message should contain the value 0x80000000 in the value field and the data bytes field should contain the last 4 bytes of the page to be verified. The second message should contain the starting address of the page and the result of the sign command. Both message seem to contain the same value in the data bytes field. Neither of which correspond to the last 4 bytes of my data. Looking at the hex file I'm using (see attachment), the last 4 bytes of data for the first page should be on line 33. With a value of 0x40005000. Thats what is in the Hex file, and that's what I see in flash memory through the memory view window in Keil uVision. Correct me If I'm wrong but the first message should always send the last 4 bytes of the page which is before the checksum field in the hex file on every data record line that is a multiple of 16. So the last 4 bytes of page 1 should be 0x40005000 on line 33 of my hex file. The last 4 bytes of page 2 should be 0x4604B5F0. Is this not correct? So is the CM3WSD application sending the signature in both commands? Also attached is a copy of the Flash sign code I am using to calculate the signature. It doesn't seem to match what the CM3WSD function is sending as well, although that could be a problem with my code. I'm not sure yet. Any help you could provide would be greatly appreciated. I'm using the Using the ADUCM360MKZ development kit.