
I'm very happy to participate of the GIMX project.
I thought the ps3 was only polling the sixaxis at 100Hz?J2Kbr wrote:On the PS3 we achieved a rate higher than 400 updates/s,
What latency are you measuring in your tests?J2Kbr wrote:with average latency around 2.3ms.
If you look at the USB descriptors of DS3 the "interval" parameter of endpoints is 1 (1 ms), which means a max pooling rate of 1000Hz. I'm not sure about Bluetooth pooling rate.Matlo wrote:I thought the ps3 was only polling the sixaxis at 100Hz?
I'm measuring, basically, the time required to send a data packet from the application to the GPP and, consequently, to the console.Matlo wrote:What latency are you measuring in your tests? The time between the usb packet from the gamepad and the usb packet to the console?
The BT polling rate is 100Hz, and I thought the USB polling rate would also be 100Hz. But you are right about the USB descriptorJ2Kbr wrote: If you look at the USB descriptors of DS3 the "interval" parameter of endpoints is 1 (1 ms), which means a max pooling rate of 1000Hz. I'm not sure about Bluetooth pooling rate.
The source code is already commited to the svn repo, but I still need to code a few things for the Linux hidraw layer.J2Kbr wrote: Anything I can do to help you in relation to GIMX and GPP, please just tell me.
As this interval is 4ms for the 360 pad, it is useless to send updates faster than 250Hz to the GPP connected to a 360, right?J2Kbr wrote:If you look at the USB descriptors of DS3 the "interval" parameter of endpoints is 1 (1 ms), which means a max pooling rate of 1000Hz.
Good!Matlo wrote:I did the same test in Linux with a PS3 and I got similar numbers.
You're right about the interval of XBox360. ButMatlo wrote:As this interval is 4ms for the 360 pad, it is useless to send updates faster than 250Hz to the GPP connected to a 360, right?J2Kbr wrote:If you look at the USB descriptors of DS3 the "interval" parameter of endpoints is 1 (1 ms), which means a max polling rate of 1000Hz.
I actually had a look at the USB descriptors of the GPP but I didn't see such values. I guess that's because I still have not updated the firmware.J2Kbr wrote: You're right about the interval of XBox360. But... if you looking at the USB descriptors of GPP, in both XBox360 and PS3 modes, you will see that I changed the bInterval of EndPoints to 0.
I just checked here and actually bInterval values are no longer 0, I had changed it when I did some compatibility testing. I'll return these parameters to 0 (or 1) in the next FW.Matlo wrote:I actually had a look at the USB descriptors of the GPP but I didn't see such values. I guess that's because I still have not updated the firmware.
For being counter I believe make it 0 has the same effect as if it was 1, since 1ms is the smallest unit of time for tokens transmission of USB protocol. I "copied" this idea from a Bluetooth adapter I have here, which has bInterval = 0 in some endpoints.Matlo wrote:The usb spec specifies that bInterval should be in 1-255 for full-speed devices.
What's the effect of setting 0 as bInterval? Does the host still poll the device each frame = 1ms?