<?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  Max throughput Multilink</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/17806/gazell-max-throughput-multilink</link><description>When one host and one device,the through can be 16KBps。But,when one host and two device ,the Max throughput is only 6KBps。Can you tell me Why ?????And Can you tell me the Max throughput you test??</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 29 Nov 2016 09:39:34 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/17806/gazell-max-throughput-multilink" /><item><title>RE: Gazell  Max throughput Multilink</title><link>https://devzone.nordicsemi.com/thread/68638?ContentTypeID=1</link><pubDate>Tue, 29 Nov 2016 09:39:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f9079118-49b3-41c2-97d6-f0742bcb091c</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Yes, I just tried for 10 mins, no problem.
I guess issue could be with smth else. Have you tried to test with just the example code and no modification except for the Gazell configuration ?&lt;/p&gt;
&lt;p&gt;Host:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;	static uint8_t channel_table[6]={4, 25, 42, 63, 77,33};
// Initialize Gazell.
bool result_value = nrf_gzll_init(NRF_GZLL_MODE_HOST);
GAZELLE_ERROR_CODE_CHECK(result_value);
		result_value = nrf_gzll_set_channel_table(channel_table,6);
GAZELLE_ERROR_CODE_CHECK(result_value);
		
		result_value = nrf_gzll_set_datarate(NRF_GZLL_DATARATE_1MBIT);
GAZELLE_ERROR_CODE_CHECK(result_value);
		result_value = nrf_gzll_set_timeslot_period(900);
GAZELLE_ERROR_CODE_CHECK(result_value);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Device 1 (and 2 with modification for channel map)&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;	static uint8_t channel_table[5]={ 25, 63, 33};
	//static uint8_t channel_table[5]={4,42, 77};
// Initialize Gazell.
bool result_value = nrf_gzll_init(NRF_GZLL_MODE_DEVICE);
GAZELLE_ERROR_CODE_CHECK(result_value);
// Attempt sending every packet up to MAX_TX_ATTEMPTS times.
result_value = nrf_gzll_set_max_tx_attempts(MAX_TX_ATTEMPTS);
GAZELLE_ERROR_CODE_CHECK(result_value);
			result_value = nrf_gzll_set_datarate(NRF_GZLL_DATARATE_1MBIT);
GAZELLE_ERROR_CODE_CHECK(result_value);
	result_value = nrf_gzll_set_timeslot_period(900);
GAZELLE_ERROR_CODE_CHECK(result_value);
	result_value = nrf_gzll_set_timeslots_per_channel(4);
GAZELLE_ERROR_CODE_CHECK(result_value);
	result_value = nrf_gzll_set_channel_table(channel_table,3);
GAZELLE_ERROR_CODE_CHECK(result_value);
&lt;/code&gt;&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Gazell  Max throughput Multilink</title><link>https://devzone.nordicsemi.com/thread/68637?ContentTypeID=1</link><pubDate>Tue, 29 Nov 2016 06:52:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dd866fb7-c0bf-4c85-a536-d8dfbb3757c0</guid><dc:creator>Davy</dc:creator><description>&lt;p&gt;What about 1Mbps,do you have a try?? when i used  1Mbps and 900us，it just can work about1minute.After 1 minute,one device will stop working. Only by using 1200us，the two devices can work together.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Gazell  Max throughput Multilink</title><link>https://devzone.nordicsemi.com/thread/68636?ContentTypeID=1</link><pubDate>Fri, 25 Nov 2016 08:56:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c210a507-91c5-479c-a228-5a59fc19682e</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;@Davy: timeslot is kept at default (600us with 2Mbps) by using this and with the channel table on the device limited to half of the full table, you will see that the packet only sent every 4 timeslot (at the best scenario) this is because the device only transmit one new packet per channel (retranmission happens on all timeslot though). So on the host I configured with 2 timeslot per channel, and on the device it&amp;#39;s 4 timeslot per channel. This will allow the host and device synchronize even though the channel table on the device is half of what on the host.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Gazell  Max throughput Multilink</title><link>https://devzone.nordicsemi.com/thread/68635?ContentTypeID=1</link><pubDate>Fri, 25 Nov 2016 02:34:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f42fff09-4056-4860-be36-cfae4816ba03</guid><dc:creator>Davy</dc:creator><description>&lt;p&gt;Can you tell me your timeslot?I testd and found the max timest is 1200us when I used 2 device.
Thank you!!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Gazell  Max throughput Multilink</title><link>https://devzone.nordicsemi.com/thread/68634?ContentTypeID=1</link><pubDate>Tue, 22 Nov 2016 12:29:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4182db9f-709d-4788-9f1e-74fc17b5c8c1</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;I don&amp;#39;t understand why you use timeslot period on the host = 2 * timeslot on the device.
It should be the opposite. The time between 2 packet on the device should be double the number on the host so that we can skip those channels that we don&amp;#39;t configure.&lt;/p&gt;
&lt;p&gt;Here is the code I used in my test, it work pretty well:
On the host:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;static uint8_t channel_table[6]={4, 25, 42, 63, 77,33};
    // Initialize Gazell.
    bool result_value = nrf_gzll_init(NRF_GZLL_MODE_HOST);
    GAZELLE_ERROR_CODE_CHECK(result_value);
    result_value = nrf_gzll_set_channel_table(channel_table,6);
    GAZELLE_ERROR_CODE_CHECK(result_value);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;On device one:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;static uint8_t channel_table[5]={4,42, 77};
// Initialize Gazell.
bool result_value = nrf_gzll_init(NRF_GZLL_MODE_DEVICE);
GAZELLE_ERROR_CODE_CHECK(result_value);
// Attempt sending every packet up to MAX_TX_ATTEMPTS times.
result_value = nrf_gzll_set_max_tx_attempts(MAX_TX_ATTEMPTS);
GAZELLE_ERROR_CODE_CHECK(result_value);
result_value = nrf_gzll_set_timeslots_per_channel(4);
GAZELLE_ERROR_CODE_CHECK(result_value);
result_value = nrf_gzll_set_channel_table(channel_table,3);
GAZELLE_ERROR_CODE_CHECK(result_value);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;On device two:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;static uint8_t channel_table[5]={25,63, 33};
// Initialize Gazell.
bool result_value = nrf_gzll_init(NRF_GZLL_MODE_DEVICE);
GAZELLE_ERROR_CODE_CHECK(result_value);
// Attempt sending every packet up to MAX_TX_ATTEMPTS times.
result_value = nrf_gzll_set_max_tx_attempts(MAX_TX_ATTEMPTS);
GAZELLE_ERROR_CODE_CHECK(result_value);
result_value = nrf_gzll_set_timeslots_per_channel(4);
GAZELLE_ERROR_CODE_CHECK(result_value);
result_value = nrf_gzll_set_channel_table(channel_table,3);
GAZELLE_ERROR_CODE_CHECK(result_value);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Make sure if you use timeslot period = 600 you need to use 2Mbps.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Gazell  Max throughput Multilink</title><link>https://devzone.nordicsemi.com/thread/68633?ContentTypeID=1</link><pubDate>Tue, 22 Nov 2016 01:37:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:af0e90d7-4401-46d2-a557-32374f40fedb</guid><dc:creator>Davy</dc:creator><description>&lt;p&gt;I tried your suggestion before. I set the host timeslot 1800 and the device timeslot 900 when the host has full channel table and device has half channel table. But I found they doesnot work.I think whether we have some wrong setting about the timeslot.
Ps: Do you have some example about that  i can refer to??
Thank you!!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Gazell  Max throughput Multilink</title><link>https://devzone.nordicsemi.com/thread/68631?ContentTypeID=1</link><pubDate>Mon, 21 Nov 2016 15:01:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a3f29491-30e6-485a-a2d9-aa92f2098b17</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Davy,&lt;/p&gt;
&lt;p&gt;If you check the documentation you can find that if you use NRF_GZLL_DATARATE_1MBIT you should use timeslot period &amp;gt;=900us. Leaving the timeslot at 600us let it not enough time for ACK if the packet is max payload size.&lt;/p&gt;
&lt;p&gt;What we suggested earlier about avoiding collision is to use different channel hopping table on each of the device. The host will have all the channels that the devices use.
For example the channel table on the host can be {4, 16, 25, 42, 63, 77} and on the device 1 you use {4, 25, 63} and on device 2 you use {16, 42, 77} this way the 2 won&amp;#39;t collide. But you will have lower throughput when only one device is active compare to the max speed you can achieve. Of course you can implement a switch, so that when the host detects that there are 2 device in-sync, it can tell the device to switch to the half channel table set-up and switch back to the full channel table when there is only one device connect.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Gazell  Max throughput Multilink</title><link>https://devzone.nordicsemi.com/thread/68632?ContentTypeID=1</link><pubDate>Mon, 21 Nov 2016 02:34:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ba0b9aa9-f0ad-4246-b0cc-0114217d9358</guid><dc:creator>Davy</dc:creator><description>&lt;p&gt;I use the  1Mbps and the timeslot is 600us.The channel configuration is default configuration({4,  25, 42, 63, 77}). And I also try to configuration the channel table{4, 16, 25, 42, 63, 77},it doesnot matter.&lt;/p&gt;
&lt;p&gt;And the most concerned thing is that 2 devices，I cannot get the higg through.Even though i use the same channel table for the host and the devices,it have no effect.I find the timeslot must be 3ms,the host and devices would work. The host is as:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;nrf_gzll_set_datarate(NRF_GZLL_DATARATE_1MBIT);
    nrf_gzll_set_timeslot_period(3000);
    nrf_gzll_set_sync_lifetime(40);
    
    nrf_gzll_set_channel_table((void *)&amp;amp;Test_chanel_table[0],NRF_GZLL_TEST_CHANNEL_TABLE_SIZE);
    
    nrf_gzll_set_timeslots_per_channel(2);
    nrf_gzll_set_device_channel_selection_policy(NRF_GZLL_DEVICE_CHANNEL_SELECTION_POLICY_USE_CURRENT);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;the device is as:
nrf_gzll_set_datarate(NRF_GZLL_DATARATE_1MBIT);&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;nrf_gzll_set_timeslot_period(3000);
nrf_gzll_set_sync_lifetime(40);

nrf_gzll_set_channel_table((void *)&amp;amp;Test_chanel_table[0],NRF_GZLL_TEST_CHANNEL_TABLE_SIZE);
nrf_gzll_set_timeslots_per_channel(2);
nrf_gzll_set_device_channel_selection_policy(NRF_GZLL_DEVICE_CHANNEL_SELECTION_POLICY_USE_CURRENT);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Ps: I use the pipe is : 0 and 1.
Can you tell me how can i promote my throughput?Thank you!!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Gazell  Max throughput Multilink</title><link>https://devzone.nordicsemi.com/thread/68630?ContentTypeID=1</link><pubDate>Fri, 18 Nov 2016 09:47:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:58f2f7e0-1bfe-478f-9874-2d62f25b4e3d</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Davy,&lt;/p&gt;
&lt;p&gt;Tests from our developers showed the max throughput (with only one device) can get up to 213kbps. We need to see your timeslot and channel configuration to find why you only get 128kbps.&lt;/p&gt;
&lt;p&gt;When you have 2 devices, there are chances that the 2 devices transmit at the same timeslot and interfere. You may want to define different channels for each of them, so they won&amp;#39;t collide.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>