简体中文

通用 USB 游戏手柄在 Mac 上无法使用

在 Mac App Store 下载 InputConfig这款应用完全免费。无需创建账户。没有订阅,没有麻烦的下载,也没有任何锁定的功能。针对 Apple 芯片优化。

多数时候手柄本身没问题:要么它处于 macOS 读不到的模式,要么 Mac 读到了,游戏却不去找它。通用 USB 游戏手柄,就是那种成对出售、价格很低的无品牌手柄,在 Mac 上出问题只有几种方式,每种的修复办法不同。在下面找到你的症状。

我做了 InputConfig,一款可以直接读取这类手柄的免费 Mac App,我会说明它在哪些地方有用,哪些地方做不到。

InputConfig 1.7 版预计于 2026 年 10 月发布,届时应用将完整支持简体中文。

先弄清 Mac 看到了什么

有两个地方能告诉你属于哪种情况。按这个顺序一步步来,先从最小的一步开始:

  1. 列在“系统设置”的“游戏控制器”里,按钮会亮。macOS 把它当作游戏控制器,问题出在游戏。见手柄已连接但无法使用。
  2. 那里没有,但在 System Information 的 USB 里有。按住 Option,打开苹果菜单,选择 System Information,再点按 USB。手柄列在这里却不在“游戏控制器”里,就是普通的 HID 设备。这是通用手柄的常见情况。请看如果 Mac 看得到它但游戏忽略它。
  3. 两处都没有。Mac 没有从它那里收到任何东西。请看如果什么都看不到它。

手柄列在哪里,决定了你需要哪种修复办法。

如果什么都看不到它:数据线、集线器或 Xbox 模式

  • 数据线或转接器。把手柄直接插到 Mac 上。带可拆卸线缆的手柄,附带的线可能只能充电。换一根你确定能传输数据的线。在 MacBook 上,USB-C 转接器也必须能传输数据。
  • 集线器。没有供电的集线器和一些扩展坞会让游戏手柄掉线。不用它们再试一次。
  • Xbox 或 X-input 模式。许多便宜的手柄一开始就处于有线 Xbox 360 协议的模式,macOS 完全不支持这种协议,Mac 上没有任何 App 能读取它。找一找模式开关,或者插入时按住的某个按钮,用来选择 D-input、PC、Android 或 Switch。

InputConfig 1.6 会在它的 Devices 菜单里列出卡在这种模式的手柄,显示为灰色,并带有 Xbox 360 style pad 的字样,如果它有别的模式或蓝牙,还会提示改用那些。

InputConfig 的设备菜单,列出一个处于 Xbox 360 模式的 USB 手柄,显示为灰色,并说明 macOS 无法读取它的原因。
Figure 1. InputConfig 1.6 会列出卡在 Xbox 360 模式的手柄,并说明为什么读不到它。

手柄亮着却什么都不发送,通常是处于 Xbox 模式,把它切换到 D-input 或 PC。

如果 Mac 看得到它但游戏忽略它

手柄在 System Information 里而不在“游戏控制器”里,表示 macOS 不需要驱动就能读取它,但基于 Apple 手柄支持的游戏只会寻找 PlayStation、Xbox、Switch 和 MFi 手柄。任何驱动都改变不了这一点。仍然可行的办法有:

  • 模拟器和飞行模拟器。它们自己读取 HID 设备。在它们自己的输入设置里分配按钮。
  • 有键盘模式的游戏。InputConfig 读取手柄,并发送游戏用的按键。它出现在边栏顶部。如果没有,就点按 Refresh Controllers,或者在菜单栏的 InputConfig, Devices 里勾选它。然后在某一行点按 Scan,再按手柄上的一个按钮。
  • 只接受手柄的游戏。Mac 上没有任何办法能让这类游戏接受 HID 手柄。InputConfig 发送的是键盘和鼠标,不是虚拟手柄。带蓝牙 Switch、iOS 或 MFi 模式的手柄才是出路。

如果游戏有键盘操作,手柄就可以通过 InputConfig 来操控它。

如果按钮位置不对

当社区的 SDL GameControllerDB 里有一行与手柄匹配时,InputConfig 1.6 会按它给通用手柄命名:A、B、X、Y、肩键和摇杆的编号和其他任何手柄一样。

  • 有匹配的行。许多便宜的手柄共用同一颗芯片和同一个 USB ID,所以只有完全匹配,或者该 ID 的所有行意见一致时,才会使用某一行。手柄 ID 查询会告诉你你的手柄有没有。
  • 没有匹配的行。手柄按它自己的描述读取,按钮按它上报的顺序编号,标为 Button 1、Button 2,依此类推。
  • A 和 B 互换了。手柄可能只是采用了任天堂的位置。原因见 Mac 上的 USB SNES 手柄。
InputConfig 的 Live Visualizer 把一个通用 USB 游戏手柄的按钮和摇杆显示成一张普通的示意图,按下的控件会亮起。
Figure 2. InputConfig 不按型号认识的手柄,会根据它上报的内容来绘制。每个控件在你按下时亮起。

Live Visualizer 会在你按下每个控件时让它亮起,一眼就能看出手柄发送了什么。Scan 绑定你实际按下的按钮,所以布局最后总会是对的。

如果摇杆漂移,或者在某个方向上读数是满的

便宜的主板常常把轴描述错,所以摇杆可能静止时偏离中心,或者报告某个方向被推到底。InputConfig 1.6 会修复常见的描述错误,比如写反的范围或比字段更宽的范围,而不是读出乱七八糟的数值。按这个顺序一步步来,先从最小的一步开始:

  1. 按 Analog 或 Mode 按钮。有些手柄有一个按钮,可以关闭摇杆或者让摇杆与十字键互换。按一次再看看。
  2. 不碰摇杆重新插一次。如果摇杆卡在某一边,就拔掉手柄再插上。有些便宜的手柄在通电时设定中心。
  3. 提高内死区。对于静止时略微偏离中心的摇杆,打开该摇杆那一行的 Options,一边看着摇杆一边使用 Adjust live。
InputConfig 的实时调整面板,显示摇杆位置的轨迹和内死区滑块。
Figure 3. 实时调整在你看着摇杆的同时设定内死区,可以掩盖便宜手柄静止时的偏心。

更多内容见 Mac 上的摇杆漂移。在改动任何设置之前,先松开摇杆重新插一次。

如果设备菜单说需要输入监控

有些手柄,还有许多街机摇杆,也会把自己显示为键盘,而 macOS 会把任何带键盘部分的设备放在“输入监控”权限后面。

  • 你:在 InputConfig 的 Devices 菜单里选择标有需要输入监控的条目,然后在打开的面板里打开 InputConfig。
  • macOS:允许 InputConfig 读取手柄。
  • 检查:回到 App,手柄就能被读取了。

完整的说明见为什么手柄需要输入监控。

如果更新 InputConfig 之后不能用了

InputConfig 1.6 给通用 USB 手柄、D-input 模式的 8BitDo 手柄、街机编码器和罗技方向盘编号的方式,和 1.5 不同。

  • 你:更新后第一次连接手柄。
  • InputConfig:提示是否迁移 1.6 之前做的预设的行。
  • 检查:勾选你在这个手柄上做的预设,点按 Update Ticked Presets。你在 1.6 里重新 Scan 过的行不会被动。

如果你点了 Leave Them As They Are,就打开 Settings, Advanced,在 Data & storage 下点按 Check Older Presets Again。下次手柄连接时,这个提示会再次出现。

它做不到什么

  • 读取 Xbox 360 模式。Mac 上没有任何 App 做得到。
  • 让手柄看起来像 Xbox 手柄。InputConfig 发送的是键盘和鼠标事件。只接受手柄的游戏需要一个 macOS 认得的手柄。

通用手柄足够玩使用键盘按键的游戏,但不够玩只接受手柄的游戏。

简短总结

  • 哪里都没有。用数据线,不要用集线器,并把手柄设为 D-input 或 PC 模式。
  • 只在 System Information 里。模拟器能读取它。InputConfig 把它映射成按键,用于其余的一切。
  • 按钮怪异或漂移。Scan 你按下的东西。用实时调整来设死区。
  • 更新后坏了。接受提示,或者 Check Older Presets Again。

手柄几乎从来不是坏的,一旦找到它列在哪里,你就知道该怎么修。

常见问题

通用 USB 游戏手柄在 Mac 上需要驱动吗?

不需要。macOS 不用安装任何东西,就把通用 USB 游戏手柄读取为 HID 设备。安装驱动也不会让使用 Apple 手柄支持的游戏看到这个手柄。

为什么我的 USB 手柄在 Mac 上亮了灯却没有任何反应?

电力通过线缆传来,哪怕没有数据。通常是手柄处于 macOS 读不到的 Xbox 或 X-input 模式,或者线缆或转接器只能充电。把它切换到 D-input 或 PC 模式,并使用数据线。

为什么 Steam 看得到我的通用手柄,游戏却看不到?

Steam 通过自己的一层读取手柄,只把它们传给使用 Steam Input 的游戏。自己通过 Apple 的支持读取手柄的游戏看不到 HID 手柄。见在 Steam 里能用但游戏里不能。

InputConfig 能让通用手柄看起来像 Xbox 手柄吗?

不能。它发送的是键盘和鼠标事件。只接受手柄的游戏需要一个 macOS 认得的手柄。

InputConfig 1.6 会自动给哪些通用手柄命名?

任何 USB ID 与社区 SDL GameControllerDB 里某个 macOS 行相匹配的手柄,涵盖许多 PowerA、Hori、Logitech、Tomee、Retrolink 等类似的手柄。没有对应行的手柄仍然会被读取,只是它们的按钮按上报顺序编号。

更多中文页面

详细指南(英文)

作者说明。Ryleigh Newman 开发了 InputConfig,因为双手活动不便,每天都用手柄操作自己的 Mac。本页译自英文。Mac 的语言设为简体中文时,App 的主要按钮和菜单显示为中文,本页使用这些名称,并在括号中附上英文名称。App 的其他部分和网站的其他页面都是英文。

本页的其他语言版本: English, Čeština, Dansk, Deutsch, Español, Suomi, Français, עברית, Magyar, Bahasa Indonesia, Italiano, 日本語, Norsk, Nederlands, Polski, Português, Русский, Slovenčina, Svenska, ไทย, Türkçe, Українська, Tiếng Việt

在 Mac App Store 下载 InputConfig免费。macOS 14 或更高版本。无需账户,数据不会离开你的 Mac。 源代码在 GitHub 上.