vintlabs / fauxmoESP

Add voice control of your ESP32 and ESP8266 devices using Amazon Alexa
MIT License
375 stars 70 forks source link

Discovery not working with echo dot 3rd generation #222

Open jormaechea opened 2 years ago

jormaechea commented 2 years ago

Hi, after a lot of tests I decided to with the docs and try the basic example in the README. So this is my code:

void setup() {

    Serial.begin(115200);

    connectWifi(); // Wifi basic setup, with hardcoded SSID and password

    fauxmo.addDevice("light one");

    fauxmo.setPort(80); // required for gen3 devices

    fauxmo.enable(true);

    fauxmo.onSetState([](unsigned char device_id, const char * device_name, bool state, unsigned char value) {
        Serial.printf("[MAIN] Device #%d (%s) state: %s value: %d\n", device_id, device_name, state ? "ON" : "OFF", value);
    });
}

void loop() {
    fauxmo.handle();
}

But when I ask my echo dot to find new devices, it finds nothing. Is there a problem with this example? Let me know if there is a way to provide some debug logs or something that may be useful.


Update: I'm using a NodeMCU ESP8266 V3 and installed the latest library version of FauxmoESP (3.4.0)

kgotsis commented 2 years ago

I had the very same problem and it worked by simply rebooting my echo dot. ESP was powered on all day and was not even restarted after the alexa's reboot.

1Alonzo commented 2 years ago

I have the same problem

jormaechea commented 2 years ago

I moved out to Arduino IOT Cloud, so I can't confirm @kgotsis solution..

Tejas-MD commented 2 years ago

Hi, after a lot of tests I decided to with the docs and try the basic example in the README. So this is my code:

void setup() {

    Serial.begin(115200);

    connectWifi(); // Wifi basic setup, with hardcoded SSID and password

    fauxmo.addDevice("light one");

    fauxmo.setPort(80); // required for gen3 devices

    fauxmo.enable(true);

    fauxmo.onSetState([](unsigned char device_id, const char * device_name, bool state, unsigned char value) {
        Serial.printf("[MAIN] Device #%d (%s) state: %s value: %d\n", device_id, device_name, state ? "ON" : "OFF", value);
    });
}

void loop() {
    fauxmo.handle();
}

But when I ask my echo dot to find new devices, it finds nothing. Is there a problem with this example? Let me know if there is a way to provide some debug logs or something that may be useful.

Update: I'm using a NodeMCU ESP8266 V3 and installed the latest library version of FauxmoESP (3.4.0)

From Readme : (2) Arduino Core for ESP8266 requires LwIP set to "v1.4 Higher Bandwidth".

Please make sure you've done this.