小爱同学无法控制ESP8266设备-Arduino中文社区 - Powered by Discuz! Archiver

SoldierGhost 发表于 2022-6-14 18:01

小爱同学无法控制ESP8266设备

本帖最后由 SoldierGhost 于 2022-6-14 18:46 编辑

在Blinker APP上可以连接并控制,在米家中也可以成功同步设备,但用小爱同学无法控制,会提示无法连接到设备。
在网上得到的回复是使用低版本的Blinker app,调用阿里云密钥,但查阅相关帖子后,发现现在只能调用点灯密钥,不知道咋整了:'(
如果是我代码的问题,请指出:


#define BLINKER_MIOT_LIGHT
#define BLINKER_WIFI
#include <Servo.h>
#include <Blinker.h>

char auth[] = "?";//点灯秘钥
char ssid[] = "?";//无线网名称
char pswd[] = "?";//无线网密码
Servo myservo;
#define BUTTON_1 "btn-abc"

int ini_angle = 15;
int on_angle = 0;
int off_angle = on_angle + ini_angle * 2;
bool oState = false;
BlinkerButton Button1(BUTTON_1);

void button1_callback(const String & state)
{
    Blinker.print("state=",state);
    Blinker.vibrate();
    if (state=="on") {
      myservo.writeMicroseconds(1000);
      myservo.write(on_angle);
      delay(1000);
      myservo.write(ini_angle);
      // 反馈开关状态
      Button1.print("on");
    } else if(state=="off"){
      myservo.writeMicroseconds(2000);
      myservo.write(off_angle);
      delay(1000);
      myservo.write(ini_angle);
      
      // 反馈开关状态
      Button1.print("off");
    }
}

void miotPowerState(const String & state)
{
    BLINKER_LOG("need set power state: ",state);

    if (state == BLINKER_CMD_OFF) {
      myservo.write(on_angle);
      delay(1000);
      myservo.write(ini_angle);
      BlinkerMIOT.powerState("off");
      BlinkerMIOT.print();
      Button1.print("on");
      oState = false;
    }
    else if (state == BLINKER_CMD_ON) {
      myservo.write(off_angle);
      delay(1000);
      myservo.write(ini_angle);
      BlinkerMIOT.powerState("on");
      BlinkerMIOT.print();
      Button1.print("off");
      oState = true;
    }
}

void setup() {
    Serial.begin(115200);
    myservo.attach(14);
    myservo.write(ini_angle);
    Blinker.begin(auth, ssid, pswd);
    Button1.attach(button1_callback);
    BlinkerMIOT.attachPowerState(miotPowerState);//这段代码一定要加,不加小爱同学控制不了,务必在回调函数中反馈该控制状态
}

void loop()
{
    Blinker.run();
}


SoldierGhost 发表于 2022-6-14 18:46

用3.0.0 或以上release版本的 ESP8266 Arduino package即可

feng123 发表于 2022-6-23 15:28

我的是小度音响,更新lesp82663.02还是不行,请问你用的是哪个版本。

括王爷 发表于 2022-6-23 23:12

esp01s      

SoldierGhost 发表于 2022-6-27 11:56

feng123 发表于 2022-6-23 15:28
我的是小度音响,更新lesp82663.02还是不行,请问你用的是哪个版本。

我就是3.02的,但我是小爱音箱,小度的话,你去blinker官网看看有什么注意事项没吧

feng123 发表于 2022-6-27 21:58

SoldierGhost 发表于 2022-6-27 11:56
我就是3.02的,但我是小爱音箱,小度的话,你去blinker官网看看有什么注意事项没吧 ...

哦,我想小爱能行理论上小度也能行,或者是小度的问题。只能再试试看。谢谢回复。
页: [1]
查看完整版本: 小爱同学无法控制ESP8266设备