From: Rodrigo D. <cu...@uo...> - 2002-01-19 00:39:10
|
Hello...I just joined this list...I'm interested in helping develop=20 support for the Microsoft Sidewinder Force Feedback 2...I have that=20 joystick and have a working copy of Bus Hound(I cracked the demo version=20 to log past 4Kb), but I don't know how to interpret some of the hex=20 data...I've realized some things, for example a phase that starts with=20 01 is to report buttons and axes, "02 32 00" is when you hold the=20 stick(there's a little sensor), "02 36 00" is when you release it, and=20 so on... On the bottom of the joystick it says it uses I-Force licensed to=20 Microsoft from Immersion Corp....is it just basic I-Force? If so how do=20 we get it to work in linux?? Has anyone worked on this? Anyway, I'm willing to help implement this... Rodrigo --=20 ******************************* * Rodrigo Damazio * * *************************** * * cu...@uo... * * rod...@po... * * ICQ: #3560450 * * http://www.vros.com/cuddly/ * * *************************** * * Engenharia da Computa=E7=E3o * * Escola Polit=E9cnica * * USP - S=E3o Paulo * ******************************* |
From: Bj|rn A. <d3a...@dt...> - 2002-01-19 01:02:58
|
Quoting Rodrigo Damazio <cu...@uo...>: > Hello...I just joined this list...I'm interested in helping develop > support for the Microsoft Sidewinder Force Feedback 2...I have that > joystick So do I, and I've been working on supporting it for the last week. Have a look at the archives of this list and usb-devel. > I don't know how to interpret some of the hex > data...I've realized some things, for example a phase that starts with > 01 is to report buttons and axes, "02 32 00" is when you hold the > stick(there's a little sensor), "02 36 00" is when you release it, and > so on... Can you send me the dumps you have? That could really help me understand some problems I'm having. I started from the other direction, from the spec down, instead of from the wires up. > On the bottom of the joystick it says it uses I-Force licensed to > Microsoft from Immersion Corp....is it just basic I-Force? If so how do > we get it to work in linux?? Has anyone worked on this? Nope, it's a HID/PID device. There's specs for that on www.usb.org, and that will help you understand your dumps. > Anyway, I'm willing to help implement this... Great! I hope to have some patches by tomorrow. /August. -- Wrong on most accounts. const Foo *foo; and Foo const *foo; mean the same: foo being a pointer to const Foo. const Foo const *foo; would mean the same but is illegal (double const). You are confusing this with Foo * const foo; and const Foo * const foo; respectively. -David Kastrup, comp.os.linux.development.system |
From: Rodrigo D. <cu...@uo...> - 2002-01-19 02:37:04
|
Bj|rn Augustsson wrote: >Quoting Rodrigo Damazio <cu...@uo...>: > >> Hello...I just joined this list...I'm interested in helping develop= =20 >>support for the Microsoft Sidewinder Force Feedback 2...I have that=20 >>joystick >> > >So do I, and I've been working on supporting it for the last week. >Have a look at the archives of this list and usb-devel. > I've read it... Regarding the HID-specific stuff which isn't supported through=20 the event API, such as binding physical units, how about using a=20 "/dev/usb/hidsomething" device which could control this?? I guess this=20 is more generic than creating it on the "jsx" device because it applies=20 to many kinds of HIDs, not just joysticks... >>I don't know how to interpret some of the hex=20 >>data...I've realized some things, for example a phase that starts with=20 >>01 is to report buttons and axes, "02 32 00" is when you hold the=20 >>stick(there's a little sensor), "02 36 00" is when you release it, and=20 >>so on... >> > >Can you send me the dumps you have? That could really help me understand >some problems I'm having. I started from the other direction, from the=20 >spec down, instead of from the wires up. > I have looked at the specs too, but at first sight they didn't=20 help much, mostly because I had never looked at USB in a low level...but=20 I'll look at them better tonight...does this joystick follow those specs=20 then? Or do we really have to guess how it works? I'll send you some dumps by e-mail(so as not to clutter up the=20 mailing list)...do have Immersion Studio?? If not you should get it,=20 because my dumps are all done while using it(I set it to use the SFF2=20 through DirectInput)...then you can know what was happening during each=20 dump... >> Anyway, I'm willing to help implement this... >> > >Great! I hope to have some patches by tomorrow. > Cool.... Rodrigo --=20 ******************************* * Rodrigo Damazio * * *************************** * * cu...@uo... * * rod...@po... * * ICQ: #3560450 * * http://www.vros.com/cuddly/ * * *************************** * * Computing Engineering * * Polytechnic School * * USP - S=E3o Paulo * ******************************* |
From: Johann D. <jo...@Do...> - 2002-01-19 16:20:45
|
On Sat, 19 Jan 2002, Rodrigo Damazio wrote: > Bj|rn Augustsson wrote: > > >Quoting Rodrigo Damazio <cu...@uo...>: > [...] > Regarding the HID-specific stuff which isn't supported through > the event API, such as binding physical units, how about using a > "/dev/usb/hidsomething" device which could control this?? I guess this > is more generic than creating it on the "jsx" device because it applies > to many kinds of HIDs, not just joysticks... The event API is not fixed, as far as I know. It would be better to use this one. Indeed, we do not know for sure this is hid specific. > > >>I don't know how to interpret some of the hex > >>data...I've realized some things, for example a phase that starts with > >>01 is to report buttons and axes, "02 32 00" is when you hold the > >>stick(there's a little sensor), "02 36 00" is when you release it, and > >>so on... > >> > > Funny, this really looks like the I-Force protocol. May I have a copy of your dumps ? According to Immersion, Microsoft uses its own software and drivers, which Immersion knows nothing about. But maybe they actually use the iforce protocol. I don't know. On the other hand, I notice that the pid spec does not differe much from the iforce one. > >Can you send me the dumps you have? That could really help me understand > >some problems I'm having. I started from the other direction, from the > >spec down, instead of from the wires up. > > > I have looked at the specs too, but at first sight they didn't > help much, mostly because I had never looked at USB in a low level...but > I'll look at them better tonight...does this joystick follow those specs > then? Or do we really have to guess how it works? > I'll send you some dumps by e-mail(so as not to clutter up the > mailing list)...do have Immersion Studio?? If not you should get it, Well, if you compress them, they should not be that big, should they ? At least, please also send a copy to me. > because my dumps are all done while using it(I set it to use the SFF2 > through DirectInput)...then you can know what was happening during each > dump... > -- Johann Deneux |
From: Rodrigo D. <cu...@uo...> - 2002-01-19 19:19:32
Attachments:
sideff2_dumps.tar.bz2
|
Johann Deneux wrote: >On Sat, 19 Jan 2002, Rodrigo Damazio wrote: > >>Bj|rn Augustsson wrote: >> >>>Quoting Rodrigo Damazio <cu...@uo...>: >>> >>[...] >> Regarding the HID-specific stuff which isn't supported through=20 >>the event API, such as binding physical units, how about using a=20 >>"/dev/usb/hidsomething" device which could control this?? I guess this=20 >>is more generic than creating it on the "jsx" device because it applies= =20 >>to many kinds of HIDs, not just joysticks... >> > >The event API is not fixed, as far as I know. It would be better to use >this one. Indeed, we do not know for sure this is hid specific.=20 > >>>>I don't know how to interpret some of the hex=20 >>>>data...I've realized some things, for example a phase that starts wit= h=20 >>>>01 is to report buttons and axes, "02 32 00" is when you hold the=20 >>>>stick(there's a little sensor), "02 36 00" is when you release it, an= d=20 >>>>so on... >>>> > >Funny, this really looks like the I-Force protocol. May I have a copy of >your dumps ? According to Immersion, Microsoft uses its own software and >drivers, which Immersion knows nothing about. But maybe they actually us= e >the iforce protocol. I don't know. On the other hand, I notice that the >pid spec does not differe much from the iforce one. > Okay, today I looked deeper into the specs, and I found out it's=20 *partially* compliant...almost everything works according to the PID=20 specs, with a few exceptions..02(set envelope) has 7 bytes after it=20 instead of 6...06(Set ramp) has 3 bytes after it instead of 4...is this=20 the I-Force protocol?? I'm attaching some commented dumps to this message= ... >>>Can you send me the dumps you have? That could really help me understa= nd >>>some problems I'm having. I started from the other direction, from the= =20 >>>spec down, instead of from the wires up. >>> >> I have looked at the specs too, but at first sight they didn't=20 >>help much, mostly because I had never looked at USB in a low level...bu= t=20 >>I'll look at them better tonight...does this joystick follow those spec= s=20 >>then? Or do we really have to guess how it works? >> I'll send you some dumps by e-mail(so as not to clutter up the=20 >>mailing list)...do have Immersion Studio?? If not you should get it,=20 >> > >Well, if you compress them, they should not be that big, should they ? A= t >least, please also send a copy to me. > I'm sending a bzip2-ed copy here...if you want more dumps please=20 let me know(I didn't save most of my tests, I just looked at them on the=20 screen and guessed the meaning of bytes by changing parameters in=20 Immersion Studio... Rodrigo --=20 ******************************* * Rodrigo Damazio * * *************************** * * cu...@uo... * * rod...@po... * * ICQ: #3560450 * * http://www.vros.com/cuddly/ * * *************************** * * Engenharia da Computa=E7=E3o * * Escola Polit=E9cnica * * USP - S=E3o Paulo * ******************************* |
From: Bj|rn A. <d3a...@dt...> - 2002-01-19 20:31:38
|
Quoting Rodrigo Damazio <cu...@uo...>: > Okay, today I looked deeper into the specs, and I found out it's > *partially* compliant...almost everything works according to the PID > specs, with a few exceptions..02(set envelope) has 7 bytes after it > instead of 6...06(Set ramp) has 3 bytes after it instead of 4...is this > the I-Force protocol?? I'm attaching some commented dumps to this message... No, this is OK data. The joystick uses the "Device managed" sceme for memory management. Read sections 5.11 and 9 of the PID spec and you'll see. Set envelope: Effect block index 8 Attack level 8 Fade level 8 Attack time 16 Fade time 16 Set Ramp: Effect block index 8 start ramp 8 end ramp 8 > I'm sending a bzip2-ed copy here...if you want more dumps please > let me know(I didn't save most of my tests, I just looked at them on the > screen and guessed the meaning of bytes by changing parameters in > Immersion Studio... Thanks a lot for this data! As I said,it's really refreshing seeing this stuff "from the other side". /August. -- Wrong on most accounts. const Foo *foo; and Foo const *foo; mean the same: foo being a pointer to const Foo. const Foo const *foo; would mean the same but is illegal (double const). You are confusing this with Foo * const foo; and const Foo * const foo; respectively. -David Kastrup, comp.os.linux.development.system |