天天看点

【模块】ESP32连接PS4手柄

    之前搞过的模块(功能),今天再搞,又出问题了,没事我都习惯了。有问题就再研究,把问题都记下来,理论上以后遇到类似的问题就不愁了。

    最近又(又又)要搞小车,必须得整个控制的东西,这样比较高大上...(日后单出一篇对比控制手柄的文章),总之又借了PS4的手柄

领路信息:(貌似这块应该放前边)

  • 为啥要用ESP32?

    便宜好用支持arduino生态,简单来说就是有库

  • 为啥要用PS4手柄?

        展示时候比较有面儿,(我非土豪,从朋友那借的)

  • 为啥搞了这么久?

        运气问题、坑爹的板子

  • 这东西可以干什么用?

    我打算控制视频遥控车用

相关信息:

库:PS4-esp32(PS4Controller)貌似就这一个库,两位作者aed3和openobjects的库好像是一样的,貌似是一个大佬搞出来然后改名字了,然后另一个大佬怕大家找不到...不用深究

设备:PS4手柄,朋友那借的应该是原装的。

不重要设备:DELL笔记本,坚果pro2s手机

ESP32主板:TTGO T8,注意:大坑预警,我最后就是用TTGO T8才连上的,用

ESP32 DEVKIT(下图,名字是我起的因为板子上有这个丝印)连不上

【模块】ESP32连接PS4手柄

PS4手柄指示灯信息、调试总结:

通过手机或电脑蓝牙连接手柄可以看到正常情况下手柄指示灯的状态,可以用来观察对比出错原因:

(按PS键)白色缓慢闪烁(类似呼吸灯):没有连接主机

(同时按PS键和连接键(方向键旁边、左边的黑色的)5s)白色快速闪烁:手柄进入连接状态,这个是一般主机连接手柄的方法。ESP32连接PS4不用这个方法。

白色快速闪烁3-5次后熄灭:连接失败

粉灯常亮:ESP32连接PS4成功

黄色缓慢闪烁(类似呼吸灯):USB通信成功

相关工具:

PS4手柄MAC地址查看工具:SixaxisPairTool,需要使用0.3.1版本的。

不安卓手机软件Bluetooth Scanner查看的MAC和实际ESP32可以连接的MAC(SixaxisPairTool0.3.1读取的)不一样,原因待查

虽然试出来的,但掉坑的原因还不要测试,不能一杆子直接打死他,我还是很保守很客观的,下边简单梳理一下问题的查找方法。

下图所示,其实就是3个点:ESP32主板、库、PS4手柄。

    库一般不会有问题,可以从github的相关提问和油管相关视频中确认;

    PS手柄,一般不会有问题,可以连接电脑或手机确认蓝牙是否正常;

    ESP32主板,这个没办法,由于目前市面上主板太多,没办法衡量,只能凭经验,即之前有没有使用过相关功能模块。本次出现问题的地方也的确是主板。