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

	<title>Objective Development Forums</title>
	
	<link href="https://forums.obdev.at/index.php" />
	<updated>2010-03-03T23:59:17+02:00</updated>

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

		<entry>
		<author><name><![CDATA[ulao]]></name></author>
		<updated>2010-03-03T02:30:48+02:00</updated>

		<published>2010-03-03T02:30:48+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=3943&amp;p=13492#p13492</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=3943&amp;p=13492#p13492"/>
		<title type="html"><![CDATA[Re: report size &gt; then 8]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=3943&amp;p=13492#p13492"><![CDATA[
ok looks like maximum packet size ( in my device config ) is the value that I need to increase but going from 8 to 9 prevents and packets from working, however going from 8 to 7, does just as expected, allows only 7. I also see the device descriptor has a packet size but changing that prevents my usb from enumerating.  There must be another value I need to change to get more then 8.<br /><br />I was also thinking it was in 8's but 16 didnt work.<br /><br />Ok I use usbalyzer and see I'm chaining wMaxPacketSize but I also see bMaxPacketSize is still 8, cant find a way to change that nor am I sure it need to be ( but feel it should be 16 ).<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=1281">ulao</a> — Wed Mar 03, 2010 2:30 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[ulao]]></name></author>
		<updated>2010-03-03T23:59:17+02:00 </updated>

		<published>2010-02-28T02:33:01+02:00</published>
		<id>https://forums.obdev.at/viewtopic.php?t=3943&amp;p=13438#p13438</id>
		<link href="https://forums.obdev.at/viewtopic.php?t=3943&amp;p=13438#p13438"/>
		<title type="html"><![CDATA[packet size &gt; then 8]]></title>

		
		<content type="html" xml:base="https://forums.obdev.at/viewtopic.php?t=3943&amp;p=13438#p13438"><![CDATA[
I never really needed a length greater than 64 before but found out setting my REPORT_SIZE to a 9 causes enumeration issues. Guessing there is a setting for htis as I know I have seen sizes in the 16's or at least greater then 8.<br /><br />This is my config <br /><div class="codebox"><p>Code: </p><pre><code>var usbDescriptorConfiguration&#91;&#93; = { 0 }; // dummy<br /><br />uchar my_usbDescriptorConfiguration&#91;&#93; = {    /* USB configuration descriptor */<br />    9,          /* sizeof(usbDescriptorConfiguration): length of descriptor in bytes */<br />    USBDESCR_CONFIG,    /* descriptor type */<br />    18 + 7 * USB_CFG_HAVE_INTRIN_ENDPOINT + 9, 0,<br />                /* total length of data returned (including inlined descriptors) */<br />    1,          /* number of interfaces in this configuration */<br />    1,          /* index of this configuration */<br />    0,          /* configuration name string index */<br />#if USB_CFG_IS_SELF_POWERED<br />    USBATTR_SELFPOWER,  /* attributes */<br />#else<br />    USBATTR_BUSPOWER,   /* attributes */<br />#endif<br />    USB_CFG_MAX_BUS_POWER/2,            /* max USB current in 2mA units */<br />/* interface descriptor follows inline: */<br />    9,          /* sizeof(usbDescrInterface): length of descriptor in bytes */<br />    USBDESCR_INTERFACE, /* descriptor type */<br />    0,          /* index of this interface */<br />    0,          /* alternate setting for this interface */<br />    USB_CFG_HAVE_INTRIN_ENDPOINT,   /* endpoints excl 0: number of endpoint descriptors to follow */<br />    USB_CFG_INTERFACE_CLASS,<br />    USB_CFG_INTERFACE_SUBCLASS,<br />    USB_CFG_INTERFACE_PROTOCOL,<br />    0,          /* string index for interface */<br />//#if (USB_CFG_DESCR_PROPS_HID &amp; 0xff)    /* HID descriptor */<br />    9,          /* sizeof(usbDescrHID): length of descriptor in bytes */<br />    USBDESCR_HID,   /* descriptor type: HID */<br />    0x01, 0x01, /* BCD representation of HID version */<br />    0x00,       /* target country code */<br />    0x01,       /* number of HID Report (or other HID class) Descriptor infos to follow */<br />    0x22,       /* descriptor type: report */<br />    USB_CFG_HID_REPORT_DESCRIPTOR_LENGTH, 0,  /* total length of report descriptor */<br />//#endif<br />#if USB_CFG_HAVE_INTRIN_ENDPOINT    /* endpoint descriptor for endpoint 1 */<br />    7,          /* sizeof(usbDescrEndpoint) */<br />    USBDESCR_ENDPOINT,  /* descriptor type = endpoint */<br />    0x81,       /* IN endpoint number 1 */<br />    0x03,       /* attrib: Interrupt endpoint */<br />    8, 0,       /* maximum packet size */<br />    USB_CFG_INTR_POLL_INTERVAL, /* in ms */<br />#endif<br />};</code></pre></div><br /><br /><br />and this is my descriptor <br /><div class="codebox"><p>Code: </p><pre><code>const char generic_usbHidReportDescriptor&#91;&#93; PROGMEM = {<br />    0x05, 0x01,                    // USAGE_PAGE (Generic Desktop)<br />    0x09, 0x05,                    // USAGE (Gamepad)<br />    0xa1, 0x01,                    // COLLECTION (Application)<br />   <br />    0x09, 0x01,                    //   USAGE (Pointer)    <br />   0xa1, 0x00,                    //   COLLECTION (Physical)<br />   0x05, 0x01,                    //     USAGE_PAGE (Generic Desktop)<br />    0x09, 0x30,                    //     USAGE (X)<br />    0x09, 0x31,                    //     USAGE (Y)<br />   <br />   0x09, 0x33,                  //     USAGE (Rx)<br />   0x09, 0x34,                  //     USAGE (Ry)<br /><br />   0x09, 0x35,                  //     USAGE (Rz)   <br />   0x09, 0x36,                  //     USAGE (Slider)   <br /><br />    0x15, 0x00,                    //     LOGICAL_MINIMUM (0)<br />    0x26, 0xFF, 0x00,              //     LOGICAL_MAXIMUM (255)<br />    0x75, 0x08,                    //     REPORT_SIZE (8)<br />    0x95, 0x06,                    //     REPORT_COUNT (6)<br />    0x81, 0x02,                    //     INPUT (Data,Var,Abs)<br />   0xc0,                          //   END_COLLECTION (Physical)<br /><br />    0x05, 0x09,                    // USAGE_PAGE (Button)<br />    0x19, 0x01,                    //   USAGE_MINIMUM (Button 1)<br />    0x29, 24,                    //   USAGE_MAXIMUM (Button 24)<br />    0x15, 0x00,                    //   LOGICAL_MINIMUM (0)<br />    0x25, 0x01,                    //   LOGICAL_MAXIMUM (1)<br />    0x75, 0x01,                    // REPORT_SIZE (1)<br />    0x95, 24,                    // REPORT_COUNT (24)<br />    0x81, 0x02,                    // INPUT (Data,Var,Abs)<br />    0xc0<br />};</code></pre></div><br /><br />What did I miss?<p>Statistics: Posted by <a href="https://forums.obdev.at/memberlist.php?mode=viewprofile&amp;u=1281">ulao</a> — Sun Feb 28, 2010 2:33 am</p><hr />
]]></content>
	</entry>
	</feed>
