<?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/1186" />

	<title>Objective Development Forums</title>
	
	<link href="https://forums.obdev.at/index.php" />
	<updated>2008-02-03T19:27:43+02:00</updated>

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

		<entry>
		<author><name><![CDATA[Anonymous]]></name></author>
		<updated>2008-02-03T19:27:43+02:00</updated>

		<published>2008-02-03T19:27:43+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=1186&amp;p=4097#p4097</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=1186&amp;p=4097#p4097"/>
		<title type="html"><![CDATA[Interrupt In Endpoint 1 Question]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=1186&amp;p=4097#p4097"><![CDATA[
<blockquote><div><cite>christian wrote:</cite>This is a bit tricky. If you send 8 bytes with usbSetInterrupt(), the host asks for the next chunk until it receives less than 8 bytes and merges all chunks to a common message.<br /><br />This means that you should send the first 8 bytes with usbSetInterrupt(), then wait until they have been sent to the host using usbInterruptIsReady() and then send the next 6 bytes with usbSetInterrupt().</div></blockquote><br /><br />Thanks Christian,  everything else is working quite well and I appreciate your efforts with AVRUSB. It is a exellent driver to implement USB with AVR's.   <br /><br />I'll try what you have suggested.  I'll restructure the HID Report and make some modifications to my logic and see what happens.<br /><br />Thanks again for all of your help <img class="smilies" src="./../../../images/smilies/icon_smile.gif" alt=":)" title="Smile" /><p>Statistics: Posted by Guest — Sun Feb 03, 2008 7:27 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[christian]]></name></author>
		<updated>2008-02-03T18:29:19+02:00</updated>

		<published>2008-02-03T18:29:19+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=1186&amp;p=4094#p4094</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=1186&amp;p=4094#p4094"/>
		<title type="html"><![CDATA[Interrupt In Endpoint 1 Question]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=1186&amp;p=4094#p4094"><![CDATA[
This is a bit tricky. If you send 8 bytes with usbSetInterrupt(), the host asks for the next chunk until it receives less than 8 bytes and merges all chunks to a common message.<br /><br />This means that you should send the first 8 bytes with usbSetInterrupt(), then wait until they have been sent to the host using usbInterruptIsReady() and then send the next 6 bytes with usbSetInterrupt().<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=8">christian</a> — Sun Feb 03, 2008 6:29 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Rukus]]></name></author>
		<updated>2008-02-03T07:41:30+02:00</updated>

		<published>2008-02-03T07:41:30+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=1186&amp;p=4082#p4082</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=1186&amp;p=4082#p4082"/>
		<title type="html"><![CDATA[Interrupt In Endpoint 1 Question]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=1186&amp;p=4082#p4082"><![CDATA[
My client program is using AVRUSB and I have a interupt in endpoint 1 as well as a interupt out endpoint.  I have it working fine with 6 bytes being transfered to the windows host with a interupt in.<br /><br />My question is how do I send more than 8 bytes to the host with a interupt in endpoint?<br /><br />I've tried to break it up into several report id's. That seems to work for windows as the data I'm sending is for a HID joystick.  The data gets transfered to windows and I can look at the joystick data from the control panel and all of the data is getting there in 2 report id's.<br /><br />The problem I'm having is when I use LIBUSB and I use -<br /><div class="codebox"><p>Code: </p><pre><code>nBytes = usb_interrupt_read&#40;handle, 0x81, &#40;char *&#41;buffer, 7, 5000&#41;;</code></pre></div><br /><br />Data gets transfered,  but there is no way to tell it to get data from Report ID 1 or Report ID 2.  Depending on when the read happens,  data from either Report ID 1 or Report ID 2 will end up being read.  I tried to increase the read length constant, but it will only read 1 Report ID at a time,  and not both at one time.<br /><br />Perhaps there is a better way?  I need to transfer 14 bytes to the host.  How can I do that if the max transfer size in AVRUSB is only 8 bytes?<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=544">Rukus</a> — Sun Feb 03, 2008 7:41 am</p><hr />
]]></content>
	</entry>
	</feed>
