gotzl / hid-fanatecff

Driver to support FANATEC input devices, in particular ForceFeedback of various wheel-bases
GNU General Public License v2.0
160 stars 21 forks source link

Incorrect wheel_id of CSL Steering Wheel P1 V2 #87

Open HardTy opened 1 month ago

HardTy commented 1 month ago

I'm not sure if this is the right place here. I tried to get gotzl/hid-fanatecff-tools running but got the following trace:

Traceback (most recent call last):
  File "/home/rene/projects/public/hid-fanatecff-tools/tools/./fanatec_led_server.py", line 274, in <module>
    raise e
  File "/home/rene/projects/public/hid-fanatecff-tools/tools/./fanatec_led_server.py", line 252, in <module>
    threads.append(typ(ev, args.dbus, args.device, args.display))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/rene/projects/public/hid-fanatecff-tools/tools/f1_23.py", line 15, in __init__
    fanatec_led_server.Client.__init__(self, ev, dbus, device, display)
  File "/home/rene/projects/public/hid-fanatecff-tools/tools/fanatec_led_server.py", line 65, in __init__
    self.wheel = self.get_wheel_code()
                 ^^^^^^^^^^^^^^^^^^^^^
  File "/home/rene/projects/public/hid-fanatecff-tools/tools/fanatec_led_server.py", line 74, in get_wheel_code
    return wheels_dict[wheel_id]
           ~~~~~~~~~~~^^^^^^^^^^
KeyError: '00'

I did some testing and found out that I get a wrong/no ID when I print the wheel_id in sysfs.

cat /sys/module/hid_fanatec/drivers/hid\:fanatec/0003\:0EB7\:0020.000D/wheel_id 
0x00

I fixed the problem by changing https://github.com/gotzl/hid-fanatecff-tools/blob/master/dbus/fanatec_input.py#L24, but that doesn't seem to be the right way. :)

I am using the latest git tag gotzl/hid-fanatecff:0.1.1

gotzl commented 1 month ago

Yes... Unfortunately looks like reading out wheel-id needs more work .. I wonder why it's only 0x00 for you. Does it keep that value even after you've turned the wheel?

HardTy commented 1 month ago

Yes, it keeps the same value.

mferraci commented 2 days ago

I can confirm wheel_id only displays 0x00 whatever wheel is mounted on my Clubsport v2.5 base

SynthetikzZ commented 2 days ago

I have the same issue, only displays 0x00.. if I cycle trough csw mode back to PC mode, it shows 0x04 for sometimes a couple of seconds to some minutes, then it goes back to 0x00.

Fixed the fantec led server temporarily for me by hard coding the wheel code into it, otherwise it throws a key value error "00"

How can I try the hidraw branch ? Any tutorial on patching proton so it can talk to the wheel ?

Ps: also the wheel goes wild pressing all buttons mapped to the wheel when I change something in the tuning menu, resulting in me teleporting to pits and honking until I press the honk again.