<?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>gazell backwards compatibility nRF24 gzll host and nRF52840 gzll host</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/47789/gazell-backwards-compatibility-nrf24-gzll-host-and-nrf52840-gzll-host</link><description>To the kind attention of Nordic support team, 
 I have got some legacy code running as a gazell host on a nRF2726 nRFgo Nordic platform. Right now, I would like to set a gazell host using nRF52840 development kit and the very same radio settings as they</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 03 Jun 2019 15:57:27 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/47789/gazell-backwards-compatibility-nrf24-gzll-host-and-nrf52840-gzll-host" /><item><title>RE: gazell backwards compatibility nRF24 gzll host and nRF52840 gzll host</title><link>https://devzone.nordicsemi.com/thread/190601?ContentTypeID=1</link><pubDate>Mon, 03 Jun 2019 15:57:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2eb88f88-e1e9-4076-9b6d-8bc444c5804e</guid><dc:creator>astella</dc:creator><description>&lt;p&gt;It is very strange indeed. I needed to do this:&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;void nrf_gzll_host_rx_data_ready(uint32_t pipe, nrf_gzll_host_rx_info_t rx_info)&lt;br /&gt;{&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;...&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;data_payload_length2 = 32; &amp;lt;--- reset data_payload_length2 to the max value&lt;/p&gt;
&lt;p&gt;&lt;br /&gt; // Pop packet and write first byte of the payload to the GPIO port.&lt;br /&gt; bool result_value = nrf_gzll_fetch_packet_from_rx_fifo(pipe,&lt;br /&gt; m_data_payload2,&lt;br /&gt; &amp;amp;data_payload_length2);&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;Without &amp;#39;resetting&amp;#39; that variable the host cannot read correctly when sending to it a gazell packet whose length is greater than that of the previous packet.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: gazell backwards compatibility nRF24 gzll host and nRF52840 gzll host</title><link>https://devzone.nordicsemi.com/thread/190469?ContentTypeID=1</link><pubDate>Mon, 03 Jun 2019 10:35:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d7b4fb0d-ac36-4598-9364-c9cd52151bff</guid><dc:creator>astella</dc:creator><description>&lt;p&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: gazell backwards compatibility nRF24 gzll host and nRF52840 gzll host</title><link>https://devzone.nordicsemi.com/thread/189329?ContentTypeID=1</link><pubDate>Mon, 27 May 2019 12:45:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:294ceaf3-c063-4077-9464-8d27ef1191b9</guid><dc:creator>astella</dc:creator><description>&lt;p&gt;It seemed it was turning out to be very simple. In order to have the two host (see point 1 and point 2 as I mentioned in the previous part of my question) both receiving the very same packets I only had to set bitrate and address and put to the test various timeslot periods. Neverthless I think there is some instability left, because of some sort of radio init setting that is different. In particular I&amp;nbsp; have been reading in Nordic documentation that for nRF52840 NRF_GZLL_DEFAULT_TIMESLOT_PERIOD needs to be set 900 when using a 1M bitrate. In gzll_params.h for nRF24 we can see that:&lt;/p&gt;
&lt;p&gt;#ifdef __C51__&lt;br /&gt;#define GZLL_DEFAULT_PARAM_RX_PERIOD_MODIFIER 360 // [us]&lt;br /&gt;#elif __ICC8051__&lt;br /&gt;#define GZLL_DEFAULT_PARAM_RX_PERIOD_MODIFIER 600 // [us]&lt;br /&gt;#endif&lt;/p&gt;
&lt;p&gt;When sending gazell packets from a source that was built together with the nRF24 host, obviously the nRF24 host does receive perfectly everything. When the very same source is used to transmit to the host running using the nRF52840, after the reception of two three packets, this sort of errors comes out:&lt;/p&gt;
&lt;p&gt;NRF_GZLL_ERROR_CODE_INTERNAL_ASSERT_OCCURRED or NRF_GZLL_ERROR_CODE_INVALID_PAYLOAD_LENGTH&lt;/p&gt;
&lt;p&gt;Could different radio settings bring this kind of problems in nRF52840?&lt;/p&gt;
&lt;p&gt;I have to say I have tried the nRF52840 host using a PCA10040 as a device using the SDK project host counterpart, and the host seems to be fine. It keeps receiving everything but I have to say that everything is fine only when sending a dynamic gazell packet that is shorter than the previous one.If the sending packet is larger than the previous one I have these errors:&lt;/p&gt;
&lt;p&gt;&lt;span&gt;NRF_GZLL_ERROR_CODE_INTERNAL_ASSERT_OCCURRED or NRF_GZLL_ERROR_CODE_INVALID_PAYLOAD_LENGTH too.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I think that I need Nordic help in order to better understand the compatibility issue between nRF24 and nRF52840 when building a gazell host.&lt;/p&gt;
&lt;p&gt;Another question: is it feasible to have two host both listening at the same channels and addresses, and one of them used for debugging only in a silent way fashion so to only print on a serial monitor gazell packets travelling on air?&lt;/p&gt;
&lt;p&gt;In legacy code I&amp;#39;ve got these instructions:&lt;/p&gt;
&lt;p&gt;In legacy code I have got:&lt;/p&gt;
&lt;p&gt;hal_nrf_enable_ack_payload(true);&lt;br /&gt; hal_nrf_enable_dynamic_payload(true);&lt;br /&gt; hal_nrf_setup_dynamic_payload(0xff);&lt;/p&gt;
&lt;p&gt;Have I to enable dynamic payload for nRF52840 also?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thank you for you great work and for your help.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>