ฉันจะทำให้ Steam Controller ทำงานได้อย่างไร


42

ฉันได้ Steam Controller มาแล้วและฉันต้องทำงานใน Ubuntu ฉันจะทำยังไงดี?

คำตอบ:


26

อัปเดตตั้งแต่วันที่ 22/22/2559 (ถ้าคุณใช้วิธีนี้ )

เนื่องจากการอัปเดตล่าสุดกฎ udev ของคุณต้องได้รับการอัปเดต

แก้ไขไฟล์ udev:

sudoedit /lib/udev/rules.d/99-steam-controller-perms.rules

แทนที่ทุกอย่างด้วย:

# This rule is needed for basic functionality of the controller in Steam and keyboard/mouse emulation
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0666"

# This rule is necessary for gamepad emulation; make sure you replace 'pgriffais' with a group that the user that runs Steam belongs to
KERNEL=="uinput", MODE="0660", GROUP="pgriffais", OPTIONS+="static_node=uinput"

# Valve HID devices over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0666"

# Valve HID devices over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0666"

# DualShock 4 over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c4", MODE="0666"

# DualShock 4 wireless adapter over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ba0", MODE="0666"

# DualShock 4 Slim over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="09cc", MODE="0666"

# DualShock 4 over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*054C:05C4*", MODE="0666"

# DualShock 4 Slim over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*054C:09CC*", MODE="0666"

ตอนนี้ถอดปลั๊กและเสียบดองเกิล Steam ของคุณและซ่อมแซมคอนโทรลเลอร์ของคุณ


2
นี่เป็นการแก้ไขปัญหาของฉันกับ SC ที่ไม่ได้รับการยอมรับทางสายเคเบิล แต่ฉันก็ต้องลงทะเบียนเพื่อเข้าร่วมSteam Beta มิฉะนั้นจะไม่เปลี่ยนแปลง
Carolus

ใช้งานได้ดีที่นี่! ขอบคุณ! (ไม่ต้องการ Steam Beta อีกต่อไปจากด้านข้างของฉัน)
Dominic Hayes

สิ่งนี้แก้ไขปัญหาของฉันใน Ubuntu GNOME 17.04 ขอบคุณ!
Jesse

32

สำหรับ Ubuntu ออกรุ่นเก่ากว่า 15.10

รู้จักคอนโทรลเลอร์

สร้างไฟล์ udev:

sudoedit /lib/udev/rules.d/99-steam-controller-perms.rules

จากนั้นเพิ่มเนื้อหาต่อไปนี้อย่าลืมใช้ชื่อผู้ใช้ของคุณในไฟล์!

# This rule is needed for basic functionality of the controller in
# Steam and keyboard/mouse emulation
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0666"

# This rule is necessary for gamepad emulation; make sure you
# replace 'pgriffais' with the username of the user that runs Steam
KERNEL=="uinput", MODE="0660", GROUP="pgriffais", OPTIONS+="static_node=uinput"

ให้สิทธิ์การเข้าถึงแก่คอนโทรลเลอร์ /dev/uinput

  • เพื่อความรวดเร็วและสกปรก sudo chmod 666 /dev/uinput
  • สำหรับวิธีแก้ปัญหาที่รอดชีวิตจากการรีบูต: sudo apt-get install python3-autopilotจากนั้นออกจากระบบ / เข้าสู่ระบบหรือรีบูต /dev/uinputนี้จะเพิ่มคุณในกลุ่มที่มีสิทธิ์ในการเขียนไปยัง นี่เป็นการเพิ่มแพ็คเกจสองสามชุดที่คุณอาจไม่ต้องการ แต่คุณสามารถลบออกได้เมื่อการอัปเดตแพ็คเกจ Steam มาถึง

ดูสิ่งนี้ด้วย:


1
ฉันอยู่ที่ 15.10 และฉันมี.rulesไฟล์ อย่างไรก็ตามKERNEL=="uinput", MODE=ไม่รวมบรรทัดที่สอง ( ... ) หมายความว่าฉันต้องเพิ่มบรรทัดนี้หรือไม่ถ้าฉันต้องการ gamepad emulation? หรือสิ่งนี้จะถูกเพิ่มโดยอัตโนมัติ?
Joschua

"ถ้าคุณมี 15.10 และใหม่กว่าคุณไม่จำเป็นต้องทำอะไรนอกจากเสียบดองเกิลและจับคู่คอนโทรลเลอร์เมื่อคุณเปิดโหมดภาพใหญ่" ฉันใช้ Xubuntu 15.10 ฉันเสียบปลั๊กดองเกิลฉันเปิดภาพใหญ่และ ฉันไม่สามารถจับคู่คอนโทรลเลอร์ได้ มันทำงานได้ดีใน Windows และใช้งานได้เมื่อเสียบสายบน Linux และใช้งานได้กับ SteamOS ของฉัน แต่มันไม่ทำงานบน Xubuntu 15.10 สำหรับฉัน
Aaron Franke

ขั้นตอนเหล่านี้จะทำเมื่อติดตั้งอุปกรณ์ Steam ใน Ubuntu รุ่นที่ใหม่กว่า อย่างไรก็ตามการรู้ว่านี่คือสาเหตุของปัญหากระตุ้นให้ฉันติดตั้งอุปกรณ์ไอน้ำและติดตั้ง Steam เองในระบบของฉันเนื่องจากการติดตั้งของฉันเก่ามาก (อาจติดตั้ง Steam ด้วยตนเองเมื่อนานมาแล้ว)
marcus

12

คำแนะนำสำหรับ Ubuntu 16.10

เนื่องจากคอนโทรลเลอร์ไม่ทำงานนอกกรอบจึงเป็นวิธีแก้ไขปัญหาที่ง่าย:

sudo apt install steam-devices

หลังจากรีบูตมันทำงานได้ดี


การเพิ่มในส่วนนี้: ตั้งแต่วันที่ 9 พฤศจิกายน (เมื่อฉันทดสอบสิ่งนี้) คุณจะต้องใช้ Steam ในโหมด Bata ไปยังการอัปเดตครั้งต่อไปสำหรับคอนโทรลเลอร์ในโหมด Big Picture
Svetlana Belkin

7

ฉันมี 15.10 และตัวควบคุมของฉันไม่ทำงาน

ฉันดูไฟล์ที่กล่าวถึงข้างต้นและฉันเห็นการพิมพ์ผิดในไฟล์ที่ให้มา มันมีATTRS{idVendor}สองครั้ง idProductคนที่สองที่ควรจะเป็น

ในการปะยางนี่เป็นไฟล์ที่ใช้ในการพูด:

# Steam Controller device node write access, per lp:1498655
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", ATTRS{idVendor}=="1102", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", ATTRS{idVendor}=="1142", MODE="0666"
# Steam Controller udev write access, per lp:1498658
KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess"

และนี่คือสิ่งที่มันควรจะพูด (และทำงานให้ฉัน):

# Steam Controller device node write access, per lp:1498655
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1102", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1142", MODE="0666"
# Steam Controller udev write access, per lp:1498658
KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess"

1
ไฟล์ใด [กล่าวถึงข้างต้น]?
Oli

ฉันเห็น. /lib/udev/rules.d/99-steam-perms.rulesตอนนี้ด้านล่าง;)
Oli

5

ตามที่ระบุไว้โดย Jorge Castro วิธีแก้ปัญหาทำงานได้ดี หากคุณเปลี่ยน GROUP usersเป็นจะครอบคลุมบัญชีผู้ใช้ทั้งหมดในระบบ วิธีนี้หากการติดตั้งของคุณใช้บัญชีที่แตกต่างกันคุณไม่จำเป็นต้องทำการเปลี่ยนแปลงไฟล์ต่อไป


4

ฉันเพิ่งได้ Steam Controller ของฉันเสียบเข้ากับระบบ Ubuntu 15.10 x64 ของฉันและมันก็ไม่ทำงานเลย อย่างไรก็ตามฉันสังเกตเห็นสิ่งที่แตกต่างเกี่ยวกับฉันที่ไม่ได้กล่าวถึงที่นี่

ฉันพิมพ์lsusbที่ Terminal และพบสิ่งนี้:

Bus 001 Device 011: ID 28de:1042

ฉันสังเกตเห็น idProduct ที่ระบุไว้ในกฎ udev เริ่มต้นคือ "1102" หรือ "1142" ดังนั้นฉันเพิ่มบรรทัดต่อไปนี้ใน/lib/udev/rules.d/99-steam-perms.rules(ใต้บรรทัดอื่นที่คล้ายคลึงกัน):

SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1042", MODE="0666"

จากนั้นฉันก็ถอดปลั๊กดองเกิล USB เสียบเข้าและใช้งานได้! จากนั้นก็ทำการอัปเดตเฟิร์มแวร์ทันที (ใน Steam) ถึง "1142" ดังนั้นฉันไม่จำเป็นต้องใช้บรรทัดที่ฉันเพิ่มอีกต่อไปในทางเทคนิค ฉันหวังว่านี่จะช่วยคนอื่นได้


2

ไม่สามารถทำให้คอนโทรลเลอร์ทำงานได้เช่นกัน Ubuntu 16.04 ฉันวางข้อความในไฟล์ตามที่ Insperatus แนะนำ แต่ก็ยังไม่มีความรัก

วางข้อความในไฟล์/etc/udev/rules.dแทน

ป้อนสิ่งนี้ในเทอร์มินัล: sudoedit /etc/udev/rules.d/99-steam-controller-perms.rules

จากนั้นวางจากคำตอบนี้ :

# This rule is needed for basic functionality of the controller in Steam and keyboard/mouse emulation
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0666"


KERNEL=="uinput", MODE="0660", GROUP="users", OPTIONS+="static_node=uinput"

# Valve HID devices over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0666"

# Valve HID devices over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0666"

# DualShock 4 over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c4", MODE="0666"

# DualShock 4 wireless adapter over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ba0", MODE="0666"

# DualShock 4 Slim over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="09cc", MODE="0666"

# DualShock 4 over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*054C:05C4*", MODE="0666"

# DualShock 4 Slim over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*054C:09CC*", MODE="0666"

ฉันใช้บล็อกข้อความจากด้านบนและตั้งชื่อไฟล์ตามที่แนะนำในคำตอบที่ 1: 99-steam-controller-perms.rules

คอนโทรลเลอร์ใช้งานได้แล้ว

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.