esp32 wifi接入blinker的同时用蓝牙ble模拟鼠标移动
本帖最后由 rauydong 于 2022-1-20 10:05 编辑家里小米盒子从红外遥控换到蓝牙遥控后,没法用小爱同学控制开机了,然后发现盒子支持wol,就采用了wifi接入blinker后wol唤醒的方案,结果可能盒子睡眠后会断网还是其它原因wol的方案时行时不行,然后偶然间发现盒子连接鼠标后移动鼠标能唤醒盒子,然后就想到了上面的实现方案,结果测试单独wifi接入blinker没问题(之前wol方案的时候就可以),单独用github上的ble-mouse库模拟连接小米盒子后鼠标移动也没问题,就是两个放在一块不行了,求大神解惑!谢谢。代码贴到下面(wifi相关信息已删除,不是忘填写;考虑到蓝牙ble和wifi同时工作分区表大小也调整了,否则也无法编译通过和上传固件了):#define USE_NIMBLE
#include <BleMouse.h>
#define BLINKER_PRINT Serial
#define BLINKER_WIFI
#include <Blinker.h>
char auth[] = ""; //密钥
char ssid[] = ""; //wifi名
char pswd[] = ""; //wifi密码
// 新建组件对象
BlinkerButton Button1("awaking");
BleMouse bleMouse;
// 按下按键即会执行该函数
void button1_callback(const String & state) {
BLINKER_LOG("get button state: ", state);
if(bleMouse.isConnected()) {
bleMouse.move(0,0,1);
}
}
void setup() {
// 初始化串口
Serial.begin(115200);
BLINKER_DEBUG.stream(BLINKER_PRINT);
BLINKER_DEBUG.debugAll();
// 初始化blinker
Blinker.begin(auth, ssid, pswd);
Button1.attach(button1_callback);
Blinker.delay(5000);
bleMouse.begin();
}
void loop() {
Blinker.run();
}上面代码报错的串口调试信息如下:08:44:10.399 -> ERROR: Maybe you have put in the wrong AuthKey!
08:44:10.399 -> ERROR: Or maybe your request is too frequently!
08:44:10.399 -> ERROR: Or maybe your network is disconnected!
08:44:10.399 -> GET... failed, error: connection refused
尝试将bleMouse.begin()挪至虚拟button点击回调里面,能正常接入了,但是在blinker app里点击按钮后,板子直接重启,报错信息如下:
08:55:56.335 -> MQTT Connected!
08:55:56.335 -> Freeheap: 137764
08:55:56.664 -> Guru Meditation Error: Core0 panic'ed (StoreProhibited). Exception was unhandled.
08:55:56.711 -> Core 0 register dump:
08:55:56.711 -> PC : 0x4000c46cPS : 0x00060130A0 : 0x801582deA1 : 0x3fffb7a0
08:55:56.711 -> A2 : 0x00000000A3 : 0x00000000A4 : 0x00002558A5 : 0x00000000
08:55:56.711 -> A6 : 0x00000000A7 : 0x00000255A8 : 0x80081e88A9 : 0x3fffb740
08:55:56.711 -> A10 : 0x00000000A11 : 0x00001800A12 : 0x00000000A13 : 0x00000003
08:55:56.711 -> A14 : 0x00001800A15 : 0x00000004SAR : 0x00000000EXCCAUSE: 0x0000001d
08:55:56.711 -> EXCVADDR: 0x00000000LBEG : 0x4000c46cLEND : 0x4000c477LCOUNT: 0x00000254
08:55:56.754 ->
08:55:56.754 -> ELF file SHA256: 0000000000000000
08:55:56.754 ->
08:55:56.754 -> Backtrace: 0x4000c46c:0x3fffb7a0 0x401582db:0x3fffb7b0 0x4014daba:0x3fffb7d0 0x4014d757:0x3fffb7f0 0x4014d797:0x3fffb810 0x400908f2:0x3fffb840
08:55:56.754 ->
08:55:56.754 -> Rebooting...求大神解惑啊。或者能给我个更好的解决这个需求的方案,万分感谢!
页:
[1]