紅米舊機器手把沒震動,核心沒開支援,核心源碼又不全, 乾脆自己 magisk module 補上了

JerryHo 2026-09-16 07:08 1

我用紅米 Note 12 Pro 5G 接 GameSir G8+,手把能連上,但就是不會震動。後來和 AI 一起查,才發現手機原廠核心沒有開啟 Sony 手把的震動支援,而 G8+ 當時用的是 DS4 藍牙模式。
一開始以為得重編整個核心,偏偏小米公開的原始碼又和手機上的版本對不上。最後走通的方式,是另外編一個有震動功能的驅動,讓這支手把改用它,再包成 Magisk 模組,處理開機載入和斷線重連。
現在兩邊馬達都能震動了。我把程式、安裝包和整個排查過程放上 GitHub ,也寫了中英文的技術文章,包含中間走過的彎路。如果你也遇到「手把明明有震動,接到手機卻沒反應」,希望這份紀錄能幫上一點忙。


還沒適配 DS4 以外的手把, 但我認為這套做法應該能套用到不少內核開源做一半的老小米機子, 請各位先進多指點.


專案: https://github.com/29988122/xiaomi-controller-rumble
下載: https://github.com/29988122/xiaomi-controller-rumble/releases/tag/v0.2.0
繁體中文說明: https://github.com/29988122/xiaomi-controller-rumble/blob/main/README.zh-TW.md
技術文章: https://github.com/29988122/xiaomi-controller-rumble/blob/main/docs/writeup.zh-TW.md


先講清楚適用範圍:目前只有我這套組合驗證過。



  • Redmi Note 12 Pro 5G ( ruby )

  • HyperOS OS2.0.8.0.UMOTWXM

  • 核心 4.19.191-gdecc267868f3

  • GameSir G8+,DS4 藍牙模式
    其他手機或韌體可以參考做法,但不能直接拿這個驅動來用。Nintendo 、Xbox 、Steam Controller 的其他連線協定也不支援(手邊沒有)。
    目前確認過左右馬達、藍牙重連、螢幕休眠後喚醒,以及重開機自動載入等。停用模組後,也能回到原廠驅動。


想試的人請先看 README 。安裝時只連一支符合條件的手把,模組裝好後會先保持停用,確認復原方式再啟用。
有興趣研究或移植到其他手機,歡迎到 GitHub 開 PR 交流。


(Astra 暴力的試著還原 ABI 的方式還挺嚇人的..)

最新回复 (7)
  • woodfizky 09-16 09:00
    1
    手机连手柄。。还真是小众的需求啊。。好奇,不觉得屏幕小吗?是玩什么游戏?
  • sodesga 09-16 09:08
    2
    给福尔摩沙点个赞
  • Chicagoake 09-16 09:21
    3
    @woodfizky 还行吧,主要是多数游戏对手柄适配并不好,只能走映射的路子。switch 的屏幕也就 6 寸多。
  • EriczzZ 09-16 09:52
    4
    真牛逼
  • freewarcraft 09-16 11:37
    5
    @woodfizky 玩游戏不是重点,很多人是折腾半天把机器和游戏调试到完美运行状态然后就吃灰了😂
  • alleluya 09-16 13:17
    6
    紅米舊機器手把沒震動 这二年繁体字看的真费劲... 我还以为是写的红米几把没震动 我还纳闷小米啥时候开情趣业务了....
  • panchina2 09-16 13:29
    7
    问一下 op ,手写的时候,是简体字还是繁体字?无敌意,纯好奇呀~~
* 帖子来源V2EX
返回