Burning OTP using SmartSnippets CLI over JTAG

4 posts / 0 new
Last post
zaz
Offline
Last seen: 3 weeks 1 day ago
Joined: 2017-11-17 18:56
Burning OTP using SmartSnippets CLI over JTAG

Hello,
I am using SmartSnippetsToolbox 5.0.6 with murata evaluation board and custom board. I successfully burned several modules' OTPs through the SmartSnippets GUI.
I want to do the same burning through the cli.
I am using batch file with this commands to burn OTP image and header:
"\SmartSnippetsToolbox.exe" -type booter -chip DA14580-01 -jtag %jtag_SerialNumber% -gpio P0_7 -file programmer_ES5.bin
"\SmartSnippetsToolbox.exe" -type otp -chip DA14580-01 -jtag %jtag_SerialNumber% -gpio P0_7 -cmd write_custom_code -file otpImage.hex -offset 0x0
"\SmartSnippetsToolbox.exe" -type otp -chip DA14580-01 -jtag %jtag_SerialNumber% -gpio P0_7 -cmd write_header -file otpHeader.hex

The problem that burning process failing all the time on OTP image stage.
Log output:

Launching SmartSnippets Toolbox v 5.0.6.2196
Found SW-DP with ID 0x0BB11477
No AP preselected. Assuming that AP[0] is the AHB-AP
AP-IDR: 0x04770021, Type: AHB-AP
AHB-AP ROM: 0xE00FF000 (Base addr. of first ROM table)
Found Cortex-M0 r0p0, Little endian.
FPUnit: 4 code (BP) slots and 0 literal slots
CoreSight components:
ROMTbl[0] @ E00FF000
ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCS
ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 000BB00A DWT
ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
BTLE device selected.
Using default baudrate: 57600 Bd.
Read 29372 bytes from file otpImage.hex.
29672 bytes read.
Started burning memory with 29672 bytes of data at address 0x40000.
OTP Memory burning failed.

Thanks

Device: 
MHv_Dialog
Offline
Last seen: 27 min 23 sec ago
Staff
Joined: 2013-12-06 15:10
This may be a dumb question,

This may be a dumb question, but did you connect the programming voltage to VPP (6.75V)?

/MHv

zaz
Offline
Last seen: 3 weeks 1 day ago
Joined: 2017-11-17 18:56
Finally I found the root case

Finally I found the root case for issue.
As can be seen from my previous post, I am using newer SmartSnippetsToolbox version - 5.0.6. with programmer_ES5.bin file.

1. New SmartSnippets versions doesn't support this .bin file. In addition I didn't knew, that JTAG booter using different .bin file than UART booter.
2. For JTAG programming I must to use jtag_programmer.bin file only, from same SmartSnippets version.
3. In new SmartSnippets versions I must to add additional keyword [-firmware] for OTP write_custom_code/write_header commands.

P.S. It will be nice to have a single tutorial or an application note, that explains with examples how to program OTP memory from CLI.

Thanks,
Zaz.

MHv_Dialog
Offline
Last seen: 27 min 23 sec ago
Staff
Joined: 2013-12-06 15:10
Great that you managed to

Great that you managed to find the solution. Thanks for posting your solution, this will undoubtedly help others moving forward.

The CLI approach is not the preferred method when it comes to programming devices - whether at the development stage or in production. You may have good reasons for not using the SmartSnippets GUI or the PLT, but I hope that you at least have considered those.

I have asked the team to consider a tutoral as you propose. I think this would be a great addition to our support material. 

/MHv