<?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>Channel hopping on 802.15.4 with nRF5 SDK 15.2</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/47013/channel-hopping-on-802-15-4-with-nrf5-sdk-15-2</link><description>I am trying to use multiple channels for beacon transmission.I want to hop to a different channel at an interval of 2 seconds.I have configured one device as a pan coordinator and on the other device I am performing channel scanning.I have considered</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 13 May 2019 10:12:03 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/47013/channel-hopping-on-802-15-4-with-nrf5-sdk-15-2" /><item><title>RE: Channel hopping on 802.15.4 with nRF5 SDK 15.2</title><link>https://devzone.nordicsemi.com/thread/186637?ContentTypeID=1</link><pubDate>Mon, 13 May 2019 10:12:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9c5d6aa3-0a25-40ac-a984-5a2d5d846e57</guid><dc:creator>AndreasF</dc:creator><description>&lt;p&gt;Hi.&lt;/p&gt;
&lt;p&gt;You could try to implement an Application timer, just look at this &lt;a href="https://devzone.nordicsemi.com/tutorials/b/software-development-kit/posts/application-timer-tutorial"&gt;tutorial&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t think there is any available implementation of TSCH for nRF52 unfortunately.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Andreas&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Channel hopping on 802.15.4 with nRF5 SDK 15.2</title><link>https://devzone.nordicsemi.com/thread/186470?ContentTypeID=1</link><pubDate>Fri, 10 May 2019 15:43:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a293a0b6-c0ca-4910-965f-0b75e431d1e9</guid><dc:creator>Unknown</dc:creator><description>&lt;p&gt;Thanks for the response.Adding &amp;#39;sys_task_run()&amp;#39; inside the for-loop yet didn&amp;#39;t solve the issue.&lt;/p&gt;
&lt;p&gt;The modification I did is -&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;for(i=0;i&amp;lt;3;i++)
	  {
        nrf_delay_ms(2000);
		pib_set_get_request(gen_pib_id_t_plme( PHY_CURRENT_CHANNEL_ID ), &amp;amp;channels[i]);
        sys_task_run();
	  }&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;This is again giving 0xe1 as the scan return status&lt;/p&gt;
&lt;p&gt;I also tried adding &amp;#39;sys_task_run()&amp;#39; in a loop as shown below -&amp;nbsp;&lt;pre class="ui-code" data-mode="text"&gt;for(i=0;i&amp;lt;3;i++)
	  {
        nrf_delay_ms(2000);
		pib_set_get_request(gen_pib_id_t_plme( PHY_CURRENT_CHANNEL_ID ), &amp;amp;channels[i]);
        while(true)
        {
            sys_task_run();
        }
	  }&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;With the above modification , the for-loop is executing only once i.e there is no looping back.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;#39;To implement channel hopping I suggest to use TSCH from 802.15.4-2015&amp;#39; - &lt;/em&gt;Is there any implementation of TSCH available based on 802.15.4 stack ? I have checked the zigbee SDK but i did not find it useful.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;One other question - On transmission of every beacon is there any status parameter which gets set ?&lt;/p&gt;
&lt;p&gt;&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><item><title>RE: Channel hopping on 802.15.4 with nRF5 SDK 15.2</title><link>https://devzone.nordicsemi.com/thread/186374?ContentTypeID=1</link><pubDate>Fri, 10 May 2019 10:59:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3b4e783b-c66b-4358-ad57-9aaee18713e8</guid><dc:creator>AndreasF</dc:creator><description>&lt;p&gt;Hi again.&lt;/p&gt;
&lt;p&gt;The problem is that in the main() function there is initialization of 802.15.4 followed by two loops&lt;/p&gt;
&lt;p&gt;802.15.4 PHY/MAC requires to call `sys_task_run()` often after it is initialized, and it is correctly executed in the &lt;strong&gt;while loop&lt;/strong&gt;, but the&lt;strong&gt; for-loop&lt;/strong&gt; delays calls to `sys_task_run()` for several hundreds miliseconds or seconds, which causes problems. If `sys_task_run()` is not called, no beacon frames are transmitted. That&amp;#39;s why just increasing delay in the &lt;strong&gt;for loop&lt;/strong&gt; did not help.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
[quote]&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;And is there a way to send only one beacon ? If yes , how can I do it ?&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;[/quote]
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The only way I know is to receive beacon request - it cannot be forced by the application. Single beacon may be transmitted with the 802.15.4 driver from &lt;a href="https://github.com/NordicSemiconductor/nRF-IEEE-802.15.4-radio-driver"&gt;GitHub&lt;/a&gt;. But this driver lacks many functionalities of 802.15.4 PHY/MAC from SDK like maintaining PANs.&lt;/p&gt;
&lt;p&gt;Moreover, beacon-enabled PANs in 802.15.4-2006 are not designed for channel hopping. To implement channel hopping I suggest to use TSCH from 802.15.4-2015.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Andreas&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Channel hopping on 802.15.4 with nRF5 SDK 15.2</title><link>https://devzone.nordicsemi.com/thread/186015?ContentTypeID=1</link><pubDate>Wed, 08 May 2019 14:50:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:63d91519-3ed2-41a7-b98e-af131c113e8a</guid><dc:creator>Unknown</dc:creator><description>&lt;p&gt;I changed the delay from 100 ms to 2 seconds. Now,&amp;nbsp; scan on channel 20 is returning the mac scan status as 0xe1 which means channel access failure&lt;/p&gt;
&lt;p&gt;And is there a way to send only one beacon ? If yes , how can I do it ?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Channel hopping on 802.15.4 with nRF5 SDK 15.2</title><link>https://devzone.nordicsemi.com/thread/185994?ContentTypeID=1</link><pubDate>Wed, 08 May 2019 13:43:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:72f063df-4437-4e1e-8943-74f329bbee81</guid><dc:creator>AndreasF</dc:creator><description>&lt;p&gt;Hi.&lt;/p&gt;
&lt;p&gt;The issue you have is that BEACON_ORDER is set to 2 seconds, and you change channels every 100 ms in your for-loop.&lt;/p&gt;
&lt;p&gt;So you change from channel 20 to channel 14, and back to channel 20 before you send next beacon.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Andreas&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>