如何让Android HDMI盒子分别识别两款同款SNES风格USB控制器
解决Android HDMI盒子无法识别双SNES控制器的问题
别担心,同款控制器被识别成同一设备的情况挺常见,咱们一步步排查你可能漏掉的配置点:
1. 先确认Android系统是否识别到两个独立控制器
- 打开盒子的系统设置,找到已连接设备或游戏控制器选项(不同品牌盒子路径略有差异),查看列表里是否显示两个独立的控制器条目。如果只显示一个,说明系统没把它们当成不同设备,这时候要检查:
- 是不是用了供电不足的USB集线器?换个带独立供电的集线器,或者直接把两个控制器插在盒子的不同原生USB口上。
- 部分廉价同款控制器的PID/VID(产品ID/厂商ID)完全相同,Android会默认把它们判定为同一个设备。这种情况可以通过开发者选项配合adb命令调整:
- 开启开发者选项:设置→关于设备→连续点击版本号直到提示开启成功。
- 打开开发者选项里的USB调试,用电脑连接盒子,执行
adb devices确认连接正常。 - 输入
adb shell getevent -l查看两个控制器的输入事件,找到对应的设备路径(比如/dev/input/eventX和/dev/input/eventY)。 - 进阶操作:可以用权限允许的第三方工具修改其中一个控制器的PID/VID,让系统识别为独立设备。
2. 检查Super Retro 16的控制器映射配置
就算系统识别到两个设备,模拟器默认可能没给玩家2分配独立控制器:
- 打开Super Retro 16,进入设置→控制器设置(或类似命名的选项)。
- 找到玩家2的配置项,手动选择第二个控制器作为玩家2的输入设备,不要用默认的“自动”选项(自动可能会把所有输入绑定到玩家1)。
- 保存设置后重启模拟器测试。
3. 系统输入设备优先级与兼容性设置
部分Android盒子有输入设备相关的特殊设置:
- 进入开发者选项,找到输入设备相关设置(比如“默认输入设备”),确认没有锁定到单个控制器。
- 部分盒子带有USB设备兼容性模式,开启这个选项可能解决同款设备的识别冲突问题。
如果以上步骤都试过还是不行,大概率是控制器本身的硬件限制(比如部分廉价同款控制器没有独立的设备ID),这种情况下只能换不同品牌的控制器试试了。
内容的提问来源于stack exchange,提问作者funkybro
相关产品推荐
相关产品推荐

