<?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>nRF52840 dongle communications very slow in Windows</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/92362/nrf52840-dongle-communications-very-slow-in-windows</link><description>Hi All, 
 I have a system with an nRF52840-dongle (PCA10059) acting as a serial port in windows 10. It runs extremely slowly. Sending 8kB over the interface takes 3 minutes. 
 Is there any way in Windows to adjust memory allocation, or see why the driver</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 06 Oct 2022 11:30:24 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/92362/nrf52840-dongle-communications-very-slow-in-windows" /><item><title>RE: nRF52840 dongle communications very slow in Windows</title><link>https://devzone.nordicsemi.com/thread/389598?ContentTypeID=1</link><pubDate>Thu, 06 Oct 2022 11:30:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1f81ec14-8772-42aa-8c08-7ab19b9cf33b</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello Rob,&lt;/p&gt;
&lt;p&gt;Without knowing more about how the application is running, it is difficult to say what the bottleneck can be. You can try a simple USB CDC application:&lt;/p&gt;
&lt;p&gt;NCS\zephyr\samples\subsys\usb\cdc_acm, and you should see that you don&amp;#39;t have that same bottleneck our of the box with a CDC application, so I would guess that the limiting factor is elsewhere.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Have a nice vacation &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;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52840 dongle communications very slow in Windows</title><link>https://devzone.nordicsemi.com/thread/389369?ContentTypeID=1</link><pubDate>Wed, 05 Oct 2022 10:43:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f75163ec-9996-4316-8ba8-837b067a6bd7</guid><dc:creator>Hanowar123</dc:creator><description>&lt;p&gt;Hi Edvin,&lt;/p&gt;
&lt;p&gt;I am on holiday this week but will forward those questions to the windows software people when I get back.&lt;/p&gt;
&lt;p&gt;In the embedded code I set the MTU (transfer length) to 247 bytes. So it gets the data in fairly long messages. I have limited control as the PC side software is (politically) difficult to change as it was written by someone outside my group. From what he told me the windows side &amp;#39;promises&amp;#39; the right number of bytes, and this maybe where the bottleneck is happening.&lt;/p&gt;
&lt;p&gt;What maybe causing the problem is the embedded device has a Telit BlueMod+S50 module. I assumed (which is lethal) that having the same BT chip both ends of the chain would be most reliable.&lt;/p&gt;
&lt;p&gt;Rgeards,&lt;/p&gt;
&lt;p&gt;Rob.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52840 dongle communications very slow in Windows</title><link>https://devzone.nordicsemi.com/thread/388897?ContentTypeID=1</link><pubDate>Mon, 03 Oct 2022 06:57:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3b37b53b-60a5-4b56-a81d-c2613fcfe2ad</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello Rob,&lt;/p&gt;
&lt;p&gt;Sorry for the late reply.&lt;/p&gt;
&lt;p&gt;What SDK version are you using?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;What I need you to do is try to debug the application. Either you need to solder on a debug connector on the dongle (on the bottom side), or you need to port the application to run on the DK.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;What happens when you send the data over CDC? Do you get everything in one chunk? Or do you get bytewise interrupts? Is the USB the bottleneck in your throughput, or is the&amp;nbsp;BLE the bottleneck of the throughput? Or perhaps the storing of the data? How do you store it?&lt;/p&gt;
&lt;p&gt;This is where debugging becomes handy. Is it equally slow if you don&amp;#39;t transfer the data over BLE? Just send it over USB and discard it, and send the same amount of dummy data back. Does that take as long? If not, then it is not the USB that is your bottleneck.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Equally, if you transfer the data over BLE, but don&amp;#39;t store it however you are storing it now. Is it as slow? If not, then BLE is not your bottleneck either. How about storing and reading back the data? Is that your bottleneck?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
[quote user="Hanowar123"]I don&amp;#39;t know about different types of BLE connection, assumed this was BLE V5, but will look into it.[/quote]
&lt;p&gt;That doesn&amp;#39;t really say anything. What is your MTU, what is your connection event length? What is your connection interval? What is the actual packet size you are using? Sending one byte in each packet is very little efficient, since the header/payload ratio becomes very low. Also, a BLE link can be either very power efficient or &amp;quot;very high throughput&amp;quot;. The maximum throughput should be around 1.3MBPS of actual payload data (with MTU = 247, connection interval = 50ms and connection event length also 50ms. Also you need to keep sending buffers with length 247 all the time to keep up with this throughput).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52840 dongle communications very slow in Windows</title><link>https://devzone.nordicsemi.com/thread/388604?ContentTypeID=1</link><pubDate>Thu, 29 Sep 2022 14:14:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:527da3bd-b0c6-4fbc-954f-db81c9e64276</guid><dc:creator>Hanowar123</dc:creator><description>&lt;p&gt;Hi Edvin,&lt;/p&gt;
&lt;p&gt;Yes the interface runs about 360 bits/s judging by the time it takes to send the data. As Bluetooth LE is in the megabits/s range this is very disappointing.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;We use the nRF52840 dongle (PCA1059 issue 2.0) as a serial port (CDC). The transfer is triggered by the PC side. The PC software is &amp;#39;node&amp;#39; which has the front end in a web browser. I didn&amp;#39;t write the PC software.&lt;/p&gt;
&lt;p&gt;I have the larger nrf52840 DK board here but it will take some time to get this running like the dongle.&lt;/p&gt;
&lt;p&gt;The 8kB of data is used as a configuration file on an embedded/industrial device. During test we write a configuration file (from PC &amp;gt; nRF52840 device) with various serial numbers and calibration values. Then read it back to check it was written correctly. The transfer is frustratingly slow in both directions.&lt;/p&gt;
&lt;p&gt;There is an nRF52840 on each end, as the embedded device has one inside. When communicating they sit a few inches from each other.&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t know about different types of BLE connection, assumed this was BLE V5, but will look into it.&lt;/p&gt;
&lt;p&gt;I am embedded programmer for the product but know little about programing in Windows.&lt;/p&gt;
&lt;p&gt;Thanks for help&lt;/p&gt;
&lt;p&gt;-Rob&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52840 dongle communications very slow in Windows</title><link>https://devzone.nordicsemi.com/thread/388473?ContentTypeID=1</link><pubDate>Thu, 29 Sep 2022 07:33:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aedba82f-599d-4277-b8d2-0e4e52ee5c0d</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello Rob,&lt;/p&gt;
&lt;p&gt;So you are looking at a speed about 360b/s? (&lt;strong&gt;bit&lt;/strong&gt; per second, not byte per second)&lt;/p&gt;
&lt;p&gt;What sort of application are you running on the dongle? I suspect that the issue may be there. Is it a USB CDC application? Can you tell a bit more about how you trigger the transfer? Is it triggered by the application on the nRF, or from the PC side? Does it send everything in one go, or do you request byte by byte from the computer?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I think I need a bit more detail about your application before I can say anything about the reason.&lt;/p&gt;
&lt;p&gt;Also, do you have an nRF52840 DK to test the application on? The reason I ask is that it may sometimes help to have the possibility to debug and monitor logs while developing applications. Perhaps you can determine why the communication is so slow.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Where is the 8kB of data coming from? Does it come from BLE? If so, could it be that your speed is bottlenecked by the BLE connections? If so, what sort of BLE connection are you using?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>