Fixing the Dreamcast Race Controller's dead zone with a simple microcontroller circuit

Поделиться
HTML-код
  • Опубликовано: 9 сен 2024
  • I recently bought myself the official racing wheel controller for the Sega Dreamcast and was somewhat disappointed with its performance and poor handling out of the box. I set out to fix it with a simple microcontroller circuit which is demonstrated in this video.
    You can find more information on my website here including a download of the circuit diagram and code: benryves.com/pr...
    Update 2021-07-05: n00b on circuit-board.de has developed a PCB and written a full tutorial for this mod, please see circuit-board.... if you'd like to build this yourself. The tutorial contains links where you can order a PCB.

Комментарии • 66

  • @samghost13
    @samghost13 10 месяцев назад +1

    It was rushed to the market sadly... I was hoping for a Arcade Style Steering Wheel back then but : (
    Thank you very much! This is really the best fix! Thank you again Sir!

  • @j.l.gonzalez8918
    @j.l.gonzalez8918 Год назад +1

    Thank you very much for your video. I could successfully follow your instructions for the mod and it's working great. The difference is so big, I don't know how they released the wheel like that.

    • @benryves
      @benryves  Год назад

      Ah, brilliant! Thank you for the feedback and I'm very glad you're happy with the mod! :)

  • @LV481
    @LV481 11 месяцев назад

    I'm not gonna try it because I barely use my Racing Wheel but this is a very clever improvement. Thank you so much!

  • @FranciscoGarcia-gp5pf
    @FranciscoGarcia-gp5pf 3 года назад +1

    I was searching this for years. I made a diy steering wheel for Xbox one and I had the same problem. I'm very thankful

  • @Henry00
    @Henry00 5 лет назад +1

    You never disappoint! And now that I am getting intro electronics myself, especially designing things in VHDL, this kind of content just makes me even more excited about it. Thanks!

  • @widge
    @widge Год назад +1

    Excellent video! I got myself some DC racing wheels recently and this looks like an excellent non-destructive fix to the problem. And so brilliantly thought out and implemented!

  • @The_SegaHolic
    @The_SegaHolic 5 лет назад +1

    Awesome content here! Thanks for sharing the code and everything.

  • @sprescav
    @sprescav Год назад +1

    Brilliant

  • @muaral-rasheed2565
    @muaral-rasheed2565 3 года назад +1

    Awesomeeee! I Had to subscribe. Im trying this with a Jetion Steering wheel for pc

  • @fathersunglasses6085
    @fathersunglasses6085 5 лет назад +2

    Good video 👋

  • @shirty2
    @shirty2 10 месяцев назад +1

    Do you know if this will work with the Madcatz MC2 wheel? I’ve just purchased one and having the same issue. Thanks

    • @benryves
      @benryves  10 месяцев назад

      If the issue is the same then a fix using the same principle should indeed do the trick. If you mean this specific circuit and code then probably not, though, as it's designed to cater to the hardware and firmware of the Sega wheel so will likely need to be adjusted to whatever's going on inside the MadCatz MC2 wheel. Sorry that's a bit of a non-answer, but having never seen the MadCatz wheel I can't say for certain!

  • @liammeech3702
    @liammeech3702 3 года назад +1

    I bought a Thrustmaster spider 360 for my ps2 and it has a big deadzone in the middle, was this normal for steering wheels back in the day?

    • @benryves
      @benryves  3 года назад

      I don't have enough wheels for reference, so can't answer that for certain, I'm afraid to say - I only have the Saturn and Dreamcast wheels and the Dreamcast wheel is a notable downgrade, hence trying to put together this fix.

  • @aefas1975
    @aefas1975 4 года назад +1

    Nice project! just what I was looking for... I'm trying to adapt a xbox 360 gamepad to a wheel. The wheel uses a 5K pot, and I have measure the voltage and when I turn it to the left it goes from 0 to 0.745v then dead zone until 0.975v then i turn it to the right ant it goes from there to 1.6v. Can use your circuit?

    • @benryves
      @benryves  4 года назад +1

      Thank you for the comment! It sounds like the principle of the circuit could be the same however you would need to make some adaptations for the voltage, this design assumes the input and output voltages follow the full range of the power supplied to the microcontroller (and 1.6V would not be enough to power the microcontroller, in my case everything runs at 5V which makes life a lot easier). Rather than drive the output directly via PWM (as I do here) it might be safer to instead use a digital potentiometer chip matching the resistance of the output potentiometer. Does that sound sensible? (I'm not 100% sure what your setup would be, sorry!)

    • @benryves
      @benryves  4 года назад +1

      That is to say, the Dreamcast wheel is very simple, its potentiometer is directly connected across the power supply and the output of its wiper goes to the ADC input of the controller chip, there's no special analogue switching or multiplexing that I'd need to worry about when driving the ADC pin directly.

    • @aefas1975
      @aefas1975 4 года назад

      @@benryves I think the main difference here is the voltage... Maybe I can divide the 5v by 3 it will give me roughly 1.6!

    • @benryves
      @benryves  4 года назад +1

      ​@@aefas1975 As long as the other two connections to the potentiometer are simply attached to some form of power supply and aren't being switched/multiplexed some other way then a voltage divider on the output seems like it'd work, otherwise I'd look into a digital pot. :) Hope you can find a good solution for your hardware!

    • @aefas1975
      @aefas1975 4 года назад

      @@benryves I've found this "1 x USBASP USBISP AVR Programmer Adapter 10 Pin Cable USB ATMEGA8 ATMEGA128 Arduino". I thick this is what I need to program the atmega 8. I have notice that you have soldered a connector to your pcb so its easier to program the microcontroller... But its not in your schematic...

  • @andydavidson1278
    @andydavidson1278 5 лет назад +1

    How do I go about making (or buying preferably!) that micro controller circuit board?!?

    • @benryves
      @benryves  5 лет назад +1

      Hi Andy, at the moment you'd need to build the circuit yourself (e.g. on some pad board or stripboard) and program the microcontroller with an AVR-compatible programmer (I use a USBtinyISP programmer). The code was written with my particular wheel's characteristics in mind, these can be adjusted in the source code as required to suit other wheels. As I don't know how well this will work with other wheels with different characteristics I can't make a generic board to fit in any wheel, sorry. I did have some email communication with someone who was building this themselves, maybe I should check in to see how they got on!The alternative would be to add a way to adjust the mod's configuration via the mod itself (rather than in the source code) however this adds a lot of complexity to the project as there would need to be a way to communicate with the mod to configure it, e.g. via a cable link to a computer or via some buttons and indicators on the mod.

    • @andydavidson1278
      @andydavidson1278 5 лет назад +1

      benryves 😖 Your video is great and so are you, but this is beyond me!😝

    • @andydavidson1278
      @andydavidson1278 5 лет назад +1

      benryves I was just looking at wheels because I’ve not long bought a DC, but it looks like I might just have to make do with the stock configuration 😝

    • @benryves
      @benryves  5 лет назад

      Sorry, Andy, unfortunately I don't know how well all the different wheels work and I can assume Sega left the default dead zone as large as they did to allow for a lot of variation in hardware. I'll need to have a think about how I can make the correction values editable from the mod itself rather than having to reprogram the chip. Alternatively, I could design a PCB with the programming header exposed and expect people to either have or buy a USB programmer (it looks like there are bare-bones ones for under £4 available on eBay) if they want to update the firmware with better values for their hardware.Last time I made a PCB was about fifteen years ago and I've never looked into getting one commercially made so I'll need to do some research into costs, too - it doesn't seem particularly viable if the mod ends up costing more than the wheel itself!

    • @andydavidson1278
      @andydavidson1278 5 лет назад +1

      benryves Last time I did anything remotely like this was in CDT in 5th form! I made a burglar alarm with 3 “555 timer” circuits, but that was soooooooo long ago😝

  • @alpanchen
    @alpanchen 4 года назад

    Do you know if you can get a kit for this?

    • @benryves
      @benryves  4 года назад

      At the moment you'll need to make up the circuit on a bit of stripboard or pad board. The correction factors have been tuned to my particular wheel so you'd probably need to adjust them to match your hardware too, so I don't think a ready-made drop-in replacement is possible (I assume Sega left the dead zone so huge to accommodate a large variety in hardware).

  • @arthurisaac
    @arthurisaac 3 года назад +1

    Hi brother! Congratulations about this video!!! I have one wheel to xbox 360 the model is kp-5815a. The dead zone is horrible. I cant play this way. Can you help me ? i try to change the potenciometer, but the problem continue. please!!! can you help me ? please , please pleaseeeee

    • @benryves
      @benryves  3 года назад

      Hello, thank you for your comment! :) I don't know how that wheel works but if it uses a potentiometer across the power supply and measures the voltage (like this Dreamcast wheel does) then the same circuit should work, but you will probably need to adjust the code to properly scale the values for your specific hardware (it's why I don't have a ready-assembled version of this, as I don't know how it will work in other wheels, sorry).
      The Dreamcast's wheel dead zone still gives you access to small movements, so as you turn the wheel it goes 0,0,0,0,0, 1,2,3,4,5 (for example) so you just need to push small left/right movements outside that initial "0" gap which is what the microcontroller code does. If the wheel instead just snapped small values to zero (so it went 0,0,0,0,0,5,6,7,8,10) then the same fix wouldn't work and you'd also need to change something in the firmware of the wheel.
      Sorry I can't be more specific help, I hope you can find a good solution.

    • @arthurisaac
      @arthurisaac 3 года назад +1

      @@benryves thank you brother....i will try and let you know.

    • @arthurisaac
      @arthurisaac 3 года назад

      ​@@benryvesI looked inside my wheel and saw that my potentiometer is 10k ... in your diagram it is 100k ... any problem with that?

    • @benryves
      @benryves  3 года назад

      @@arthurisaac There shouldn't be, but how is it wired up? Is the potentiometer connected directly across the power supply (if so, that's good!) or is it connected to some other circuitry (e.g. to switch it in and out of circuit if the wheel has multiple sensors?) The Dreamcast wheel has it directly connected to the power supply which is why I can get away with reading the old value as an analogue voltage and feeding an analogue voltage back to the console via a PWM output on the chip, other circuits might require a more sophisticated way to pretend to be the original potentiometer (e.g. a digital pot).

    • @arthurisaac
      @arthurisaac 3 года назад

      @@benryves i will show you here:
      ruclips.net/video/eMVVUs8dFK8/видео.html

  • @evertonandrade2167
    @evertonandrade2167 5 лет назад +2

    You should sell this on ebay

    • @benryves
      @benryves  5 лет назад +1

      I had considered getting some PCBs made, the issue there is I'm not sure how well these corrections will work on other wheels (I hand-tweaked the wheel's response to work on my hardware, but they might be too sensitive on some wheels or have enough impact on others). Someone contacted me a short while ago by email to say they were building the circuit, I hope to see how it works for them. :)

    • @novo1858
      @novo1858 5 лет назад +1

      @@benryves Very interesting to see indeed, this could be a cool product if it turns out that the corrections are generic enough to apply to other wheels. Great video! I've never seen something like this before done to and old wheel.

  • @markcrouch4773
    @markcrouch4773 4 года назад

    Oh dear 😂😂😂

  • @alpanchen
    @alpanchen Год назад

    Any chance you can send the dedeadzone.hex as I am having hell of a problem compiling the file

    • @benryves
      @benryves  Год назад

      What problem are you having? If you contact me by email (link on bottom of my website) I can send you the file.

    • @alpanchen
      @alpanchen Год назад

      @@benryves many thanks and i will email you