Comments (10)
Looks like I had the wrong assumption that the Dualsense Edge was automatically supported. Testing with a normal Dualsense worked as expected.
from evdevhook2.
Please see if #21 fixes this. You can download test appimage here in artifacts section.
from evdevhook2.
Thanks for this mate.
Btw, do you know if it is possible to run this without sudo on a Steam Deck?
from evdevhook2.
It should be, but I don't know how exactly deck handles device permissions.
Please report your DualSense Edge testing results when you have time.
from evdevhook2.
Can confirm, that this adds support for the Dualsense Edge controller!
from evdevhook2.
Great to hear, I've released v1.0.2 with DualSense Edge support included.
from evdevhook2.
For anyone happening by trying to get their Dualsense Edge (or any other) controller gyro to work on the Steam Deck, here is what I did to be able to run evdevhook2 without sudo
:
- Run
evdevhook2
and note the /dev/input/eventNN device it is trying to access but failing. - Run this command
udevadm info -a -p $(udevadm info -q path -n /dev/input/eventNN)
- From the output, note the
ATTRS{id/product}
andATTRS{id/vendor}
from the same block which also hasATTRS{name}
matching the name of your controller. - From sudo, create a file called
70-name-of-controller.rules
inside/etc/udev/rules.d
with the content:
SUBSYSTEM=="input", ATTRS{id/product}=="your product id", ATTRS{id/vendor}=="your vendor id", TAG+="uaccess"
- Run
udevadm control --reload-rules && udevadm trigger
- Now you should be able to run
evdevhook2
without needing sudo.
from evdevhook2.
Furthermore, if you want to run evdevhook2
as a service, you can create a file:
~/.config/systemd/user/evdevhook2.service
[Unit]
Description=evdevhook2 server
After=sockets.target
StartLimitIntervalSec=0
[Service]
Type=simple
Restart=always
RestartSec=1
ExecStart=%h/evdevhook2/evdevhook2-v1.0.2-x86_64.AppImage %h/evdevhook2/evdevhook2.ini
[Install]
WantedBy=default.target
After that, systemctl --user -q enable --now evdevhook2.service
should enable/start the service. You will probably need to restart the service when you plug in new controllers (@v1993 has to confirm this) using systemctl --user restart evdevhook2.service
PS: looks like restarting the service is not required. I tested disconnecting and reconnecting the controller. It was able to detect the change.
from evdevhook2.
That's a nice guide! I'd appreciate if you'd post it in discussions section of this repo under "show and tell" to make it easier to discover.
Notes:
- Hotplug works just fine, no need to restart
- Vendor/Product IDs can also be found in https://github.com/v1993/evdevhook2/blob/main/src/DeviceTypes.ini
from evdevhook2.
Will do.
Also, I think we can help auto generate this as an artifact given we have the .ini file:
70-evdevhook2.rules
(to be placed at /etc/udev/rules.d
)
SUBSYSTEM=="input", ATTRS{id/vendor}=="057e" , ATTRS{id/product}=="2006", TAG+="uaccess"
SUBSYSTEM=="input", ATTRS{id/vendor}=="057e" , ATTRS{id/product}=="2007", TAG+="uaccess"
SUBSYSTEM=="input", ATTRS{id/vendor}=="057e" , ATTRS{id/product}=="2009", TAG+="uaccess"
SUBSYSTEM=="input", ATTRS{id/vendor}=="054c" , ATTRS{id/product}=="0268", TAG+="uaccess"
SUBSYSTEM=="input", ATTRS{id/vendor}=="054c" , ATTRS{id/product}=="05c4", TAG+="uaccess"
SUBSYSTEM=="input", ATTRS{id/vendor}=="054c" , ATTRS{id/product}=="09cc", TAG+="uaccess"
SUBSYSTEM=="input", ATTRS{id/vendor}=="054c" , ATTRS{id/product}=="0ce6", TAG+="uaccess"
SUBSYSTEM=="input", ATTRS{id/vendor}=="054c" , ATTRS{id/product}=="0df2", TAG+="uaccess"
from evdevhook2.
Related Issues (9)
- Support battery reporting via UPower
- Troubleshoot Cemu configuration HOT 6
- AppImage: customize desktop file
- Reaching evdevhook2 from remote IP address HOT 21
- Warn if opening device has failed due to insufficient privileges
- get_device_config fails if uniq is NULL HOT 4
- cant install/run
- Server won't start HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from evdevhook2.