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

	<title>Objective Development Forums</title>
	
	<link href="https://forums.obdev.at/index.php" />
	<updated>2011-08-03T05:11:22+02:00</updated>

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

		<entry>
		<author><name><![CDATA[ulao]]></name></author>
		<updated>2011-08-03T05:11:22+02:00</updated>

		<published>2011-08-03T05:11:22+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=4776&amp;p=19229#p19229</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=19229#p19229"/>
		<title type="html"><![CDATA[Re: Packet Size &gt; 8 bytes on Interrupt In Endpoint]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=19229#p19229"><![CDATA[
Not sure you come by here or not anymore ( could not reach you via email ) hopping you could just spare a few moments. I was able to apply the patch but it seems the packets stop after 5 tries?<br /><br />I did a test with a blink LED, and I get 5 blinks and then it stops. If I take out the sender<br /><br /> while(!usbInterruptIsReady3()) usbPoll();usbSetInterrupt3(XreportBuffer, 20); <br /><br />then the blink is continuous. If I remove the patched usbdrv, then all is well ( blinks away) but of course I only get 8 bytes. I also noticed your not using the new driver, I think the one you have is a bit old and possible parts of different drivers? plus you load all 27 packets but only send 20 ( in the comment you state 21-27 have some needed info )? It also looks like you use disconnected/connect yet dont configure USB_CFG_PULLUP_IOPORTNAME , didnt think that was possible? The thing that gets me the most is the desc_device(see code below). Whether or not the svn is correct this is all very confusing. Would it be possible to try out the latest driver or perhaps lend some help my way? Would be so grateful!<br /><br /><br />How is this in any way an xbox? The packet size, I would assume is to be 0x40 but that depends on how you did the hack. Next the VIP/PID for XBOX is<br /><br />0x5E, 0x04,//vendor ID <br />0x02, 0x02, //product ID<br /><br /> in some cases the product ID is something else. The Vendor in your code is  0x03, 0x04(0403  Future Technology Devices International, Ltd)? and the last 4 bits should be 1,0,0,0.<br /><div class="codebox"><p>Code: </p><pre><code>PROGMEM char usbDescriptorDeviceXBox&#91;&#93; = {    /* USB device descriptor */<br />    18,         /* sizeof(usbDescriptorDevice): length of descriptor in bytes */<br />    USBDESCR_DEVICE,        /* descriptor type */<br />    0x10, 0x01,             /* USB version supported */<br />    USB_CFG_DEVICE_CLASS,<br />    USB_CFG_DEVICE_SUBCLASS,<br />    0,                      /* protocol */<br />    8,                      /* max packet size */<br />    /* the following two casts affect the first byte of the constant only, but<br />     * that's sufficient to avoid a warning with the default values.<br />     */<br />    USB_CFG_FTDI_VENDOR_ID,   /* 2 bytes */<br />    0x29, 0x8E,            /* product ID (2 bytes) */<br />    USB_CFG_DEVICE_VERSION, /* 2 bytes */<br />    1,          /* manufacturer string index */<br />    2,          /* product string index */<br />    0,          /* serial number string index */<br />    1,          /* number of configurations */<br />};</code></pre></div><br /><br /><br />I believe the root of my issues with the hacked firmware is that usbFunctionDescriptor nor usbFunctionSetup  are ever called?  Again, this works with the un hacked version.<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=1281">ulao</a> — Wed Aug 03, 2011 5:11 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[ulao]]></name></author>
		<updated>2010-10-01T16:53:50+02:00</updated>

		<published>2010-10-01T16:53:50+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=4776&amp;p=16052#p16052</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=16052#p16052"/>
		<title type="html"><![CDATA[Re: Packet Size &gt; 8 bytes on Interrupt In Endpoint]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=16052#p16052"><![CDATA[
I could not figure out the svn url. Tried many ways. thx for this!<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=1281">ulao</a> — Fri Oct 01, 2010 4:53 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[IvIePhisto]]></name></author>
		<updated>2010-10-01T13:08:37+02:00</updated>

		<published>2010-10-01T13:08:37+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=4776&amp;p=16050#p16050</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=16050#p16050"/>
		<title type="html"><![CDATA[Re: Packet Size &gt; 8 bytes on Interrupt In Endpoint]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=16050#p16050"><![CDATA[
Sorry to answer so late, too much to do <img class="smilies" src="./../../../images/smilies/icon_sad.gif" alt=":(" title="Sad" /><br /><blockquote><div><cite>ulao wrote:</cite>Is there any way to zip up the usbdrv folder?</div></blockquote>You could have checked out the SVN repository, but I made a <a href="http://svn.combo-convention.de/filedetails.php?repname=dualstrike&amp;path=%2FFirmware%2Fusbdrv_with_iie3_big_packet_hack.zip" class="postlink">package of the customized V-USB</a> for you. I recommend diff to see the changes to your files <img class="smilies" src="./../../../images/smilies/icon_wink.gif" alt=";)" title="Wink" /><p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=4253">IvIePhisto</a> — Fri Oct 01, 2010 1:08 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[ulao]]></name></author>
		<updated>2010-09-27T00:03:37+02:00</updated>

		<published>2010-09-27T00:03:37+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=4776&amp;p=16005#p16005</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=16005#p16005"/>
		<title type="html"><![CDATA[Re: Packet Size &gt; 8 bytes on Interrupt In Endpoint]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=16005#p16005"><![CDATA[
I tried with no avail. I get <br />usbdrv/usbdrv.h:446: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'char'<br />but have copy and pasted a couple of times. Is there any way to zip up the usbdrv folder?<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=1281">ulao</a> — Mon Sep 27, 2010 12:03 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[ulao]]></name></author>
		<updated>2010-09-18T18:46:21+02:00</updated>

		<published>2010-09-18T18:46:21+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15905#p15905</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15905#p15905"/>
		<title type="html"><![CDATA[Re: Packet Size &gt; 8 bytes on Interrupt In Endpoint]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15905#p15905"><![CDATA[
Congratulations! can't wait to try it out.<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=1281">ulao</a> — Sat Sep 18, 2010 6:46 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[IvIePhisto]]></name></author>
		<updated>2010-09-18T17:42:56+02:00</updated>

		<published>2010-09-18T17:42:56+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15904#p15904</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15904#p15904"/>
		<title type="html"><![CDATA[I got it to work on XBox]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15904#p15904"><![CDATA[
OK, I got it and it works on XBox1. I modified interrupt in endpoint 3 (acting as endpoint 2) to send up to 27 bytes, with 4 bytes CRC and sync that makes 31 bytes transferred. Now I'm using bit 6 for ready signalization on usbTxLen3, before 4 was used. As USBPID_NAK is used for this purposes which has bit 6 set to 1 as well as bit 4 it works on the XBox - Windows correctly spots an error (low-speed device with maximum packet size &gt; 8 ) and signals the device to malfunction.<br />The code is scattered across some files, see &quot;xbox.c&quot;, &quot;usbdrv/usbdrv.h&quot;, &quot;usbdrv/usbrv.c&quot;, &quot;usbdrv/asmcommon.inc&quot; and &quot;usbconfig.h&quot; in <a href="http://svn.combo-convention.de/listing.php?repname=dualstrike&amp;path=%2FFirmware%2FTrunk%2Fusb%2F&amp;rev=320&amp;sc=1" class="postlink">the folder Firmware/Trunk/usb in the Dual Strike SVN repository</a>.<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=4253">IvIePhisto</a> — Sat Sep 18, 2010 5:42 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[IvIePhisto]]></name></author>
		<updated>2010-08-31T14:24:34+02:00</updated>

		<published>2010-08-31T14:24:34+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15733#p15733</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15733#p15733"/>
		<title type="html"><![CDATA[Re: Packet Size &gt; 8 bytes on Interrupt In Endpoint]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15733#p15733"><![CDATA[
<blockquote class="uncited"><div>And, as you have noticed, we encode other info in the length. So the <br />maximum is probably 31 bytes unless you introduce bigger changes.</div></blockquote>This is hard thing, to find all instructions that use the length bits.<br /><blockquote><div><cite>ulao wrote:</cite>In regards to &quot;Did you investigate whether any host side driver accepts bigger packets? &quot; I'm 99% sure it does. In this case its an Xbox, and we know its packet size is 32. Also I'm pretty confident we dont need 32, as sending 8 seems to satisfy the Xbox.  Sending 31 may be ok, I need to see what the last byte is for.</div></blockquote>I think we only need to send 20 bytes, as this is the report size. 20 in binary is &quot;10100&quot;, but bit 4 is used for NAK information, so every part of the code that uses this bit has to be changed. This needs some serious Assembler tracing and I will try it. But as I am on vacation for some days, this will take some time...<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=4253">IvIePhisto</a> — Tue Aug 31, 2010 2:24 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[ulao]]></name></author>
		<updated>2010-08-30T15:48:24+02:00</updated>

		<published>2010-08-30T15:48:24+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15726#p15726</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15726#p15726"/>
		<title type="html"><![CDATA[Re: Packet Size &gt; 8 bytes on Interrupt In Endpoint]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15726#p15726"><![CDATA[
I took the liberty in contacting Christian myself.  He admits his busy lifestyle does not easily lend to free time, hence he finds it hard to comment on the forums. However this is his reply.<br /><br /><br /><blockquote class="uncited"><div><br />Did you investigate whether any host side driver accepts bigger packets? <br />I doubt it...<br /> <br />I see more problems, though: Since synchronization takes place only at <br />the beginning of the communication, clock deviations sum up and the <br />phase of the signals may drift away. Not so much of an issue with <br />modules that have a built-in PLL to re-synchronize, but may be bad for <br />the standard crystal based modules.<br /> <br />And, as you have noticed, we encode other info in the length. So the <br />maximum is probably 31 bytes unless you introduce bigger changes.<br /> <br /> <br />Regards, Christian.</div></blockquote><br /><br />In regards to &quot;Did you investigate whether any host side driver accepts bigger packets? &quot; I'm 99% sure it does. In this case its an Xbox, and we know its packet size is 32. Also I'm pretty confident we dont need 32, as sending 8 seems to satisfy the Xbox.  Sending 31 may be ok, I need to see what the last byte is for.<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=1281">ulao</a> — Mon Aug 30, 2010 3:48 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[IvIePhisto]]></name></author>
		<updated>2010-08-24T04:46:39+02:00</updated>

		<published>2010-08-24T04:46:39+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15668#p15668</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15668#p15668"/>
		<title type="html"><![CDATA[Packet Size &gt; 8 bytes on Interrupt In Endpoint]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=4776&amp;p=15668#p15668"><![CDATA[
Hi!<br /><br />I want to modify the V-USB code to allow my device to send more than 8 bytes in one packet. I know it contradicts the standard for low-speed USB devices but other things also work which shouldn't. I know that the buffers are to small, but that's changeable. It's also perfectly possible to supply packet lengths greater than 8 to usbSetInterrupt[3], but it doesn't send all of the data. As I understand it after the label &quot;handleIn3&quot; in &quot;asmcommon.inc&quot; the supplied packet length is sent by &quot;rjmp    sendCntAndReti&quot;, then the data is sent in &quot;usbSendAndReti&quot;. Both labels reside in the clock-specific include files, I'm using 12Mhz so had a look in &quot;usbdrvasm12.inc&quot;. I think there packet sizes greater than 8 should work, as the bytes are sent until &quot;cnt&quot; is 0 by &quot;brne    txLoop&quot;. The only problem I see for my case is &quot;sbrc    cnt, 4&quot; after &quot;handleIn3&quot; as bit 4 is used for some NAK signaling, a packet size of 32 is &quot;0b100000&quot;. Did I get everything right? Did I miss something? Ideas?<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=4253">IvIePhisto</a> — Tue Aug 24, 2010 4:46 am</p><hr />
]]></content>
	</entry>
	</feed>
