<?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 USB MSD Slow Write Speed</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/22336/nrf52840-usb-msd-slow-write-speed</link><description>Hi, I have recently acquire a nRF52840 preview development board to prototype a USB MSD. With the example provided in the SDK V13, I tested the write speed and it was far from usable. 
 I am not sure if it is the problem of the NOR chip onboard but the</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 25 May 2017 10:39:46 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/22336/nrf52840-usb-msd-slow-write-speed" /><item><title>RE: nRF52840 USB MSD Slow Write Speed</title><link>https://devzone.nordicsemi.com/thread/87824?ContentTypeID=1</link><pubDate>Thu, 25 May 2017 10:39:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2270870a-09eb-4b2f-ae88-f357757edf7c</guid><dc:creator>Turbo J</dc:creator><description>&lt;p&gt;Modern OS may do MB-sized transactions, which have little to none status infos on-the-fly available. This will look like a &amp;quot;hangup&amp;quot; of roughly 10 seconds to the user. Note that a single &amp;quot;write&amp;quot; transaction has no real limit in the underlying SCSI specs. GB-sized transactions are possible in theory - if the device has that many bytes available.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52840 USB MSD Slow Write Speed</title><link>https://devzone.nordicsemi.com/thread/87825?ContentTypeID=1</link><pubDate>Thu, 25 May 2017 10:15:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2bff898c-726d-4bd9-9db2-d69f880e284a</guid><dc:creator>Radoslaw Koppel</dc:creator><description>&lt;p&gt;Last time we was testing the MSC speed of the stack itself it was around 700 KB/s (using dd on EMPTY drive - 512MB of zeros).&lt;/p&gt;
&lt;p&gt;Do not say that 177KBps is unusable for 8MB drive - it can be totally written in less than a minute.
This is quite obvious that for bigger drive faster FLASH and background write algorithm should be used. The example here just shows how to use MSC class and we tried to keep it simple.&lt;/p&gt;
&lt;p&gt;When it comes to the &amp;quot;halts&amp;quot; you have described, this may relate to PAN 104 and the library is resuming from &amp;quot;lost event&amp;quot; situation. This would be corrected in the final product.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52840 USB MSD Slow Write Speed</title><link>https://devzone.nordicsemi.com/thread/87823?ContentTypeID=1</link><pubDate>Thu, 25 May 2017 10:08:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1c9d451d-16ec-4646-ae8b-d18955bf1488</guid><dc:creator>Fan Jiaming</dc:creator><description>&lt;p&gt;Could this also explain why I observed a freeze during data transfer? Is it because the read and write are not processed at the same time, therefore they take their turns which appear as a freeze?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF52840 USB MSD Slow Write Speed</title><link>https://devzone.nordicsemi.com/thread/87822?ContentTypeID=1</link><pubDate>Thu, 25 May 2017 09:09:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a85502c2-d21d-40b0-9f19-83cc4fa44d01</guid><dc:creator>Turbo J</dc:creator><description>&lt;blockquote&gt;
&lt;p&gt;very slow write speed with only 177 KB/s&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;That is &lt;em&gt;not&lt;/em&gt; very slow. The maximum speed is around 1 MByte/sec for USB 2.0 full speed - but that would require quite some rather intelligent buffering with some more RAM, as you need to read from USB and write to memory &lt;em&gt;at the same time&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;The 177 kB/s is about the expected speed when you are &lt;em&gt;not&lt;/em&gt; doing this at the same time. This keeps the source code much simpler to understand - especially when there are abnormal conditions like write errors.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>