<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://forums.obdev.at/app.php/feed/topic/1678" />

	<title>Objective Development Forums</title>
	
	<link href="https://forums.obdev.at/index.php" />
	<updated>2008-09-14T01:41:11+02:00</updated>

	<author><name><![CDATA[Objective Development Forums]]></name></author>
	<id>https://forums.obdev.at/app.php/feed/topic/1678</id>

		<entry>
		<author><name><![CDATA[Anonymous]]></name></author>
		<updated>2008-09-14T01:41:11+02:00</updated>

		<published>2008-09-14T01:41:11+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=1678&amp;p=6208#p6208</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=1678&amp;p=6208#p6208"/>
		<title type="html"><![CDATA[Re: Bandwith why do we get more than 80 KByte/s...]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=1678&amp;p=6208#p6208"><![CDATA[
<blockquote><div><cite>henni wrote:</cite>&gt; I see that there is no <br />&gt; - bulk transfer <br />&gt; - interrupt transfer<br />&gt; - isochronus transfer<br />&gt; for low speed devices.<br />USB spec. allows one interrupt pipe on low-speed devices, at least for IN direction (device-&gt;host), AFAIK nothing else.</div></blockquote><br /><br />Actually low-speed devices can use only control and interrupt transfers but not the other two. Every device must have endpoint 0 IN+OUT and use control transfers for it. Also there is a limit (which I donot know) on how many endpoints a low-speed device can use.<br /><br /><blockquote><div><cite>henni wrote:</cite>&gt;&gt; ... i have seen BULK in the CDC project ...<br />Windows does not prevent using BULK on low-speed devices (as BULK and INTERRUPT are very similar).<br />Therefore, AVR-CDC (and my USB2LPT) will run too.<br />BULK transfers occupy less bandwith than SETUP transfers.</div></blockquote><br /><br />USB Specification does not allow bulk and interrupt trasfers for low-speed, but it is technically possible for device to declare it. Windows XP and earlier and Mac OS X do not enforce the requirement. Windows Vista does. Linux (since 2.6.24 I think) does not enforce the rule.<br /><br /><blockquote><div><cite>henni wrote:</cite>&gt;&gt; ... poll of 10 ms ... i get an transferrate of 800 Bytes per Second.<br />Right for interrupt transfers. For bulk, maximum is 8 kByte/s. You may achieve more kByte/s by using more pipes, but IMHO the AVR cannot handle much more data while processing power is mostly claimed by heavy AVRUSB traffic.</div></blockquote><br /><br />I think that only frame reception and transmission are CPU demanding. Since the implementation uses only part of 1.5Mb/s bandwidth, I assume only part of the CPU time is critical. The limiting thing that you can not disable IT0 interrupt.<br /><br /><blockquote><div><cite>henni wrote:</cite>&gt;&gt; (how) can i get bulk transfers for low speed ... with more packet size?<br />This is forbidden by USB spec. I don't know whether Windows supports deeper low-speed FIFOs.</div></blockquote><br /><br />USB Specs forbid this so this would work by pure chance.<p>Statistics: Posted by Guest — Sun Sep 14, 2008 1:41 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[henni]]></name></author>
		<updated>2008-09-09T08:56:12+02:00</updated>

		<published>2008-09-09T08:56:12+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=1678&amp;p=6158#p6158</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=1678&amp;p=6158#p6158"/>
		<title type="html"><![CDATA[Re: Bandwith why do we get more than 80 KByte/s...]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=1678&amp;p=6158#p6158"><![CDATA[
&gt; I see that there is no <br />&gt; - bulk transfer <br />&gt; - interrupt transfer<br />&gt; - isochronus transfer<br />&gt; for low speed devices.<br />USB spec. allows one interrupt pipe on low-speed devices, at least for IN direction (device-&gt;host), AFAIK nothing else.<br /><br />&gt; ... i have seen BULK in the CDC project ...<br />Windows does not prevent using BULK on low-speed devices (as BULK and INTERRUPT are very similar).<br />Therefore, AVR-CDC (and my USB2LPT) will run too.<br />BULK transfers occupy less bandwith than SETUP transfers.<br /><br />&gt; ... poll of 10 ms ... i get an transferrate of 800 Bytes per Second.<br />Right for interrupt transfers. For bulk, maximum is 8 kByte/s. You may achieve more kByte/s by using more pipes, but IMHO the AVR cannot handle much more data while processing power is mostly claimed by heavy AVRUSB traffic.<br /><br />&gt; (how) can i get bulk transfers for low speed ... with more packet size?<br />This is forbidden by USB spec. I don't know whether Windows supports deeper low-speed FIFOs.<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=1319">henni</a> — Tue Sep 09, 2008 8:56 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Anonymous]]></name></author>
		<updated>2008-09-02T02:16:35+02:00</updated>

		<published>2008-09-02T02:16:35+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=1678&amp;p=6119#p6119</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=1678&amp;p=6119#p6119"/>
		<title type="html"><![CDATA[Bandwith why do we get more than 80 KByte/s...]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=1678&amp;p=6119#p6119"><![CDATA[
Hi,<br /><br />i am a newbie and got some questions. hoply someone can answer here. If i take a look into &quot;usb in a nutshell&quot; <br /><br /><a href="http://www.beyondlogic.org/usbnutshell/usb4.htm" class="postlink">http://www.beyondlogic.org/usbnutshell/usb4.htm</a><br /><br />I see that there is no <br />- bulk transfer <br />- interrupt transfer<br />- isochronus transfer<br />for low speed devices. but i have seen them in the CDC project with bulk transfers. is here a lack of specification.<br /><br />if i see that the control transfer allow a max of 8 bytes per transfer and we set an minimum poll of 10 ms on usbconfig.h i get an transferrate of 800 Bytes per Second. Ok i got more in the tests but i hope you know what i try to say.<br /><br />how can i get bulk transfers for low speed vendor specific devices with more packet size? i am a little confused.<br /><br />best greetings<br /><br />tkrieger<p>Statistics: Posted by Guest — Tue Sep 02, 2008 2:16 am</p><hr />
]]></content>
	</entry>
	</feed>
