I am writing code for a standalone production programmer for the CC8520 chips and am running into problems with communication. I can successfully execute a BOOT_RESET and read status word of 0x8021 (waiting for BL_UNLOCK_SPI()). When I issue the BL_UNLOCK_SPI() command, however, I always read status of 0x0022 (unlocking failed) afterward. I can't find what I might be doing wrong with this. I have observed the BL_UNLOCK_SPI() sequence on a 'scope and have verified the correct bit-sequence is being issued. I have tried various delays after issuing the unlock command before reading the status word, as well as looping to periodically check the status word, but I always read 0x0022. Has anyone else encountered such a problem?
I sympathize! I think the thing I tried was using the SPI software reset as opposed to the reset pin (or vice versa maybe). One worked better than the other for me (I never figured out why).
Hi Bill,
Can you verify that you are not doing anything after issuing the BOOT_RESET prior to the unlock command?If you can confirm this, can you please post a analyzer capture for the unlock command and if possible also the code that you are using?
We are working on updating our EHIF library code and this will include a example that covers this as well. Hopefully we are able to post this in a few weeks.
Best regards, Kjetil
--PS. Thank you for clicking Verify Answer if this answered your question!