⚠️
Hi there.. thanks for coming to the forums. Exciting news! we’re now in the process of moving to our new forum platform that will offer better functionality and is contained within the main Dialog website. All posts and accounts have been migrated. We’re now accepting traffic on the new forum only - please POST any new threads at//www.wsdof.com/support. We’ll be fixing bugs / optimising the searching and tagging over the coming days.
13 posts / 0 new
Last post
SkyWei5830
Offline
Last seen:1 year 3 months ago
Joined:2019-12-16 11:16
DA14585 Burning OTP Error

Hi, Dialog team,

I tried to burned OTP this week, with Smart Snippets toolbox v5.0.10.2434, and JTAG interface. Smart Snippets toolbox could "detect" my chip and show the message"Detected device: DA14585 on JTAG dongle xxxxx", then I created and opened the burning project, selected the OTP IMAGE file and pressed "Connect"button, message appear on the log as below, the connect action abort.

[INFO General @20-01-06 19:36:36] Found SW-DP with ID 0x0BB11477
[INFO General @20-01-06 19:36:36] No AP preselected. Assuming that AP[0] is the AHB-AP
[INFO General @20-01-06 19:36:36] AP-IDR: 0x04770021, Type: AHB-AP
[INFO General @20-01-06 19:36:36] AHB-AP ROM: 0xE00FF000 (Base addr. of first ROM table)
[INFO General @20-01-06 19:36:36] Found Cortex-M0 r0p0, Little endian.
[INFO General @20-01-06 19:36:36] FPUnit: 4 code (BP) slots and 0 literal slots
[INFO General @20-01-06 19:36:36] CoreSight components:
[INFO General @20-01-06 19:36:36] ROMTbl[0] @ E00FF000
[INFO General @20-01-06 19:36:36] ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCS
[INFO General @20-01-06 19:36:36] ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 000BB00A DWT
(信息一般@20-01-06 19:36:36]ROMTbl [0] [2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
[INFO General @20-01-06 19:36:36] BTLE device selected.
[INFO OTP Image @20-01-06 19:43:29] Header records have been removed from hex file xxxxxxxx.hex.
[INFO OTP Image @20-01-06 19:43:29] Read 62204 bytes from xxxxxxxx.hex.
[ERROR OTP Image @20-01-06 19:43:31] Failed writing value A6 at address 50000012.
[ERROR OTP Image @20-01-06 19:43:31] Failed downloading firmware file to the board.

My board running fine before. I moved the chip previous and solder a new one, and tried to burnning the OTP.

I have tried a few new chips, but the error message all the same. No matter how I try, I fail............

Could you tell me why this message"Failed writing value A6 at address 50000012."appear and what can i do, thank you very much!

Device:
PM_Dialog
Offline
Last seen:1 day 16 hours ago
Staff
Joined:2018-02-08 11:03
Hi SkyWei5830,

Hi SkyWei5830,

Keep in mind that OTP stands for One Time Programmable, thus you can’t erase and re-write the OTP multiple times, but you can only flip the bits that are still set to 0 and turn them to 1. If you would like to burn the OTP, 2 areas must be burnt:

The OTP image area, where the user code is placed and mirrors to the sysram at boot.

The OTP Header area, where flags and specific values that define the operation of the device are placed (more information regarding the values of the OTP Header can be found in the Smart Snippets User guide).

Did you burn the OPT header? In addition. Are you using a custom board or any of our DKs? In addition, if you try to connect with the Flash programmer via JTAG, are you able to connect? Are you able to download FW from the Keil?

Thanks, PM_Dialog

SkyWei5830
Offline
Last seen:1 year 3 months ago
Joined:2019-12-16 11:16
Hi PM_Dialog,

Hi PM_Dialog,

Thanks for reply, I can understand what OTP means. Maybe I didn't make it clear,I use my board, not your DKs. This board has been burnned OTP by my ex-colleague and operated normally. I took my ex-colleague'job this week, I justed want to verify the hex file he gave me is correct by burning OTP to make the board operated normally again.

I removed the original DA14585 on the board, soldered a new DA14585, and then tried to connected JTAG to burn OTP.

Should i need to "Import Header From file" before "Connect" while burnning OTP header? Should I burn OTP image first or OTP header first? I have tried to burn OTA image first and tried to burn OTA header first, but the same error message appear on the log.

I removed the DA14585 and solder a new DA14585....... I tried again and again, but the same error message appear on the log.

My board does not have an external flash, so I can't try to connect with the Flash programmer. I used the source code project to debug online in keil yesterday, the board could operate normally.

Thanks,

SkyWei5830
Offline
Last seen:1 year 3 months ago
Joined:2019-12-16 11:16
Hi PM_Dialog,

Hi PM_Dialog,

我改变了我的电源板,然后燃烧the OTP image. When I click on the "Cnnect" button, there is no error on the log, but then I click on the "burn" button, there is an error as below,

[INFO OTP Image @20-01-07 11:41:54] ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCS
[INFO OTP Image @20-01-07 11:41:54] ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 000BB00A DWT
[INFO OTP Image @20-01-07 11:41:54] ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
[INFO OTP Image @20-01-07 11:41:55] Firmware File C:\Program Files (x86)\SmartSnippetsToolbox\SmartSnippetsToolbox5.0.10\common_resources\SupportPackages\DA14585-586\toolbox_resources/common/jtag_programmer.bin has been selected for downloading.
[INFO OTP Image @20-01-07 11:41:55] Successfully downloaded firmware file to the board.
[WARNING OTP Image @20-01-07 11:42:03] 4 zero bytes added at the end of file to word align data
[ERROR OTP Image @20-01-07 11:42:03] Failed clearing memory address 7FC7C08.
[ERROR OTP Image @20-01-07 11:42:03] Failed clearing memory address 7FC7C08.
[ERROR OTP Image @20-01-07 11:42:03] Failed reading memory.

So is there a high power requirement when burning OTP via JTAG? Is there anything else I should pay attention to when I burn?

I feel I'm not far from success, thank you very much.

Attachment:
PM_Dialog
Offline
Last seen:1 day 16 hours ago
Staff
Joined:2018-02-08 11:03
Hi SkyWei5830,

Hi SkyWei5830,

If I am able to understand correctly, in the custom board that you are using, is the OTP already burnt by your ex-colleague? Can you please try it in board that the OTP is not burnt? In addition, I would suggest to connect over UART in the SmartSnippets Toolbox instead of JTAG. You will be able to directly burn your SystemRAM though JTAG as long as the OTP header field named JTAG enable flag stays Enabled. If the application flags are burned and the JTAG enable flag is Disabled then the device becomes inaccessible.

Thanks, PM_Dialog

SkyWei5830
Offline
Last seen:1 year 3 months ago
Joined:2019-12-16 11:16
Thanks for your reply!

Thanks for your reply!

I have tried to connect over UART instead of JTAG, In the process of burnning OTP, when message"Please press the hardware reset button on the board to start the download process."appeared, I pressed the reset button on the board, and I confirm the reset pin has got high, but DA14585 reset was not triggered, Error message was showed as below on the log, the burnning processing aborted.

[INFO OTP Image @20-01-08 09:24:49] Header records have been removed from hex file ev_nb_key3_5.hex.
[INFO OTP Image @20-01-08 09:24:49] Read 62204 bytes from file ev_nb_key3_5.hex.
[INFO OTP Image @20-01-08 09:24:51] Firmware File C:\Program Files (x86)\SmartSnippetsToolbox\SmartSnippetsToolbox5.0.10\common_resources\SupportPackages\DA14585-586\toolbox_resources/common/flash_programmer.bin has been selected for downloading.
[INFO OTP Image @20-01-08 09:24:51] Connection to COM10 port has successfully opened.
[INFO OTP Image @20-01-08 09:24:51] Started download procedure...
[ACTION OTP Image @20-01-08 09:24:52] Please press the hardware reset button on the board to start the download process.
[ERROR OTP Image @20-01-08 09:25:07] Timeout: Reset signal not detected for more than 16000 msecs.
[INFO Booter @20-01-08 09:25:07] Successfully disconnected from port COM10.
[ERROR OTP Image @20-01-08 09:25:07] Failed downloading firmware file to the board.

thanks.

PM_Dialog
Offline
Last seen:1 day 16 hours ago
Staff
Joined:2018-02-08 11:03
Hi SkyWei5830,

Hi SkyWei5830,

Can you please indicate if the OTP and OTP Header are already burnt from your ex-colleague? Have you tried to download FW directly through the Keil? Or have you tried to burn the SPI flash? If you try it with another DK, are you able to replicate this issue?

Thanks, PM_Dialog

SkyWei5830
Offline
Last seen:1 year 3 months ago
Joined:2019-12-16 11:16
Hi PM_Dialog,

Hi PM_Dialog,

yes, OTP and OTP header have been burned by my ex-colleague and our custom board worked well before. I just removed the previous DA14585 on the board and solder a brand new one, then attempted to burn OTP. No matter how I try, I have failed. So far I have tried 6 DA14585s, 3 kinds of Jlink tools,but I have not succeeded in the end.........This is my first contact with a design based on DA14585, and my ex-colleague did not leave any burnning instructions for me, so I can only explore it by your help^^^^^^^^

Just now I soldered a brand new DA14585, connected the power supply and Jlink tool, turned on the SmartSnippets Toolbox, and started to burn OTP through the JTAG interface again. I clicked Conncet, no error was reported, and then I clicked burn, and the following error message was displayed, I failed again.....

[INFO General @20-01-10 17:56:21] Found SW-DP with ID 0x0BB11477
(信息一般@20-01-10 17:56:21]没有美联社preselected. Assuming that AP[0] is the AHB-AP
[INFO General @20-01-10 17:56:21] AP-IDR: 0x04770021, Type: AHB-AP
[INFO General @20-01-10 17:56:21] AHB-AP ROM: 0xE00FF000 (Base addr. of first ROM table)
[INFO General @20-01-10 17:56:21] Found Cortex-M0 r0p0, Little endian.
[INFO General @20-01-10 17:56:21] FPUnit: 4 code (BP) slots and 0 literal slots
[INFO General @20-01-10 17:56:21] CoreSight components:
[INFO General @20-01-10 17:56:21] ROMTbl[0] @ E00FF000
[INFO General @20-01-10 17:56:21] ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCS
[INFO General @20-01-10 17:56:21] ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 000BB00A DWT
[INFO General @20-01-10 17:56:21] ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
[INFO General @20-01-10 17:56:21] BTLE device selected.
[INFO OTP Image @20-01-10 17:56:34] Header records have been removed from hex file xxxx.hex.
[INFO OTP Image @20-01-10 17:56:34] Read 62204 bytes from file ev_nb_key3_5.hex.
[INFO OTP Image @20-01-10 17:56:38] Found SW-DP with ID 0x0BB11477
[INFO OTP Image @20-01-10 17:56:38] Using pre-configured AP[0] as AHB-AP to communicate with core
[INFO OTP Image @20-01-10 17:56:38] AP-IDR: 0x04770021, Type: AHB-AP
[INFO OTP Image @20-01-10 17:56:38] AHB-AP ROM: 0xE00FF000 (Base addr. of first ROM table)
[INFO OTP Image @20-01-10 17:56:38] Found Cortex-M0 r0p0, Little endian.
[INFO OTP Image @20-01-10 17:56:38] FPUnit: 4 code (BP) slots and 0 literal slots
[INFO OTP Image @20-01-10 17:56:38] CoreSight components:
[INFO OTP Image @20-01-10 17:56:38] ROMTbl[0] @ E00FF000
[INFO OTP Image @20-01-10 17:56:38] ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB008 SCS
[INFO OTP Image @20-01-10 17:56:38] ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 000BB00A DWT
[INFO OTP Image @20-01-10 17:56:38] ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 000BB00B FPB
[INFO OTP Image @20-01-10 17:56:38] Firmware File C:\Program Files (x86)\SmartSnippetsToolbox\SmartSnippetsToolbox5.0.10\common_resources\SupportPackages\DA14585-586\toolbox_resources/common/jtag_programmer.bin has been selected for downloading.
[INFO OTP Image @20-01-10 17:56:39] Successfully downloaded firmware file to the board.
[WARNING OTP Image @20-01-10 17:56:46] 4 zero bytes added at the end of file to word align data
[INFO OTP Image @20-01-10 17:56:46] Read 32768 bytes with offset 00
[INFO OTP Image @20-01-10 17:56:46] Read 29440 bytes with offset 0
[INFO OTP Image @20-01-10 17:56:46] Reading has finished. Read 62208 bytes.
[INFO OTP Image @20-01-10 17:56:46] Reading memory contents...
[INFO OTP Image @20-01-10 17:56:49] Started burning memory with 62208 bytes of data at address 0x7F80000.
[INFO OTP Image @20-01-10 17:56:50] Memory burning completed successfully. Chunk 1 of 2
[ERROR OTP Image @20-01-10 17:56:50] Failed writing length at address 7FC7C02.
[ERROR OTP Image @20-01-10 17:56:50] Memory burning failed.

Can you tell me what this warning message means? Is this warning message causing the programming failure?

[WARNING OTP Image @20-01-10 17:56:46] 4 zero bytes added at the end of file to word align data

I have already placed an order to buy your DKs, and it is on the way to China, take about 2 weeks,maybe I can verify it better after I receive DKs.

So tired these weeks, I thought that burning OTP was a very simple thing, but it was not. I don't get much information about DA14585 on the Internet in China, most of them are about DA14580, and there is almost no information about how to burn OTP through JTAG interface.

but I also gained new knowledge from you ,Thank you for your help and guidance.

PM_Dialog
Offline
Last seen:1 day 16 hours ago
Staff
Joined:2018-02-08 11:03
Hi SkyWei5830,

Hi SkyWei5830,

This means that you are not able to burn the OTP. Can you please export the OTP header and share it with me? You can export it thought the SmartSnippets toolbox. Please try it in a new device where the OTP is not burnt. Did you try to download FW thought the Keil?

Thanks, PM_Dialog

SkyWei5830
Offline
Last seen:1 year 3 months ago
Joined:2019-12-16 11:16
Hi PM_Dialog,

Hi PM_Dialog,

You could read the OTP header on the attachment. The devices I bought have already been tried out. I will buy new ones and try again. I don't have an external flash on the board, can I download the firmware directly thought keil? I thought keil could only be used for online debugging and let the code run in the ram. I have tried online debugging, the code runs normally in ram.

OTP burning is done after the code debugging is completed and the product design is completed. This work is usually done by less-professional personnel, so I think, can I have a simpler and more understandable operation guide?

Thanks, SkyWei5830

Attachment:
PM_Dialog
Offline
Last seen:1 day 16 hours ago
Staff
Joined:2018-02-08 11:03
Hi SkyWei5830,

Hi SkyWei5830,

I would suggest you to try it in a board that the OTP / OTP header are not burnt. Generally the customers use the OTP in their final product, and not for debugging/educational scopes. Yes, you can download FW to System-RAM directly through Keil. Press the “Start/Stop Debug Session” button twice and the FW will be downloaded into the System-RAM.

如果你开始一个新的设计,我们将strongly recommend to move into DA14531 and SDK6.0.12, as it is much more improved. We have a lot of code examples and improved documentation, and there is also software roadmap support. Please checkout the DA14531 support portal:

//www.wsdof.com/products/connectivity/bluetooth-low-energy/products/da14531

Thanks, PM_Dialog

SkyWei5830
Offline
Last seen:1 year 3 months ago
Joined:2019-12-16 11:16
Hi PM_Dialog,

Hi PM_Dialog,

Thank you! Thanks for your advice!

PM_Dialog
Offline
Last seen:1 day 16 hours ago
Staff
Joined:2018-02-08 11:03
Hi SkyWei5830,

Hi SkyWei5830,

Thanks for accepting my answer. I you have any follow up question, please create a new forum thread.

Thanks, PM_Dialog