-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Asetek LaPrima Wheelbase support #6
Comments
Can you please give kernel logs when you connect the wheelbase to the PC? |
Having a hard time figuring out how to do the pcap but here are the kernel logs. [ 133.129908] usb 1-6.2: new high-speed USB device number 9 using xhci_hcd |
Usbmon is what you need Looks like PIDFF again, i think it should work just fine with our patches to pidff, but first we need to see the descriptor :D |
Hey, What does not work (or at least I cannot get to work) is RaceHub - so no configuration from Linux possible other than mimicking USB commands sniffed while using RaceHub in Windows. Asetek has a lot of vendor specific USB HID reports in its descriptor (both La Prima wheelbase and wheel) and my dmesg also shows USB HID errors about unsupported effects. I've attached the descriptor: I have have used this Wheelbase successfully with:
Steps are simple: One time setup
Per game setupAdd Proton setting Forte and Invicta have different PID values, so adjust accordingly. Alternative: Per Proton environment setupAlternatively to per-game one can set this setting once for each Proton installation via user_settings.py: https://github.com/ValveSoftware/Proton/wiki/Proton-FAQ |
@moonrail, thank you! |
OPs issueI am not sure I completely understand OPs issue. Even without udev rules (hence without hidraw) I can use the full range in jstest: However I could manufacture a seemingly similiar behaviour (range only from 50 to 100%) if I unset all calibration (Button "Raw Events" in jstest). Once I've done that, Wheel-center was reported in jstest as 100% (as if fully turned to the right) and Wheel-left until bumpstop was reported as 50% (as if wheel was centered). Maybe OP is struggling with uncalibrated events? I would assume OPs issue could be solved by configuring permissive hidraw udev rules and (if using Proton) defining hidraw usage for the Wheelbase as described in my initial comment. RaceHubAs for RaceHub: Yes, I've tried all documented Simucube methods and tried all seemingly related Wine settings - no luck yet. Oversteer & BoxflatRegarding Oversteer & Boxflat - I am not content with my current lack of understanding - as I said, its only mimicking seen USB traffic, not really understanding its contents. Setting High Torque for example is possible this way exactly once. If its disabled again (by own commands) the same payload does not enable it again. The following enables it once:
Disabling High Torque is an unanswered send of HID data: 96006bb71700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 Profiles can be switched with HID data: 26{profile_id:02x}00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 Current configuration can be requested via HID data: 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 And so on. I do not think that this is nearly enough for Oversteer or Boxflat. |
When you say that it just works, does that include the force feedback? If it does work with force feedback, maybe it would deserve at least a bronze rating? That the settings program doesn't work could count as a major bug. I'm thinking about getting a La Prima bundle which should be a nice upgrade over the K800 keyboard I'm using to play AC now, but seeing that Asetek was unrated in the list made me a bit disheartened. So if it does actually work I suggest that it gets a bronze rating and a link to this thread. |
Yes :) When I still had a Windows installation I could not notice any differences in FFB in ACC or AMS2. As it should be, given that this Wheelbase and these games use the regular Windows DirectInput protocol for FFB. Reminder: With "It just works" I did not mean you can just plug and play. It means you do not require any additional software like drivers. You do only require manual configuration, as stated below "Steps are simple" in my first comment: When you give your game via Proton hidraw access to the Wheelbase, the game has native access to it and will use DirectInput as it would under native Windows.
Agreed - base functionality is there. A remaining caveat, even if unlikely for an already released product: A firmware update can change the behaviour of the Wheelbase, so that it does not start up in a DirectInput usable mode and a command of a software/driver is required for it to be usable. The Asetek Wheelbases currently seem to incorporate this behaviour only for the "High Torque Mode".
Just keep in mind that you'll only be able to use 8NM instead of "High Torque" 12NM of the La Prima Wheelbase, until the command required to enable it is available to you/us in a fitting software or a script. |
Hmm, can you elaborate on "High Torque" mode? Can you ELI5 this for me? If so, could you please record some USB dumps with Wireshark on Windows you enabling and disabling this mode? I see no reason for them changing the whole protocol to enable "High Torque", i think it's easy fix with something like Edit: in their FAQ (https://www.asetek.com/simsports/knowledge-base/wheelbase-troubleshooting/) there is statement about "torque button is not connected correctly to the wheelbase." on the wheelbase itself. Does this apply to La Prima? I thought that button exists only on higher level wheelbases (Forte, Invicta) |
@JacKeTUs To enable/disable High Torque Mode, the RaceHub software sends USB HID data to the Wheelbase, see "RaceHub" and "Oversteer & Boxflat" in this comment: #6 (comment)
Yes, this Torque-Cutoff-Button does not exist on the La Prima Wheelbase, only Forte and Invicta. So this FAQ statement does not apply for La Prima. |
Thank you!
|
I currently do not have a Windows install available to capture traffic with (and do not plan to ever return to Windows :D) - but I'll have a look later if I still have a Wireshark USBPcap capture from earlier this year. |
Yes, I saw your earlier post. Compared to getting AC to work it seems pretty straightforward. :) @JacKeTUs Would it be useful for you to have access to a La Prima for a week or two? |
@JacKeTUs
rh_connect_high_torque_20240317.zip Recommended Viewfilter: (usb.src == "2.5.0") || (usb.dst == "2.5.0") || (usb.src == "2.5.1") || (usb.dst == "2.5.1") Observations (in order of Requests):
|
@Sluring I appreciate the offer, but i think shipping to me (and back to you) will be quite expensive (what is it, 10kg including wheel?) @moonrail thank you so much for detailed info. Quite interesting that they need some interactive app to enable "High torque"... |
RaceHub is built on Unity, which I found out after it was eating 4gb of memory due to a memory leak, so I would wager there might be a way to get it to work under proton. I don't have the wheelbase yet, but I do have Forte pedals. I can hook my rig up to my steam deck to see if it works with my G920 wheelbase as is or should pedals just work? Edit: I got RaceHub to start but it's not detecting the pedals, I need to add the permissions mentioned above to see if that changes tonight. |
If for "working pedals" you mean game will detect them and input will be readable - yes, it will work |
@JacKeTUs I send some packages at work for reasonable prices, but you're right. I just checked and sending as a not-company is silly. Might as well buy you an Invicta setup to keep for the same money as sending a La Prima back and forth. Sending as a company would probably cost about 100€ each way which could be worth it to have a fully functioning driver. @protoz Fingers crossed! :) |
@JacKeTUs Maybe someone finds it useful or can contribute knowledge.
I've seen this "High torque" logic in Simucube wheelbases as well. Maybe its for "safety" reasons, to limit torque until the consumer agrees to potential dangers coming with it. The command to send to the wheelbase changes after the first time enabling and disabling this mode. So as of now the above logged command sequence is only useful once. It is always the same for the first time. Any subsequent toggles of this mode via RaceHub cause different payloads in response and request I did not understand the cause for this at the time, as I just do not know which byte means what - the datastructure is likely vendor specific without public documentation.
Speculation, just a possibility. It is possible that a future firmware update changes both - the initialization of the wheelbase (which currently is synchronous on connecting USB) as well as the "High torque"-mode stuff. @protoz
So RaceHub skips the USB discovery - possibly due to the exception beforehand. Therefore no udev rule can fix this. I've contacted Asetek Simsports via email earlier this year for support with the issue and above logs, but they did reject politely, as they do not support Linux. |
Here is my Windows Wireshark dump for my Forte S Pedals. I didn't see more packets generated when I calibrated the pedals and changed LED colors. If I unplug and close Racehub, my settings aren't loaded when I plug it back in. With how stiff the brake pedal is, having custom thresholds is helpful. 428-451 was me plugging it back in with Racehub closed, then opening Racehub. I do have custom LEDs and calibrations set but don't know yet how it's being passed to the pedals once Racehub is running. |
on archlinux and wine without doing anything special I installed racehub 4.0 then in the same way I did the proposed update to 4.0.1 and again after to 4.0.2, but I have not tried to connect the base yet video for racehub and Asetek invicta et Pedals on Manjaro Linux https://www.youtube.com/watch?v=ysZixXJNc3U |
Rotation is detected on a gamepad tester and seems to show 99% range as intended from -1 to +1 (I have a bump stop enabled in the firmware).
iRacing calibration tool detected it as going from 50%-100% rotation which is odd. Gives error that the wheel does not support force feedback.
Windows raw values go from 0 to 65535
The text was updated successfully, but these errors were encountered: