<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>How to get nRF51822 serial number and HW ID through SEGGER?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/529/how-to-get-nrf51822-serial-number-and-hw-id-through-segger</link><description>Dear Nordic Developer Zone, 
 At this time, I am able to program nRF51822 chips using the nrfjprog software : great. 
 I plan to use nrfjprog software driven by a custom C# software in production line to program bunch of nRF51822 chips. 
 Of course</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Sat, 31 Dec 2016 21:24:02 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/529/how-to-get-nrf51822-serial-number-and-hw-id-through-segger" /><item><title>RE: How to get nRF51822 serial number and HW ID through SEGGER?</title><link>https://devzone.nordicsemi.com/thread/2755?ContentTypeID=1</link><pubDate>Sat, 31 Dec 2016 21:24:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:89ec8817-f3c7-4e74-a807-588ddb380162</guid><dc:creator>Mikkael</dc:creator><description>&lt;p&gt;As OpenOCD becomes more and more famous, I wonder how to do this on OpenOCD.
Any suggestions?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to get nRF51822 serial number and HW ID through SEGGER?</title><link>https://devzone.nordicsemi.com/thread/2752?ContentTypeID=1</link><pubDate>Mon, 17 Feb 2014 11:41:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:da1449d8-9895-42e2-a9d7-9fc1bb2c0ec4</guid><dc:creator>Ole Morten</dc:creator><description>&lt;p&gt;This is really an unrelated questions, and would be better off posted separately. In practice, no register is guaranteed to be unique, but the DEVICEID registers are randomly generated in production of the chip. By combining these, you have a 64-bit random number, giving fairly small chances of collisions.&lt;/p&gt;
&lt;p&gt;However, if you need something truly guaranteed being unique, this is something you&amp;#39;ll have to manage in your own production, by writing a serial number of some kind to UICR. If you have further questions on this, please post it separately.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to get nRF51822 serial number and HW ID through SEGGER?</title><link>https://devzone.nordicsemi.com/thread/2754?ContentTypeID=1</link><pubDate>Fri, 14 Feb 2014 02:11:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:22945da3-6128-4903-8749-39f403d74d0a</guid><dc:creator>Gerry Ortoli</dc:creator><description>&lt;p&gt;Not sure if this is what you&amp;#39;re getting at, but this works as expected:&lt;/p&gt;
&lt;p&gt;uint32_t deviceID[2];
deviceID[0] = NRF_FICR-&amp;gt;DEVICEID[0];
deviceID[1] = NRF_FICR-&amp;gt;DEVICEID[1];&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to get nRF51822 serial number and HW ID through SEGGER?</title><link>https://devzone.nordicsemi.com/thread/2753?ContentTypeID=1</link><pubDate>Thu, 13 Feb 2014 21:03:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3467b31e-0bc6-44f9-86db-5b5a4c7721ec</guid><dc:creator>Eliot Stock</dc:creator><description>&lt;p&gt;While we&amp;#39;re here, what&amp;#39;s the best way to access these in code? There&amp;#39;s a NRF_FICR_Type struct in nrf51.h, but I don&amp;#39;t see any use of it in the SDK.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to get nRF51822 serial number and HW ID through SEGGER?</title><link>https://devzone.nordicsemi.com/thread/2751?ContentTypeID=1</link><pubDate>Thu, 13 Feb 2014 20:59:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:37b38a85-2055-43f1-a2ae-4bfe26d2c558</guid><dc:creator>Eliot Stock</dc:creator><description>&lt;p&gt;Further to this, if I&amp;#39;m looking for a globally unique identifier for an instance of my product, which is the best field to use? Are these others also options?&lt;/p&gt;
&lt;p&gt;ER[0] 0x080 Encryption root, bit 31-0
ER[1] 0x084 Encryption root, bit 63-32
ER[2] 0x088 Encryption root, bit 95-64
ER[3] 0x08C Encryption root, bit 127-96
IR[0] 0x090 Identity root, bit 31-0
IR[1] 0x094 Identity root, bit 63-32
IR[2] 0x098 Identity root, bit 95-64
IR[3] 0x09c Identity root, bit 127-96&lt;/p&gt;
&lt;p&gt;If I use DEVICEID, do I need to concatenate DEVICEID[0] and DEVICEID[1] in order to get something that&amp;#39;s guaranteed to be unique?&lt;/p&gt;
&lt;p&gt;I&amp;#39;ll be using this in code, not from the Segger, in case that makes any difference.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to get nRF51822 serial number and HW ID through SEGGER?</title><link>https://devzone.nordicsemi.com/thread/2750?ContentTypeID=1</link><pubDate>Mon, 30 Sep 2013 16:59:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ff83a66b-16ed-4b2f-a0d7-ab6c8a67ca36</guid><dc:creator>Marc Nicholas</dc:creator><description>&lt;p&gt;This is very useful as we&amp;#39;re currently designing our production programming setup! :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to get nRF51822 serial number and HW ID through SEGGER?</title><link>https://devzone.nordicsemi.com/thread/2749?ContentTypeID=1</link><pubDate>Fri, 27 Sep 2013 10:05:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:76ddb770-9301-4fb5-8b62-adde9d0536a3</guid><dc:creator>Ole Morten</dc:creator><description>&lt;p&gt;This can be done with the --memrd option. In FICR, there is a CONFIGID and a DEVICEID[0] and DEVICEID[1] register, the first one contain an ID for the hardware in the lower 16 bits, while the DEVICEID registers contain a 64 bit unique ID for the chip. These three registers can for example be read like this:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;
C:\temp&amp;gt;nrfjprog --memrd 0x1000005c --n 12
1000005c  ffff001d 3d31c239  1234c90f           |....9.1=..4.|
Successful...

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;As you can see, the HWID is 0x1d, while the other two words are the DEVICEID. If you instead want to read out the registers used for the Bluetooth address, you should read the DEVICEADDR registers, which are at offset 0xA4 and 0xA8. The offsets are given in table 6 in the nRF51 Reference Manual.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>