<?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>nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/37753/nrf52-receiving-data-from-24l01-incorrectly</link><description>Hi, 
 
 I am using a 24L01+(as PTX) communicating with a nrf52832(as PRX). 
 I can have these two device communicating, where nrf52832 can receive data from 24L01+. 
 However, the data nrf52832 received is not the exactly same as the data 24L01+ has transmitted</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 28 Aug 2018 09:10:57 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/37753/nrf52-receiving-data-from-24l01-incorrectly" /><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/146064?ContentTypeID=1</link><pubDate>Tue, 28 Aug 2018 09:10:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9c5e5a2e-8c21-47e4-9906-5119125a7ae0</guid><dc:creator>cama</dc:creator><description>&lt;p&gt;LamGELI, if you&amp;#39;re still interested, I found the right nRF52 config for your original nRF24 setup.&lt;/p&gt;
&lt;p&gt;You must set registers as :&amp;nbsp;LFLEN=0;&amp;nbsp;S0LEN=0;&amp;nbsp;S1LEN=0;&amp;nbsp;BALEN=4; MAXLEN=payload_size;&amp;nbsp;STATLEN=payload_size.&lt;/p&gt;
&lt;p&gt;For this, you could modify&amp;nbsp;update_rf_payload_format_esb function on nrf_esb.c SDK.&lt;/p&gt;
&lt;p&gt;With this config, CRC check if good, and you receive right data on payload buffer.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145894?ContentTypeID=1</link><pubDate>Mon, 27 Aug 2018 10:51:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ede7e31c-fdb6-456e-89ac-fc4aaeedce1b</guid><dc:creator>cama</dc:creator><description>&lt;p&gt;Hi. Thank you for reply.&lt;/p&gt;
&lt;p&gt;Same confing as LamGELI. Now I enable EN_AA, and ARC is set to 5. As recommanded.&lt;/p&gt;
&lt;p&gt;I allways get CRC mismatch (CRCSTATUS=0). While nRF24 in ShockBurst&amp;nbsp;mode make right CRC for nRF52 side, but false payload (one bit shifted). I notice that every received radio event, have payload first byte to 0x00 (payload size). Then I enable dynamic payload too, at nRF24 side : Same result.&lt;/p&gt;
&lt;p&gt;Otherwise, I try to make ShockBurst on nRF52 side with S0LEN=0 and S1LEN=0 : same result, CRC errors.&lt;/p&gt;
&lt;p&gt;Maybe&amp;nbsp;&lt;span&gt;LamGELI will have more luck.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145785?ContentTypeID=1</link><pubDate>Sun, 26 Aug 2018 20:53:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:974d24cf-9159-48cc-be35-5b81add9bf20</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You&amp;#39;re using ShockBurst, as you are disabling EN_AA and setting field ARC in register SETUP_RETR to &amp;#39;0&amp;#39;. This will effectively omit the 9 bit &amp;quot;PCF&amp;quot; field from the on-air RF payload, as explained in the nrf24l01+ datasheet in chapter 7.9. The nRF52 library nrf_esb expects to receive in ESB mode, not SB mode.&lt;/p&gt;
&lt;p&gt;The nrf_esb library does not support the legacy &amp;quot;shockburst&amp;quot; mode, unfortunately.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145770?ContentTypeID=1</link><pubDate>Sat, 25 Aug 2018 20:52:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:321fdde3-3aa4-4188-ad10-b6dc62d07034</guid><dc:creator>cama</dc:creator><description>&lt;p&gt;Some news ...&lt;br /&gt;My problem is the opposite. I want to use nrf52 as TX and nrf24 as RX. Of course, it does not work. I found no complete setup or example on the web. Only incomplete, bugged files, only nrf24 side or only nrf52 side.&lt;br /&gt;But after looking to my and your problems, and spending hours on datasheet and nrf_esb, I am conviced that I can make ESB by my own without NRF SDK. I will save time, after loosing a lot !&lt;br /&gt;Not the first time ... I spend days to try to use v13 nrf_log, app_uart, nrf_drv_uart, nrf_serial, ... now I know they are rubish ! For each lib, conclusion is the same : bad design, not API level, bugged, too complicated (risky), poor performances, too immature for some nrfx.&lt;br /&gt;If we needs to learn datasheet and analyse SDK code for each lib, and it&amp;#39;s interfaces changes quicker than the hardware, what are these libs ?&lt;br /&gt;Among libs I try, only BLE libs works without major problems. Fortunately ! Maybe NRF SDK is good for complicated features only.&lt;/p&gt;
&lt;p&gt;So I handle radio IRQ by my own now, and I can get raw data. With your setup, I get :&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;NRF_RADIO-&amp;gt;CRCSTATUS=1
NRF_RADIO-&amp;gt;RXMATCH=0
NRF_RADIO-&amp;gt;RXCRC=0xFE
NRF_RADIO-&amp;gt;PCNF0 = 0x00010100 = 0000 0000 0000 0001 0000 0001 0000 0000 : S0LEN=1, S1LEN=1
NRF_RADIO-&amp;gt;PCNF1 = 0x01030606 = 0000 0001 0000 0011 0000 0110 0000 0110
NRF_RADIO-&amp;gt;PACKETPTR=0xFF002468AC&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;S0LEN + S1LEN = 9bits, as configured by SDK. That is correct. If I increase S1LEN to compensate shifting, CRC is rejected. So, the problem comes after CRC check, on packet disassembly.&lt;/p&gt;
&lt;p&gt;Conclusion : CRC is ok, but payload is not conform to CRC check and original message. As I say on last message, we need to know what appens on CPU &amp;quot;packet disassembler&amp;quot; process. Which register can interfer with this process (PCNF0,&amp;nbsp;PCNF1, ...) ?&lt;br /&gt;How this process extract the 9 bits of data control, to make two bytes on PACKETPTR ?&lt;/p&gt;
&lt;p&gt;Additionally, with my own lib, I get complete and rigth packet for each nRF24 transmission. Unlike nrf_esb, that get only one RX for 3 or 4 TX (I don&amp;#39;t know why, and I do not care now).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145764?ContentTypeID=1</link><pubDate>Sat, 25 Aug 2018 15:29:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e0911a28-ba93-48f9-8f97-b4c73b26a308</guid><dc:creator>cama</dc:creator><description>&lt;p&gt;I receive 0x2468AD, but it is inconstant. I receive only one packet, for three or four sending (low power, and no packet reprtition).&lt;br /&gt;The radio event register for RX receiving is NRF_RADIO-&amp;gt;EVENTS_DISABLED, and NRF_RADIO-&amp;gt;INTENSET &amp;amp; RADIO_INTENSET_DISABLED_Msk (I know, the name did not help to found ...). Current received datas are on NRF_RADIO-&amp;gt;PACKETPTR register.&lt;br /&gt;The auto-ack behavior is coded on SDK. Then, sometimes CPU call a function who read payload for ack checking, other times CPU call function that store payload on a custom specific FIFO (defined inside the same API).&lt;br /&gt;You can found the code that manage new received packet at &amp;quot;on_radio_disabled_rx&amp;quot; function. And &amp;#39;rx_fifo_push_rfbuf(NRF_RADIO-&amp;gt;RXMATCH, p_pipe_info-&amp;gt;pid);&amp;#39; decode new received buffer.&lt;br /&gt;I can see some problems :&lt;br /&gt;- As configured, nRF52 manage ACK. But your nRF24 setup don&amp;#39;t care about ACK. It is not your problem for now, but it can be if you don&amp;#39;t manage ACK by your own on nRF24 side.&lt;br /&gt;Strangely, the SDK test is :&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;if ((m_config_local.selective_auto_ack == false) || ((m_rx_payload_buffer[1] &amp;amp; 0x01) == 1))
ack = true;&lt;/pre&gt;&lt;br /&gt;That says if no_ack packet flag is true, then manage ACK. Strange ... I notice some no_ack bit inversions pretty much everywhere on ESB SDK. And it is difficult to understand when all are named &amp;#39;no_ack&amp;#39;. Maybe it works with nRF52 ... luckily.&lt;br /&gt;But don&amp;#39;t comply with nRF24L01 datasheet : &amp;quot;Setting the flag high tells the receiver that the packet is not to be auto acknowledged.&amp;quot;. Unless if nRF52 CPU invert it internaly ...&lt;br /&gt;- What happens if I use CRC16 ? Same result. I receive 0x2468AD, but very few.&lt;br /&gt;- If I enable ESB on nRF24, or dynamic payload (because enabling dynamic payload RF24_DYNPD enable automaticaly ESB), I receive nothig.&lt;br /&gt;- If I send 0xF23456, I receive 0xE468AD. No CRC error. Payload is 1 shifted and 1 added.&lt;br /&gt;- Function rx_fifo_push_rfbuf decode payload buffer as :&lt;br /&gt; 1 byte : payload size&lt;br /&gt; 1 byte : packet id + packet no_ack flag&lt;br /&gt; n bytes : payload&lt;br /&gt;Problem : You setup nRF24 as ShockBurst, not ESB. So normaly, sent packet miss 9 bits of data control, just before the payload.&lt;br /&gt;How on earth the nRF52 CPU receive the right payload with only 1 bit shifted, while it miss 9 bits ???&lt;br /&gt;How on earth the nRF52 CPU check CRC8 and accept the packet with improper data, improper format and improper packet size ?&lt;br /&gt;I think that data control still present. Despite configuration.&lt;br /&gt;&amp;quot;CRC is calculated over the address, PacketControl Field and Payload&amp;quot; (datasheet).&lt;br /&gt;Conclusion : &lt;br /&gt;On-air packet is conform to nRF52 setup, because CRC check is ok. But, strangely, NRF_RADIO-&amp;gt;PACKETPTR contains a shifted payload, while payload was correct at CRC check.&lt;br /&gt;If anybody know how nRF52 manage payload on this process, it can help to find registers configuration problem. Page 205 of nRF52832 datasheet, this process is called &amp;quot;packet disassembler&amp;quot;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145753?ContentTypeID=1</link><pubDate>Sat, 25 Aug 2018 11:10:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c5b0d6ce-662c-43fc-9544-afe277035b63</guid><dc:creator>cama</dc:creator><description>&lt;p&gt;I test same config as you. Only address and channel is my own.&lt;/p&gt;
&lt;p&gt;Good news ... I send 0x123456 from nRF24 ... and i receive&amp;nbsp;0x2468AC to nRF52 !!! Like you. So it is just a SDK&amp;nbsp;register settings problem (or nRF24 incompatible config). Time to lunch. I will make some&amp;nbsp;modifications afternoon.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145752?ContentTypeID=1</link><pubDate>Sat, 25 Aug 2018 08:36:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f05a9b65-9303-428a-9dfd-60f189cfda1e</guid><dc:creator>cama</dc:creator><description>&lt;p&gt;Your are true. I am false. ESB does not need Softdevice.&amp;nbsp;It is not Softdevice registers, but CPU registers.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;Nordic proprietary protocols
 Example applications that show how to use Gazell and Enhanced ShockBurst (ESB) proprietary protocols.
 These examples do not require a SoftDevice.&lt;/pre&gt;And it is a good new for me. Because i am in pain with ESB too. And I try to solve an other problem. It means that my problem comes from me, or SDK. Not Softdevice. So i can solve by myself !&lt;/p&gt;
&lt;p&gt;But my remark about packet sizing was correct. With ESB regular packet, you have one bit more than byte sized.&amp;nbsp;While ShockBurst is byte sized. I think the only setting for selecting ESB on nRF24L01 is EN_AA. You disable it on your example. And nrf_esb SDK manage only ESB protocol. Not Shockburst.&lt;/p&gt;
&lt;p&gt;Registers used by ESB SDK are :&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;NRF_RADIO-&amp;gt;MODECNF0
NRF_RADIO-&amp;gt;PCNF0
NRF_RADIO-&amp;gt;PCNF1
NRF_RADIO-&amp;gt;BASE0
NRF_RADIO-&amp;gt;BASE1
NRF_RADIO-&amp;gt;PREFIX0
NRF_RADIO-&amp;gt;PREFIX1
NRF_RADIO-&amp;gt;TXPOWER
NRF_RADIO-&amp;gt;MODE
NRF_RADIO-&amp;gt;CRCINIT
NRF_RADIO-&amp;gt;CRCPOLY
NRF_RADIO-&amp;gt;CRCCNF
NRF_ESB_SYS_TIMER-&amp;gt;PRESCALER
NRF_ESB_SYS_TIMER-&amp;gt;BITMODE
NRF_ESB_SYS_TIMER-&amp;gt;SHORTS
NRF_ESB_SYS_TIMER-&amp;gt;TASKS_CLEAR
NRF_ESB_SYS_TIMER-&amp;gt;CC[]
NRF_ESB_SYS_TIMER-&amp;gt;EVENTS_COMPARE[]
NRF_ESB_SYS_TIMER-&amp;gt;TASKS_STOP
NRF_PPI-&amp;gt;CH[].EEP
NRF_PPI-&amp;gt;CH[].TEP
NRF_PPI-&amp;gt;CHENSET
NRF_RADIO-&amp;gt;SHORTS
NRF_RADIO-&amp;gt;INTENSET
NRF_RADIO-&amp;gt;TXADDRESS
NRF_RADIO-&amp;gt;RXADDRESSES
NRF_RADIO-&amp;gt;FREQUENCY
NRF_RADIO-&amp;gt;PACKETPTR
NRF_RADIO-&amp;gt;EVENTS_ADDRESS
NRF_RADIO-&amp;gt;EVENTS_PAYLOAD
NRF_RADIO-&amp;gt;EVENTS_DISABLED
NRF_RADIO-&amp;gt;TASKS_TXEN
NRF_RADIO-&amp;gt;TASKS_RXEN
NRF_RADIO-&amp;gt;PACKETPTR
.. etc ...&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;... a lot ... Take a look at nRF5_SDK_15.0.0\components\proprietary_rf\esb\nrf_esb.c file. It may helps you.&lt;/p&gt;
&lt;p&gt;I suspect your config, as API config, generate a misconfig (or incompatible with you nRF24L01 setup) config by registers (SDK job). But what register ? I don&amp;#39;t know. And i don&amp;#39;t know if you can setup a ShockBurst mode by registers (without SDK).&lt;/p&gt;
&lt;p&gt;I will try your setup. Please tell me your TX_ADDRESS, TX_ADR_WIDTH. And I notice you did not setup payload size on nRF24L01 side (PW_P0).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145742?ContentTypeID=1</link><pubDate>Sat, 25 Aug 2018 02:36:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bc8df3ef-e2b1-4c3e-98e7-eb924b8b4d31</guid><dc:creator>Lam</dc:creator><description>&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;
void TX_Mode(void)
{														 
    

  	SPI1_Write_Buf(SPI_WRITE_REG+TX_ADDR,(uint8_t*)TX_ADDRESS,TX_ADR_WIDTH);    
	  
  	SPI1_Write_REG(SPI_WRITE_REG+EN_AA,0x00);    

  	SPI1_Write_REG(SPI_WRITE_REG+EN_RXADDR,0x00); //0x01  //close--0x00

  	SPI1_Write_REG(SPI_WRITE_REG+SETUP_RETR,0x00);//0x1a  //close--0x00

  	SPI1_Write_REG(SPI_WRITE_REG+RF_CH,0x49);     //频率，0x00~0x4e    

  	SPI1_Write_REG(SPI_WRITE_REG+RF_SETUP,0x08);  //0x26  ---- 250k    //0x0f ----2M   //0x06 ----1M   //B1000-0x08  -18db    //B1110-0x0f  0db 

  	SPI1_Write_REG(SPI_WRITE_REG+CONFIG,0x0a);    //0x0e--16crc    //0x0a--8crc
        
	CE_H;                                  
}	
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;24L01+ using Shorkburst but not ESB? How do I know what protocol it is using? As far as I know, it uses ESB as default?&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145741?ContentTypeID=1</link><pubDate>Sat, 25 Aug 2018 02:14:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:829e29bd-f53b-4831-9411-c9625c0db4d5</guid><dc:creator>Lam</dc:creator><description>&lt;p&gt;nRF52 using SoftDevice to transmit ESB packet? In the test, I didn&amp;#39;t download the SoftDevice to the module.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;If I should modify the registers, what registers should I need to do with? I look for it at the production specification of nRF52832, but it seems that it has no related registers about ESB, but it does have some about radio.&lt;/p&gt;
&lt;p&gt;Maybe I should modify these radio register, right? I am a little confused.&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145631?ContentTypeID=1</link><pubDate>Fri, 24 Aug 2018 08:45:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6b735997-5cb1-4341-9e39-d628d8c4bf41</guid><dc:creator>cama</dc:creator><description>&lt;p&gt;ESB packet format is byte sized. Except data control, just before the payload : It uses 9 bits. One bit more than a byte. Coincidentally you are one bit shifted.&lt;/p&gt;
&lt;p&gt;Problem : It is Softdevice who build the ESB packet. Not the SDK lib. The SDK lib just&amp;nbsp;send 2 complete bytes (payload size as one byte, and packet id + noAck as separed byte, then not 9 bits compliant suggesting a&amp;nbsp;conversion&amp;nbsp;by Softdevice) and payload to Softdevice. With no source code, you can not check or modify Softdevice behavior. The only interact is registers modifications.&lt;/p&gt;
&lt;p&gt;Not a solution, but may helps you.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145624?ContentTypeID=1</link><pubDate>Fri, 24 Aug 2018 08:34:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:777f4365-4f4a-470b-a820-9beab1073c0c</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Are you sending ESB-packets from the nRF24L01+, or are you using the older &amp;quot;shockburst&amp;quot; packet format?&lt;/p&gt;
&lt;p&gt;Could you post the nRF24L01+ configuration that you are using? A register dump would suffice.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Cheers,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145587?ContentTypeID=1</link><pubDate>Fri, 24 Aug 2018 01:09:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:117b4680-5f85-4b0d-b252-c050b8ed7da3</guid><dc:creator>Lam</dc:creator><description>&lt;p&gt;I have several 24L01+ modules and they can work well with each other. Also I have several nRF52832 modules and they work well too.&lt;/p&gt;
&lt;p&gt;Since 24L01+ can receive data correctly from 24L01+, the 24L01+ may not have problem and so does nRF52832. It is so strange.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145536?ContentTypeID=1</link><pubDate>Thu, 23 Aug 2018 13:50:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d106ad3d-4c53-4d0f-b1a0-de6a4cf0f610</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;That is strange. Looking at the bit stream, it seems that your data is shifted one bit (0x676767 &amp;lt;&amp;lt; 1 becomes 0xCECECF).&lt;/p&gt;
&lt;p&gt;Do you have several nRF24L01+ modules, and they all behave like this? Do you have a link to where you obtained them?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145528?ContentTypeID=1</link><pubDate>Thu, 23 Aug 2018 13:20:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3a474547-d87e-467f-bd5d-0d336a65682c</guid><dc:creator>Lam</dc:creator><description>&lt;p&gt;Thanks for your suggestion.&lt;/p&gt;
&lt;p&gt;The program running on the nRF52832 was modified from the nRF52 SDK 15.0.0 esb_prx example.&amp;nbsp;It uses the nrf_esb library to recieve data.&lt;/p&gt;
&lt;p&gt;A part of my code which config the esb is as follows.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;uint32_t esb_init( void )
{
    uint32_t err_code;
    uint8_t base_addr_0[3] = {0xE7, 0xE7, 0xE7};
    uint8_t base_addr_1[3] = {0xC2, 0xC2, 0xC2};
    uint8_t addr_prefix[2] = {0xE7, 0xC2};
    nrf_esb_config_t nrf_esb_config         = NRF_ESB_LEGACY_CONFIG;
    nrf_esb_config.payload_length           = 3;
    nrf_esb_config.crc 	                	= NRF_ESB_CRC_8BIT;
    nrf_esb_config.protocol                 = NRF_ESB_PROTOCOL_ESB;
    nrf_esb_config.bitrate                  = NRF_ESB_BITRATE_2MBPS;
    nrf_esb_config.mode                     = NRF_ESB_MODE_PRX;
    nrf_esb_config.event_handler            = nrf_esb_event_handler;
    nrf_esb_config.selective_auto_ack       = false;

    err_code = nrf_esb_init(&amp;amp;nrf_esb_config);
    VERIFY_SUCCESS(err_code);		
		
    err_code = nrf_esb_set_rf_channel(73);
    VERIFY_SUCCESS(err_code);
		
    err_code = nrf_esb_set_address_length(4);
    VERIFY_SUCCESS(err_code);

    err_code = nrf_esb_set_base_address_0(base_addr_0);
    VERIFY_SUCCESS(err_code);

    err_code = nrf_esb_set_base_address_1(base_addr_1);
    VERIFY_SUCCESS(err_code);

    err_code = nrf_esb_set_prefixes(addr_prefix, 2);
    VERIFY_SUCCESS(err_code);

    return err_code;
}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t know where I should modify my code.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52 receiving data from 24L01 incorrectly</title><link>https://devzone.nordicsemi.com/thread/145471?ContentTypeID=1</link><pubDate>Thu, 23 Aug 2018 10:55:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e18328cc-5294-48ca-85a1-75a157638eca</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It sounds like you have configured the radio incorrectly, especially the endianess of the nrf52 radio (see &lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.nrf52832.ps.v1.1/radio.html?cp=2_1_0_22_13_12#register.PCNF1"&gt;PCNF1 register&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Have you tried using nrf_esb library for nRF52 to see if that works better?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>