From: Johann D. <joh...@it...> - 2005-04-15 08:23:18
|
Micha=B3 Pytasz wrote: > Hi, >=20 > I'm sorry for bothering You, I hope it is the right list. So fat I read= most=20 > of it's history, and I guess (almost) all of what is related to logitec= h=20 > devices. That's the right place. It's dedicated to all discussions dealing with=20 drivers for force-feedback devices. >=20 > I have Logitech Wingman Force 3D and I'm interested in getting to know = how to=20 > use it in own programs, also I think I could help in driver and library= =20 > development. Earlier I thought I have problems making it work, since on= ly=20 > "constant force" in fftest was giving a (hardly) noticable effect. Corr= ect me=20 > if I'm wrong, but is it the only effect implemented for this joystick (= at=20 > least at the moment) ? It's the only effect implemented, it will stay that way unless someone=20 else works some more on the driver. >=20 > I started learning how to communicate with the device, I have c++ class= =20 > "Joystick" written mostly using HID howto. For now it can only read pos= ition=20 > from the device (periodicaly, in separate thread), output some informat= ion=20 > about the device, set gain and autocenter - so it is very far from fini= shed,=20 > however when it will be closer to the desired result, I think it could = be=20 > some "beginning" for more universal library. Yes, great! > I would be interested in adding (or helping to add) better support for=20 > Logitech Wingman Force 3D (since it is the device I have at the moment)= .=20 > Do You have any suggestions for beginner (not in programming, but in re= verse=20 > engineering) on how to find joystick's abilities (and how to connect th= em to=20 > specific commands) When I had a working wingman 3d joystick, I used to look at the usb data=20 it sent and received in windows, using a usb packet snooper (I think the=20 name of the soft was snoopy). I generated effects using some effects designer by immersion (see their=20 developer web pages). My advice: 1. look at the usb data when nothing happens (no effect played, joystick=20 not moving) 2. look at the data when the joystick moves 3. Identify packets describing the state of the stick. Those are not the=20 packets you are interested in. 4. look at the data when effects are played 5. Identify the packets that were not there in 2 and 1. Those are=20 probably force-feedback packets 6. Change the parameters of the effects, look at the data, guess what=20 bytes encode what parameters I've already done 1 to 5, I was trying to do 6 for spring/friction=20 effects when my stick stopped working. The packets for condition effects use the same pipe as packets for=20 constant force, they have a similar structure as well. You might want to install cygwin so that you get access to grep, sort...=20 they are usefull to sort and filter large anounts of data automatically. >=20 > Below a little more detailed version of what I can see using ffutils. >=20 That won't help you reverse engineer anything, unfortunately. You have=20 to look at what happens in windows. --=20 Johann |