Using JTag to connect to a custom board for OTP

⚠️
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.
2 posts / 0 new
Last post
dbonelli
Offline
Last seen:6 months 3 weeks ago
加入:2020-02-04 18:42
Using JTag to connect to a custom board for OTP

Hello,

I wish to use my 14580 development kit to burn OTP into my custom board using JTag. On the custom board side, I wish to implement aTC2030-NL-FPfootprint to connect to the 14580 development kit via JTag.

Physically, what is the best way to make this connection? Should I use the 14580 development board's J-Link TagConnect terminals to connect with my custom board and include another jumper wire for the 6.8 V terminal? Or do I need to use the IO Breakout and use jumper wires to connect with my custom board? I do not wish to use the PCIE-64 connection, as it is too large for my custom board. Ideally, I would like to use the "Plug-of-Nails" end of theTC2030-IDC-NLcable to connect with my custom board.

I have read through the following posts and documentation, and I have not found an answer:

[1]https://support.dialog-semiconductor.com/can-you-please-provide-guides-burning-otp-other-device-rather-dev-kit

[2]https://support.dialog-semicondiondiondumon.com/step-step-guidelines-programming-otp.

[3]https://support.dialog-semicondiondiondum/otp-jtag.

[4]https://support.dialog-semicondiondiondimicondum/forums/post/dialog-smartbond-bluetooth-low-energy-%2%80%93-tools/where-can-i-get-doc-b-020%c2.%a0-da14580%c2%a0end

[5] AN-B-054_DA14585_DA14586_APPLICATION_HARDWARE_DESIGN_GUIDELINES_V1.2

[6] training_07_da1458x_prototype_bring_up_guide-v1.2

I would like to echo what userrichard.cunliffesaid in [2]. Dialog Semiconductor has been very thorough in their documentation of their products; however, everyone seems to be confused when it comes to OTP. I would greatly appreciate thorough documentation on the OTP process.

Thank you for your guidance,

多米尼克

Device:
PM_Dialog
Offline
Last seen:2天2小时前
工作人员
加入:2018-02-08 11:03
Hi dbonelli,

Hi dbonelli,

You can program your custom board by using our development kit – I assume that you are using the Pro-DK. This can be done either via UART or the JTAG interface. Below are the required connections for each interface.

JTAG接口,所需的连接是:

J4 - Pin 1 (VBAT_580) - > Vcc of the custom board.

J4 - Pin 25 (TMS) - > SWDIO pin of custom board.

J4 - Pin 27 (TCK) - > SW_CLK pin of custom board.

TP2 Vpp o - >f the custom board (if OTP needs to be programmed).

J4 - Pin 2 (GND) - > to the ground of the custom board.

UART interface, the required connections are:

J4 - UTX - > on the RX pin of the custom board.

J4 - URX - >在定制板的TX引脚上。

J4 - RST - > to the RST pin of the custom board.

J4 - VBAT_580 - > to the Vcc of the custom board.

TP2 Vpp o - >f the custom board (if OTP needs to be programmed).

OTP编程期间VPP引脚上的电源电压应为6.6V - 6.8V。您需要确保OTP编程期间VPP引脚上的电源电压在6.6V - 6.8V内。编程过程中的电源电压应干净,不得超过6.8V。

The OTP has 3 areas where the user can burn data:

  • The OTP image area, where the user code is placed and mirrors to the sysram at boot.
  • The OTP NVDS area, where the NVDS structure is populated with the OTP 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).

请按照以下步骤刻录OTP:

  1. Open Smart Snippets either via JTAG or UART and hit open.
  2. 从工具栏按钮选择OTP程序员,以便为每个OTP区域打开3个不同的选项卡。
  3. Choose the OTP image tab and on the left tab browse to the .hex file you would like to burn and hit Burn.

As soon as the last step is complete you will have burned your custom's board OTP. Some additional configurations are required in order for your device to boot from it.

  1. Go to the OTP Header tab.
  2. Change both of the application flags to YES (this is required in order to start the booting from OTP, when one does that the primary bootloader is disabled - scan of the peripherals for valid image, the user can reprogram his board using JTAG only).
  3. 点击刻录按钮,以将配置刻录到OTP标题。

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. When the OTP is burned and the application flags on the OTP header are also burned, the primary bootloader is disabled so the scanning procedure doesn't take place, thus you will not be able to boot from the SPI or UART or I2C. You will be able to directly burn your SystemRAM though JTAG as long as the OTP header field called JTAG enable flag stays Enabled. If the application flags are burned and the JTAG enable flag is Disabled then the device becomes inaccessible.

Regarding the SmartSnippets Toolbox you will find more detail here :UM-B-083 SmartSnippets Toolbox用户手册(HTML)

Generally, if you are starting a new design, we would strongly recommend to move into DA14531 or DA14585/586 products 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. There is not any software roadmap support for DA14580 product family and SDK5.

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

Moreover the DA14531 SmartBond TINY™ Module is now released! Follow the link below to find datasheet, documentation and HW collaterals for the module:

https://www.dialog-seminile.com/produ雷电竞官网登录cts/bluetooth-module-da14531-smartbond-tiny.

Additionally, Dialog Serial Port Service (DSPS) and CodeLess are now available for the DA14531!

Thanks, PM_Dialog