- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Is there a comparable solution for setting serial numbers that works with hex files ? The board that I am using is a Cy8ckit-059 PSOC 5LP prototyping kit.
Solved! Go to Solution.
- Labels:
-
PSoC 5LP
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Please go to Find new code examples > UniqueID_Example.
You will find information about its implementation there. The function CyGetUnqiueId() returns a 64 bit unique id with the following details:
Die Y position (xxxxxx, y_loc[7:0])
Die X position (xxxxx, x_loc[7:0])
Die Wafer Number (xxxxxx, wafer_num[7:0])
Die Lot number LSB (xxxxx, lot_lsb[7:0])
Die Lot number MSB (xxxxxx, lot_msb[7:0])
Die production WW (xxxxxx, work_week[7:0])
Die production year and fab (xxxxxx, year[3:0], fab[3:0])
Die Minor Revision number (xxxxxxx, minor[7:0])
Hence, every board will have a unique id.
Regards,
Dheeraj
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You cannot set the serial number, but you can use the provided silicon ID within the chip. Refer to the "System Reference Guide" (Creator Help) and look for CyGetUniqueId() API.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I need the host to be able to identify specific boards when I have multiple copies of the same PSOC board.
How can you use the CyGetUniqueId() to choose a specific board if the VID/PID are the same ?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
That might need some communication between host and slaves.
Alternatively you can use the internal EEProm which contents can be set at programming time.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Please go to Find new code examples > UniqueID_Example.
You will find information about its implementation there. The function CyGetUnqiueId() returns a 64 bit unique id with the following details:
Die Y position (xxxxxx, y_loc[7:0])
Die X position (xxxxx, x_loc[7:0])
Die Wafer Number (xxxxxx, wafer_num[7:0])
Die Lot number LSB (xxxxx, lot_lsb[7:0])
Die Lot number MSB (xxxxxx, lot_msb[7:0])
Die production WW (xxxxxx, work_week[7:0])
Die production year and fab (xxxxxx, year[3:0], fab[3:0])
Die Minor Revision number (xxxxxxx, minor[7:0])
Hence, every board will have a unique id.
Regards,
Dheeraj
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Do you know the web page of the CyGetUnqiueId() example ? I have looked but have
been unable to find anything.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
rseedle,
The code to get the unique silicon ID is very simple:
uint64 uid[1];
CyGetUniqueId((uint32 *)uid);
Len
"Engineering is an Art. The Art of Compromise."