tflight4 icon indicating copy to clipboard operation
tflight4 copied to clipboard

activating a foot rudders

Open Grechary opened this issue 4 years ago • 7 comments

Many thanks for your work, I succeeded in installing HOTAS 4 for my Ubuntu 20.04.

I saw your project about activating a foot rudders. Did you still work on this way ? As I have a foot rudders, I would be really interested. I would be pleased if I can help you in any maner or if I can give you any information or log.

Kind regards G Chaillou

Grechary avatar Oct 18 '21 12:10 Grechary

Hello I give more details. The rudder works fine with FlightGear, but it doesn't work with X Plane 10. With FlightGEar, the rudder is connected directly as USB with the adaptator. For X Plane, I tried every method to connect the rudder : connected to the joystick, connected with the USB adaptator with or without the joystick. I tried also to change the .rules. But it doesn't work.

May be it's an issue on X Plane side. I will keep you informed. Regards G Chaillou

Grechary avatar Oct 26 '21 10:10 Grechary

I’m certainly interested in getting the rudders to work. I didn’t realize they could be directly connected to a computer. If you can capture the usb packets starting at zero, full left and then full right, while plugged into the joystick, I can compare them to the HID descriptor and see if it needs more patching. Wireshark would be the preferable capture tool/format.

walterschell avatar Oct 26 '21 11:10 walterschell

Hello I'm didn't succeed with wireshark right now, i'm not used to. I will try again. I tried with evtest. I have data when the rudder is directly connected to the usb. But when the rudder is connected to the Hotas, I can't get any data. I should try with Wireshark. You will find enclosed my data.

Rudder-DIRECT-USB.zip

Grechary avatar Oct 27 '21 18:10 Grechary

I tried a simple evtest with Rudder connected to Hotas, and with Rudder disconnected to Hotas. There is no difference. It looks like the Hotas's driver didn't see the Rudder.

Hotas.zip

Grechary avatar Oct 27 '21 18:10 Grechary

I need a trace of the usb packets themselves. At least with the throttle, the data was still in the packet, just in a region that was ignored by the default hid descriptor.

walterschell avatar Oct 28 '21 22:10 walterschell

Hello, I did different tests to get usb traces.

--- First, I did the test with the rudder connected directly on USB (Device 2) I move the rudder to the right, then came back to center, then I turned left and came back. Then I pushed the right brake, release it. Then push the left brake and release it.

You can see details of the capture (wireshark and cat usbmon) into the file TRudder-direct-connexion.zip TRudder-direct-connexion.zip

lsusb : Bus 001 Device 002: ID 044f:b679 ThrustMaster, Inc. T-Rudder

cat /sys/kernel/debug/usb/devices T: Bus=01 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#= 2 Spd=12 MxCh= 0 D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=044f ProdID=b679 Rev= 1.10 S: Manufacturer=Thrustmaster S: Product=T-Rudder S: SerialNumber=00000000001A C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA I:* If#= 0 Alt= 0 #EPs= 2 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid E: Ad=01(O) Atr=03(Int.) MxPS= 64 Ivl=5ms E: Ad=81(I) Atr=03(Int.) MxPS= 64 Ivl=5ms

cat /sys/kernel/debug/usb/usbmon/1u > /tmp/1.mon.out

--- Then I did the test with the rudder connected to T.Flight Hotas (Device 10). I proceed th same way, without any other action on the joystick. I move the rudder to the right, then came back to center, then I turned left and came back. Then I pushed the right brake, release it. Then push the left brake and release it.

I did the capture (wireshark and cat usbmon) into the file TRudder-over-Hotas.zip TRudder-over-Hotas.zip

But I can't see anything in the capture. ? Do you have any idea ?

lsusb : Bus 001 Device 010: ID 044f:b67b ThrustMaster, Inc. T.Flight Hotas

cat /sys/kernel/debug/usb/devices T: Bus=01 Lev=01 Prnt=01 Port=07 Cnt=02 Dev#= 10 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=044f ProdID=b67b Rev= 1.00 S: Manufacturer=Thrustmaster S: Product=T.Flight Hotas C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA I:* If#= 0 Alt= 0 #EPs= 2 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid E: Ad=84(I) Atr=03(Int.) MxPS= 64 Ivl=5ms E: Ad=03(O) Atr=03(Int.) MxPS= 64 Ivl=5ms

cat /sys/kernel/debug/usb/usbmon/1u > /tmp/2.mon.out

Grechary avatar Nov 06 '21 18:11 Grechary

It looks like the packet content is being omitted from the text file and the binary file is to short. Wireshark should give you a .pcap or .pcapng file. If that doesn’t work, try https://www.systutorials.com/docs/linux/man/8-usbhid-dump/

walterschell avatar Nov 06 '21 21:11 walterschell