<?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>nRF24L01 CRC calculation</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/77904/nrf24l01-crc-calculation</link><description>Hi, 
 
 In working with nRF24L01, I am facing a problem with nRF24L01 CRC calculation. In the spec, it is stated that CRC calculation includes address, control field and data. For address and data, the length is always in byte. While for control field</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 02 Aug 2021 10:54:14 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/77904/nrf24l01-crc-calculation" /><item><title>RE: nRF24L01 CRC calculation</title><link>https://devzone.nordicsemi.com/thread/322837?ContentTypeID=1</link><pubDate>Mon, 02 Aug 2021 10:54:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6100e569-bde6-4584-9ea7-7fc6ac4ffd95</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi Dai&lt;/p&gt;
&lt;p&gt;That&amp;#39;s correct. I will consider the case resolved then &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF24L01 CRC calculation</title><link>https://devzone.nordicsemi.com/thread/322658?ContentTypeID=1</link><pubDate>Fri, 30 Jul 2021 11:48:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d6ff9da3-67de-46fa-be5d-db7cf19aafa2</guid><dc:creator>Dai</dc:creator><description>&lt;p&gt;Hi Torbj&amp;oslash;rn，&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks for your confirmation. So CRC calcualtion here is NOT byte based. &lt;/p&gt;
&lt;p&gt;Best Regards,&lt;/p&gt;
&lt;p&gt;Dai&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="fontstyle0"&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF24L01 CRC calculation</title><link>https://devzone.nordicsemi.com/thread/322500?ContentTypeID=1</link><pubDate>Thu, 29 Jul 2021 14:00:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6de635ac-d1ef-4c1c-ba04-697d55abe8bd</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi Dai&lt;/p&gt;
&lt;p&gt;There should be no padding of the CRC field, no. It is true that the generated CRC is either 1 or 2 bytes long, but this doesn&amp;#39;t mean that the CRC calculation itself is byte based.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF24L01 CRC calculation</title><link>https://devzone.nordicsemi.com/thread/322333?ContentTypeID=1</link><pubDate>Thu, 29 Jul 2021 02:07:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9cedd86a-bf29-49db-82c6-2a50828a8f23</guid><dc:creator>Dai</dc:creator><description>&lt;p&gt;Hi Torbj&amp;oslash;rn,&lt;/p&gt;
&lt;p&gt;Thanks for your reply.&amp;nbsp; Can you please refer to the wiki page below for the CRC function I am using?&lt;/p&gt;
&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/Computation_of_cyclic_redundancy_checks"&gt;https://en.wikipedia.org/wiki/Computation_of_cyclic_redundancy_checks&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Actually, taking a closer look at the spec, I find the granularity of CRC HW implementation of nRF24L01 is also byte instead of bit. So the question is then related to the padding of the 9-bit control field. It looks the control field is padded to 16-bit before CRC calculation. Is this a correct understanding? If yes, it would be much helpful if you can specify how the padding is done?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best Regards,&lt;/p&gt;
&lt;p&gt;Dai&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF24L01 CRC calculation</title><link>https://devzone.nordicsemi.com/thread/322018?ContentTypeID=1</link><pubDate>Tue, 27 Jul 2021 11:05:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d62baa19-76d9-4d07-9dda-fb0c8fec3252</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi Dai&lt;/p&gt;
&lt;p&gt;Can you show me the CRC function you are using today?&lt;/p&gt;
&lt;p&gt;Normally the byte based algorithms will loop through every single bit in each byte, and as such they should be relatively easy to update for a different bit size.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>