• "Auto racing began 5 minutes after the second car was built." - Henry Ford
  1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Dear Guest. Follow RaceDepartment on Twitter, Facebook, Instagram, Twitch, Steam and YouTube.

Managed to get my external USB pedals working (kinda)

Discussion in 'WRC 7 The Game' started by Martin Fiala, Sep 17, 2017.

  1. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    OK, through some pretty awkward and tedious process, I've managed to get my pedals (G25 with a Bodnar adapter) working with my T300 in WRC7. And I can even use my shifter (again G25 with a Bodnar adapter) as a handbrake.

    Here's how to replicate what I've done:

    1. Launch the game and don't touch anything on your wheel at all. Use your keyboard. Be aware that when the game tells you to "Press Enter or Start", what it actually expects you to press is Space, not Enter. Don't ask me, I don't get it either.

    2. Go to Options, Controls, Steering Wheel and Axis Detection. Be sure to get ready for the next steps here before you do the actual detection - you only have one attempt at this per game launch. If you don't do it correctly, you have to exit the game and try again - the axis detection can't be repeated for some reason.

    3. Start the axis detection and again, don't touch your wheel at all! This is very important, because if you touch any button on the wheel or turn it even slightly, the game immediately picks it up as your active controller, which you don't want at this point! Instead, quickly step on your clutch pedal (yes, clutch). You do not need to press it all the way, you just need the game to "notice" your pedals. The game should pick up your pedals as your active device and display its name at the top. Note that you need to be fairly quick here, otherwise it just falls back to your wheel as your active device and you'll need to start over. You might actually depress the clutch slightly before you start the axis detection to make sure the pedals get picked up faster.

    4. Calibrate your clutch as the steering. When the game tells you to turn your wheel left or right, just press it fully or take your foot off - it doesn't really matter which one you choose for left and which one for right, you obviously won't be steering with your clutch anyway.

    5. When the game asks you to calibrate the accelerator and brake pedals, just do what it tells you to do - press the pedal all the way. (Note - it actually doesn't matter with my pedals how much I depress the pedal at this point, it calibrates them to the same values anyway, but it might be important for people attempting to do this with different pedals, hence the reason I advice to press them fully anyway.)

    6. When the game asks you to calibrate clutch, you can either skip it or just use clutch again - it doesn't really matter (well at least with my pedals).

    7. Now the game knows about your pedals. If you step on them now, you should see movement on the appropriate axis in the axis detection window. If you have the same pedals as I do or if your pedals work similar to mine, you might only get to see movement on the axis above the 50 percent point of the pedal throw - I don't know how to work around that at this point, sorry...

    6. Leave the axis detection menu and go to Steering Wheel, Button Bindings. Bind all the axis and buttons the way you want them. The game should respond here to all of the inputs now - pedals, wheel and shifter. When you bind the accelerator and brake pedal, the game will say it mapped your pedals as keys (in my case key 4 and key 5). Don't worry about it - they are still analog, not digital, despite the game calling them keys and not axis. Also, obviously now set your steering to your actual wheel, not to the clutch pedal - the clutch pedal was only used as a stand-in for steering to be able to complete the pedal detection. As mentioned, I can even bind my sequential shifter as handbrake at this point without any extra steps. Just be aware that you can't bind a button with the same number on different devices to different functions here. So for example since my accelerator pedal gets bound as "Key 4", I can no longer use button 4 on my wheel or on my shifter for anything else - the game doesn't seem to be able to understand the button belongs to a controller with a completely different ID, it just treats all of the buttons as if they were all on a single controller. Again - don't ask me...

    7. At this point, you're basically done. If you want to be able to navigate the game using the D-pad and buttons on your wheel, you can now go to Options, Controls, Change controller and just press Start on your wheel when the game tells you to.

    However - there's obviously some issues...

    First - you have to do the axis detection stuff (points 1 to 5) every single time you launch the game to make the game aware of your pedals. But at least you don't have to redo the button/axis binding every time - the game saves them, it's just that it doesn't seem to see the pedals unless you redo the axis detection...

    And then there's the other thing I've already alluded to in point 7 - at least with my pedals, doing all of the above means the game only registers my pedals from the halfway point, meaning there's basically a 50 percent low deadzone. They still work as analog, it's just that I only have the latter half of the travel available. But with different pedals, this might not be true. And, to be honest, even with only half of the usable travel, I kinda find it better than having to resort to the stock T300 pedals...

    So, yeah. Hope someone might find this useful or even improve upon it.
     
    • Like Like x 1
  2. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    Well, I poked around a bit more and I can say that I now have the game recognize my pedals in the button binding menu right away without any of that awkward stuff I've described above, AND I now also have full travel on the pedals available. It was a lot of trial and error, but it's working now.

    The only question now remains whether or not will this trigger any anti-cheat protection due to me editing the game files, but so far no issues :)

    I'll try to get the attention of the devs in hope of getting an answer about editing those files and then I'll post an update on what I've done.
     
    • Like Like x 1
  3. Jamie Blewitt

    Jamie Blewitt

    Messages:
    358
    Ratings:
    +55
    Watching this with interest...
     
  4. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    I'll post more in the evening if I get no response from the devs.
     
  5. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    Well, it took me a lot longer than anticipated to write it all down, and I've decided to post it on my (hardly ever used) blog to keep it all in one place with a possibility to easily edit it in case something changes or comes up, but here it is - a guide on how to (hopefully) add an unsupported controller device to WRC7:

    http://english.edgeoftheworld.cz/2017/09/19/adding-an-unsupported-controller-to-wrc7/

    Be aware that the process involves editing the game file(s) and as such might trigger some kind of anti-piracy or anti-cheating protection (though it doesn't seem to in my case, or not yet anyway - been using the mod for 2 days now).
     
    • Like Like x 1
  6. LibranRabbit

    LibranRabbit

    Messages:
    39
    Ratings:
    +8
    This is 2017?...why do we have to go through this with every racing sim/game? This is not good enough practice from the Dev's and they all need to pick up their game(pun)! Top cudo's to you Martin Fiala, but we shouldn't have to do this every single time a new title comes out, what's wrong with these people, how hard is it to add these missing codes? We need to band together and start actively protesting that they include support for all the peripherals available. Don't anyone say " there's too many" they have a list and it should be mandatory included in every new title and added as new equipment comes out. This list should be openly available to the public.
     
  7. Jamie Blewitt

    Jamie Blewitt

    Messages:
    358
    Ratings:
    +55
    Thanks for the very well written guide I will try it out later!
     
    • Like Like x 1
  8. Tony Rickard

    Tony Rickard

    Messages:
    19
    Ratings:
    +5
    Interesting stuff, thanks for taking the time to put this together.

    So I tried adding my HE Pedals, found the GUID as 274800082, edited the file by copying another set of pedals and changed the GUID but still it won't let me recognise it under axis detection or button binding. I also found a similar file in Documents\My Games\WRC 7\Settings I think this is the file that stores configurations once the axis have been detected. It had my G25 GUID in there.

    My Fanatec handbrake didn't show up in detecting axis but it did allow me to bind it to the handbrake button, so I assume this is working. Feels close to getting the other stuff working but not there yet.
     
  9. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    Are you sure the axis configuration of the pedals you've copied the config from is the same as your pedals? Just changing the GUID is not enough if the axis configuration is not correct, you have to configure the axis according to what your pedals use.
     
  10. Tony Rickard

    Tony Rickard

    Messages:
    19
    Ratings:
    +5
    I have checked in game controllers & DIView and it shows my pedals as Z,Y,X for accelerator, brake & clutch, so I have made sure the DIAxis settings match. It doesn't detect the controller in detect axis when I press all three pedals nor can I map the pedals in button binding.
     
  11. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    @Tony Rickard And the GUID is also correct? So your Heusinkveld pedals are VID_1DD2&PID_1061 in the registry? Reason I'm asking is because my Bodnar adapters are also VID_1DD2, and as VID stands for Vendor ID, it's kinda interesting that both Leo Bodnar and Heusinkveld use the same VID. Not saying the can't be, but it's still interesting.
     
  12. Tony Rickard

    Tony Rickard

    Messages:
    19
    Ratings:
    +5
    Yes Martin, VID_1DD2&PID_1061 in the registry for the HE Pedals
     
    • Like Like x 1
  13. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    @Tony Rickard

    OK, first of all, just to be sure - sorry if I'm asking you obvious things, but I just want to be sure and double check everything, because the guide not working for you is obviously pretty important to me (you're the only one who responded to my guide so far) as it might mean it's actually not working as expected for some reason.

    With that said...if you're willing to experiment a bit more, again, just to be sure, I've attached an edited version of the InputDeviceConfig.lua file (obviously rename the .txt to .lua) that should in theory work with your pedals based on your info about your pedals and also based on what I was able to confirm about them myself on the internet (obviously the best thing would be to have those pedals at hand to try, but sadly I've yet to win that lottery ;) ). This is just to make sure there are no syntax errors in the file, typos, wrong lowercase and stuff like that - I've just edited the file I'm using myself with the appropriate controller data.

    So if interested, please give this file a try. Just ignore the axis detection screen and simply go to the button binding screen and try to bind any of the pedals either as accelerator or as brake. The goal is to get at least some kind of response - as long as pressing the pedal when binding the control responds in any way, we're good.

    If that doesn't work, I've also added a modified InputBindings.lua file. I don't need to modify this file to get my pedals working, but it might be it's needed in at least some cases. So keep the previous file in place and replace this one (obviously backup the original to be able to revert easily without doing the whole local file verification thing that takes quite a while to run). Again, try if now there's some response in the button binding menu.

    If not, then I guess the next step might be to first revert the InputBindings.lua file to the original one, and then perhaps try to edit the ControlId parameters in the InputDeviceConfig.lua file. What I personally would do is I would simply edit the throttle ControlId to

    Code:
    ControlId    = GenericDeviceControlId.I_ICI_GENERICDEVICE_AXIS1_X,
    and then go through all the iterations AXIS1, 2, 3 and 4 with axis X to Z all the way to

    Code:
    ControlId    = GenericDeviceControlId.I_ICI_GENERICDEVICE_AXIS4_Z,
    and each time checked if it makes any difference in the binding menu response.

    And if not, then I'd probably go back to the original InputDeviceConfig.lua file I attached here and change the DIAxis to its rotation alternative just to be sure.

    And if that didn't do anything either, I'd be very grumpy for the rest of the day. Well, even grumpier than usual.
     

    Attached Files:

  14. Tony Rickard

    Tony Rickard

    Messages:
    19
    Ratings:
    +5
    Thanks Martin.

    Unfortunately no progress. I have tried various combinations of axis and the bindings file but they won't bind.

    I will fiddle some more but I think there must be something buried elsewhere. I even tried renaming device GUIDs in the registry to no avail.

    I also have a Fanatec handbrake and that binds fine (although will not detect under axis detection)
     
  15. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    Well, thanks for trying, anyway. Sorry to hear that :(
     
  16. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    Hm, one more thing has occured to me just now, replying to someone else elsewhere... did you perhaps try disconnecting your wheel, keeping only the pedals connected, then (using the InputDeviceConfig file I linked above) tried to bind just the pedals?

    Reason I'm asking is that I remembered the game seems to be having problems recognizing the same button number or axis from different devices, it sees to treat them as one, and since your pedals use the X, Y and Z axis, usually being used by wheels as well, maybe the devices are conflicting in the game...

    Just a thought that might be worth testing. Though if it would turn out to be the case, there would likely be nothing we would be able to do about it... :/
     
  17. Tony Rickard

    Tony Rickard

    Messages:
    19
    Ratings:
    +5
    Unfortunately it isn't possible to get to the binding screen or axis detection with the Steering Wheel disconnected. It just throws up a message that no steering wheel is connected. I did try by ensuring the pedals assigned controlid axis was different to those on the connected steering wheel and handbrake but it still didn't work.

    I think it either needs the devs to make it truly open to any windows device (after all the axis detection says it for using unsupported devices!) or by somehow emulating a supported device. In my searching I found a solution for Forza on PC with multiple controllers using VJOY. https://forums.forzamotorsport.net/...0--Multi-device-support-with-working-FFB.aspx

    It just needs someone cleverer than me to work it all out!
     
  18. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    Oh, right, I completely forgot about that. Sorry :(

    Wish I could get my hands on those pedals to test it myself, but yeah, fat chance ;) Things like this intrigue me. I still don't understand why I was able to make my pedals work just fine, yet others (of the few that responded to me) seem to be having issues :(

    One thing I'm wondering about is that config file in Documents/My Games. I don't have that one and I don't understand why.
     
  19. Tony Rickard

    Tony Rickard

    Messages:
    19
    Ratings:
    +5
    It gets created once you calibrate in the axis detection section
     
  20. Martin Fiala

    Martin Fiala
    Premium

    Messages:
    1,769
    Ratings:
    +1,897
    I've done that many times, but I still don't have that file there.