Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob

Steps to program unique ID elements in the OTP of CYW43907

Steps to program unique ID elements in the OTP of CYW43907

Aditi_B
Moderator
Moderator
Moderator
500 replies posted 5 questions asked 250 replies posted

Disclaimer: The provided command in the document is supported with the version of wl tool provided in the current version of WICED SDK. Future releases may/may not support this command.

Question: How can we program custom/unique ID elements in the OTP section of the CYW43907 chip.

Solution: Sometimes, customers want to store custom parameters such as security keys, crypto related parameters in the blank sections of the OTP. This document provides the command and the steps that can be used to do the same for the CYW43907 chip using WICED SDK.

The application to be used is the “mfg_test”( 43xxx_Wi-Fi\apps\test\mfg_test). In ModusToolbox, the application "wifi-mfg-tester"(https://github.com/Infineon/mtb-anycloud-wifi-mfg-tester) serves the same purpose that the manufacturing application does in WICED. The readme provides the instructions to download and use this application. This application makes use of the WL tool utility to program the OTP section.

The command to write to the OTP section is "otpraw" command. The syntax is as follows-

  1. Read - otpraw "bit_no." "no._of_bits"
  2. Write - otpraw "bit_no." "no._of_bits" <data>

Bit no. should be in multiples of 8 and values should be provided in hex. For ex: otpraw 0x0008 8 0x12 means after the 8th bit in the OTP section 0x12(8 bits) value will be programmed.

Please refer to below snapshot where a custom value is programmed - “20230410-0001234”(mfg date and the serial no.) via the WICED application and could see the same after dumping the contents of the OTP. Please see the sequence of data to be programmed via the otpraw command (refer to the snapshot) as once programmed, the OTP bits can't be reverted.

1. Command to program the element

AditiB_81_0-1687504974320.png


This reply to above command shows the command has been successfully written to the OTP section

AditiB_81_1-1687504974324.png


2. Command to verify the contents of the OTP

AditiB_81_2-1687504974326.png
AditiB_81_3-1687504974348.png


References:


  1. AN214842 “CYW4390X OTP Programming and Using Secure Boot and Secure Flash”
  2. “CYW4390X Application Note: OTP Programming and Using Secure Boot and Secure Flash”
0 Likes
97 Views