28
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
this post was submitted on 17 Aug 2023
28 points (93.8% liked)
Steam Deck
14806 readers
90 users here now
A place to discuss and support all things Steam Deck.
Replacement for r/steamdeck_linux.
As Lemmy doesn't have flairs yet, you can use these prefixes to indicate what type of post you have made, eg:
[Flair] My post title
The following is a list of suggested flairs:
[Discussion] - General discussion.
[Help] - A request for help or support.
[News] - News about the deck.
[PSA] - Sharing important information.
[Game] - News / info about a game on the deck.
[Update] - An update to a previous post.
[Meta] - Discussion about this community.
Some more Steam Deck specific flairs:
[Boot Screen] - Custom boot screens/videos.
[Selling] - If you are selling your deck.
These are not enforced, but they are encouraged.
Rules:
- Follow the rules of Sopuli
- Posts must be related to the Steam Deck in an obvious way.
- No piracy, there are other communities for that.
- Discussion of emulators are allowed, but no discussion on how to illegally acquire ROMs.
- This is a place of civil discussion, no trolling.
- Have fun.
founded 3 years ago
MODERATORS
Seems very doable, would just need a custom driver for the built-in controls that implements vibration.
How difficult would it be create a driver like that? Would someone with virtually no coding experience have any chance?
As a programmer that has little to no idea how to program a driver, I think it's basically zero chance. It would take a LOT of research and learning. Define the problem, choose an appropriate language, choose and install the programming tools, learn how to program a device driver, learn about controller hardware, learn about Linux, learn the programming language, learn about Steam Deck, write code and test probably hundreds or thousands of times. If I were to wildly speculate I'd say it would be several months starting with basically zero knowledge but having time, will, and aptitude.
Ah, I would definitely struggle then! I guess my most realistic options would either be to take apart the Deck and replacing the existing motor with a stronger one, or hope that someone smarter than me has a similar idea and can code a driver
The Deck vibration isn't an ordinary motor like most console controllers use. It's a haptic feedback engine built into the touchpads. Basically it's kind of like a speaker - a coil (on the touchpad surface) placed over a fixed magnet. Instead of vibrating a cone like a speaker would to make sound, it vibrates the touchpad in a very precise way to mimic clicking and other haptic effects, but the downside is that it isn't as strong as just putting a spinning weight on a motor and making it go, which is what most controllers do.
I think OP thought you meant a software driver but you meant a hardware driver, didn't you?
I don't know LOL. My experience is mostly with Windows, I assume things are different with Linux.
The hardware can be as simple as a microcontroller with two motor drivers. The software would require some work though as you would have to somehow redirect the vibration commands from the game to go to your custom motor driver rather than the built-in controller (or split it to both). The other issue is providing power to your contraption.
I tried adding RGB lights to my Deck and modded in a microcontroller board with some LED strips. I found an interface to send data from the Deck to my microcontroller to control the LEDs (using some I2C pins I found) but I ended up killing a chip on my Deck's motherboard by pulling too much power from the 5V rail on the controller PCB. Motors also consume a lot of power so finding a safe power source for this mod would run into the same issue.
If you do attempt such a mod, don't try to draw power for the motors off of the integrated controller PCB. You run the risk of overloading the supply for it on the motherboard, and repairing that is messy.
Thanks for this info. I think a hardware mod and/or software coding for this would be beyond my understanding.
Something externally plug and play would be amazing, but I doubt such a product exists.
Making a rumble pack type accessory that clips on the back wouldn't be too difficult from a hardware perspective, just a rumble motor and an Arduino with a type C connection would work fine, but the software involved to redirect just the rumble commands from the Deck controller to the rumble pack without also affecting the control input could be challenging. I'm not entirely familiar with how vibration is handled on Linux game controllers.
[This comment has been deleted by an automated system]
Great info! I did wonder if something like that would be possible. Will look into this, thanks