vintlabs / fauxmoESP

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

v3.0 not discovered by Alexa #58

Closed pvint closed 3 years ago

pvint commented 6 years ago

Original report by GeneBean (Bitbucket: genebean, GitHub: genebean).


If I use v2.3.0 of this repo with Arduino Core 2.3.0 for the ESP8266 my nodeMCU 1.0 (esp-12E) module is discovered by the Alexa app. If I update to the 3.0 version of this repo my device is never found nor is anything other than the wifi connection and free heap shown in the serial console.

In both cases I was using the provided example sketch and only changed my wifi creds and the plug name.

I did try adding #define DEBUG_FAUXMO_VERBOSE true to the 3.0 version of the sketch but it didn't change a thing.

pvint commented 5 years ago

Original comment by Peter Feerick (Bitbucket: pfeerick, GitHub: pfeerick).


Well, damn. ESP8266 v2.4.2, lwIP v1.4 Higher Bandwidth, Arduino 1.8.7, Fauxmo v3.1.0, and either a Digistump Oak (ESP12F) or Wemos ESP8266 works just fine with my gen2 Echo Dot(s) (I bought two a few weeks ago as they were on sale). Also on 2.4Ghz WiFi. And the Dots run through discovery and find the boards just fine. You could try the ESP8266 Arduino 2.5.0 betas, as they worked for me also, or perhaps try uncommenting the DEBUG_FAUXMO define on line 37 of the header file, and see what extra info that gives you? Maybe something weird is going on with your router? https://bitbucket.org/xoseperez/fauxmoesp/src/f60c46d80f9b8a400319ab8af9af2957eeb276aa/src/fauxmoESP.h#lines-37 .

pvint commented 5 years ago

Original comment by Peter Wenzel (Bitbucket: [peter wenzel](https://bitbucket.org/peter wenzel), ).


Damn is right. Extremely frustrating. Update - I bought another router online just for the hell of it (free returns on Amazon)....set everything up, tried to discover devices and....IT WORKED! Thanks Peter F for the idea. I then hard reset my current router but for some reason it still won't discover devices. I have the Linksys EA6350. Any idea what default settings on a router might block Alex from discovering devices?

pvint commented 5 years ago

Original comment by Stuckey (Bitbucket: Stuckeymax, GitHub: Stuckeymax).


That router, as I recall, has remote management only via a Linksys portal/server. It also has an attached-device cache that must be cleared periodically if you have many users passing through.

A GREAT router is the ASUS RT-AC86U. Strong RF performance, good monitoring tools. Always connects to my ESP devices and STAYS connected. Previous router would spontaneously disconnect my ESPs and I would have to reboot them every few days.

Another tidbit: if you have a Philips Hue hub, shut it down temporarily while discovering your ESPs. Power Philips back up once your ESPs are discovered and everybody will he working fine, no conflicts.

Also, you can change the name of your ESP anytime without rediscovering. Alexa will figure it out.

I built a 3-button version that presses any of 3 buttons on a Somfy Glydea motorized drapery controller, is posted to github under Somfy something. Interestingly, Alexa is fine with my saying any of: “close the drapes” “open the drapes” “turn on the drapes” “turn off the drapes,” but change drapes to draperies or curtains or garage or garage door and the only commands that work are off and on. Say, “ Alexa, open the draperies,” and Miss Smartypants says, “Draperies doesn’t support that.”

They call her AI. I call her AS, artificial stupidity. 😉

Stuckey

pvint commented 5 years ago

Original comment by Peter Wenzel (Bitbucket: [peter wenzel](https://bitbucket.org/peter wenzel), ).


thanks Stuckey, very helpful. And yes, completely agree, I've only been mildly impressed with Alex.

I will check that router out! I suppose then there's really no way to use my current router then :(...

pvint commented 5 years ago

Original comment by Peter Feerick (Bitbucket: pfeerick, GitHub: pfeerick).


Glad that's working for you. Only thing I could suggest is see if there is anything about enabling UPnP support, and perhaps somehow whitelisting ports 80, 1900, 1901 for the internal network if it has an overly excitable firewall. And enabling anything related to UDP also. I've also heard great things about the ASUS, so if that helps ;) lol... artificially stupid... I'll remember that one for future!

pvint commented 5 years ago

Original comment by Andy Droid (Bitbucket: rainyodd, ).


I'm using. fauxmoESP version 3.1.0 Wemo D1 mini Arduino IDE version 1.8.8 Echo dot gen3 Was having this problem as well, locking at the example fauxmoEXP_Basic

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

many examples don't I have tried don't include this. and also fauxmo.onMessage(callback);

is not used. one last thing it to change Changing from lwIP variant "v2 lower memory" to "v2 higher bandwidth" in the tools menu of the arduino ide . my board is LOLINE(WEMOS) D1 R2 & mini Now working

pvint commented 5 years ago

Original comment by Peter Feerick (Bitbucket: pfeerick, GitHub: pfeerick).


The example distributed with the library only started including fauxmo.setPort(80); as of the 17th of Dec 2018, when Xose said he started getting gen3 support working.

The onMessage parameter has been depreciated (i.e. invalid) since v2.3.0 (2017-11-08) but is unfortunately still referenced by sites like the Adafruit guide for using their Featherwing boards with Alexa.

It's great to know you have support working though Andy, means the changes Xose made are working ;)

pvint commented 5 years ago

Original comment by Tony Baz (Bitbucket: tonybaz, GitHub: tonybaz).


I tried with Arduino IDE 1.8.8 and the latest FauxmoESP 3.10 and with different variations with lwap and still not device discovery. My Alexa is Echo Show Gen1. Anyone had success with Echo Show?

pvint commented 5 years ago

Original comment by Stuckey (Bitbucket: Stuckeymax, GitHub: Stuckeymax).


If you have Philips Hue hub, unplug it during discovery. That was my prob.

Also try irdevkit.ino; watching serial port gives you some feedback re what’s happening on boot up.

Stuckey

pvint commented 5 years ago

Original comment by Tony Baz (Bitbucket: tonybaz, GitHub: tonybaz).


I turned off all my smart devices and still no luck. I have uploaded the irdevkit.ino as suggested by Stuckey, please find below the result:

192.168.1.1, port 1900 192.168.1.1, port 1900 192.168.1.1, port 1900 192.168.1.1, port 1900 192.168.1.144, port 50374 192.168.1.144, port 50374

.1 is my router .144 is the Echo Show

Not much info to interpret what is going on?

pvint commented 5 years ago

Original comment by Tony Baz (Bitbucket: tonybaz, GitHub: tonybaz).


I run wireshark to understand bit, the SSDP protocol is sent via multicast on 239.255.255.250 from the echo unit. I think something needs to be enabled on the router to allow the multicast to replicate. I'm not sure the esp8266 is getting the search packet. Any idea?

pvint commented 5 years ago

Original comment by Stuckey (Bitbucket: Stuckeymax, GitHub: Stuckeymax).


Tony – You might be on to something. In my experience, the fauxmo ESP8266 works better with some routers than others for some reason, whereas everything else I own doesn’t seem to care which router it connects with/through. This suggests to me that ESP8266WiFi.h or another WiFi-essential element may be doing something a little differently than your typical WiFi client.

My previous router was a Buffalo Tech unit based on DD-WRT Linux. My newer, current router is an ASUS RT-AC68U, which may also have some DD-WRT or OpenWRT/Linux roots. Discovering my fauxmo ESP8266 with the older Buffalo was quirky/iffy, and once connected, it would seldom remain connected for more than 2-3 days for reasons unknown to me. With theRT-AC68U, it has remained connected since I switched it on (1-2 weeks now).

If you have a newer or at least different router you can try, it’s worth a shot.

pvint commented 5 years ago

Original comment by Tony Baz (Bitbucket: tonybaz, GitHub: tonybaz).


Thanks Stuckey, something is not yet completed in the library, all my smart devices detected and no problem, except my ESP8266, I ordered the ESP32, hopefully better, I will let you know the result once received. My router is Cisco and I looked at its config, nothing to be added. I also discovered that the laptop is initiating the multicast discovery process and not the Echo Show. Maybe if Xose can give us more logic on how he came up with his library. Is he following the SSDP protocol as defined? Also I heard some changes in the Alexa API, not sure if he is using the new framework.

pvint commented 5 years ago

Original comment by Giovanni Roberto Mariani (Bitbucket: robademar, GitHub: robademar).


After several attemps I succeeded in finding my devices after I disabled the firewall of my router. I'm using vodafone station revolution.

pvint commented 5 years ago

Original comment by Peter Feerick (Bitbucket: pfeerick, GitHub: pfeerick).


There is a chance that the problem is more deeply seated in the ESP8266 Arduino core. There was a recent issue (https://github.com/esp8266/Arduino/issues/5487) where it was mentioned that requirements such as the need for regular calls to MDNS.update() weren't documented properly when using Multicast DNS... so it would not surprise me if things like discovery of ESP8266 and even ESP32 aren't the most reliable depending on your network environment. This should all be fixed when 2.5.0 is released, but there is no guarantee this is the culprit here. I would think it's more something to do the with firewalls, the ports being used, and maybe UPnP.

pvint commented 5 years ago

Original comment by Daniele Testa (Bitbucket: danieletesta, GitHub: danieletesta).


All of you with network issues. You might want to check that your network supports Broadcast packets BEFORE wasting your time troubleshooting. https://superuser.com/questions/396256/how-can-i-test-if-my-windows-xp-machine-can-send-multicast-packets

pvint commented 5 years ago

Original comment by Tony Baz (Bitbucket: tonybaz, GitHub: tonybaz).


Everyone, the multicast is sent no issue with the network and I'm able to sniff everything via wireshark. The library itself is missing parts. I have smart bulbs purchased recently based on esp8266, they are discovered like a charm and I'm able from Alexa Echo to control them.

pvint commented 5 years ago

Original comment by Peter Feerick (Bitbucket: pfeerick, GitHub: pfeerick).


@tonybaz I get where you're going comparing the smart bulbs based on esp8266 with an ESP8266 using this library, but that's still like comparing oranges to lemons... yes, they are both fruit (just as both are using an ESP8266), but an orange ain't a lemon... and an ESP8266 programmed with the Espressif RTOS SDK is not the same as one programmed with the ESP8266 Arduino core, and there are then all the differences with how functionality is implemented in the core, let alone what the 'sketch' author done in the code. For example, v2.4.0 of the core changed over to using v2 of the lightweight TCP/IP stack (lwIP) by default... which even now, in v2.5.0-beta3, can cause some issues with some sketches, meaning you manually switch to the v1.4 stack. Doesn't mean there is something 'wrong' or 'missing' in the library, it just means until more is known... that's too far a leap to base anything on. Now, you mentioned earlier the laptop is initiating the discovery process... er... are you sure? If you tell your Echo to 'discover devices'... then it should be initiating discovery, not your laptop...

pvint commented 5 years ago

Original comment by Tony Baz (Bitbucket: tonybaz, GitHub: tonybaz).


Hi Peter, very much enlightening. I agree with the way things are configured; I need to learn more about the RTOS.

Now for the discovery mechanism, you have to do it from the app "Smart Home/devices/Discover". The app discover the device and sign up with Alexa Cloud the detected new device, then a unique ID would be assigned to the new device in your account. Now when you home Echo interacts with the device, it is through this unique ID. I could be wrong, but if anyone has better explanation, please let me know. Not much on Alexa SDK, all high level API programming language. But this is the conclusion that I was able to get from sniffing packets and I think the most accurate explanation.

pvint commented 5 years ago

Original comment by Peter Feerick (Bitbucket: pfeerick, GitHub: pfeerick).


In my case, with an Echo Dot, I can do discovery by simply saying "Alexa, discover devices". AFAIK, the process is then sending the different queries for different protocols for the different devices Alexa supports - i.e. Phillips Hue, Nest, Roomba. Depending on what response the Alexa device gets, determines what it thinks it can control, and what options it registers on your account for that device.

There is another library - Espalexa - (which I haven't tried... only just come across it) that might be worth a try. It is interesting to note on the readme for that library that it is advisable to use v2.3.0 or 2.5.0 (beta atm) and NOT to use 2.4.x of the ESP8266 Arduino core (unless you patch a file) ... due to a bug in v2.4.x :person_facepalming: So maybe try the library as is, and if that makes no difference, try the patch, and then see if it makes any difference to fauxmoesp...

pvint commented 5 years ago

Original comment by Tony Baz (Bitbucket: tonybaz, GitHub: tonybaz).


Still same issue, no progress even with the Espalexa. Now, I start to doubt if my Echo Show acts differently than the dot.

pvint commented 5 years ago

Original comment by Giovanni Roberto Mariani (Bitbucket: robademar, GitHub: robademar).


Have you checked your network? In my case router firewall blocked discovery. Using Espalexa and esp8266 everyting worked at first try.

pvint commented 5 years ago

Original comment by Tony Baz (Bitbucket: tonybaz, GitHub: tonybaz).


My network is fine. No issues there. I use the same network to discover devices from 3rd party vendors. All works like a charm.

pvint commented 5 years ago

Original comment by Rodolphe Coisnard (Bitbucket: rodymary, GitHub: rodymary).


Hi, I had some trouble to make my esp8266 been discovered each time by my gen2 or gen3 echos (arduino ide 1.8.8, esp8266 2.5.0, fauxmoESP 3.1.0). Then I found a way to make it happen all the time, by changing line 83

#!arduino

if(request.indexOf("upnp:rootdevice") > 0 || request.indexOf("device:basic:1") > 0) {

by

#!arduino

if(request.indexOf("ssdp:discover") > 0 || request.indexOf("upnp:rootdevice") > 0 || request.indexOf("device:basic:1") > 0) {

If it could help

pvint commented 5 years ago

Original comment by Stuckey (Bitbucket: Stuckeymax, GitHub: Stuckeymax).


Thx! I’ll try it.

SMc

pvint commented 5 years ago

Original comment by Xose Pérez (Bitbucket: [Xose Pérez](https://bitbucket.org/Xose Pérez), ).


Thanks, pushed the change to dev branch.

pvint commented 5 years ago

Original comment by Tony Baz (Bitbucket: tonybaz, GitHub: tonybaz).


Thanks Rodolphe, I modified the library and tried it, still not flying... I will continue digging...

pvint commented 5 years ago

Original comment by Jack Murphy (Bitbucket: JacktheRipperOC, ).


So, as a newbie, I just loaded the current demo code (has fauxmo.setPort(80)) and libraries from Adafruit, and my devices on my Feather HAZZAH was discovered the second time (first time my Dot was offline). I'm using the 1.8.8 IDE (1.8.19.0 from the Windows Store), Board was the "Adafruit Feather HAZZAH ESP 8266", FauxmoESP 3.1.0, 115,200 baud to serial port. Dot Gen3. What did I do right? I came here because my Dot was offline on my first attempt (keeps doing that: any suggestions?).

pvint commented 5 years ago

Original comment by ed bourne (Bitbucket: edbourne, ).


also, as a newbie, I just loaded the current demo code, my device is a NodeMCU Amica esp8266 (use the NodeMCU 1.0 (ESP 12E Module). First pass at home didn't work, after scanning this list, I set the lwIP version to v2 Higher Bandwidth (have no idea what this does!) and it worked, I could see "yellow lamp, pink lamp, etc" on my Alexa devices list. I have both Dot v2, and the latest echo plus (2nd Gen). I brought my setup to the office, and .... crickets. The two big differences being that I'm using a dot 3, and I have no idea what the router is setup like at the office. I can't discover the esp8266 on my work environment. Dot 3 works fine, esp8266 works fine (with other things, ie basic web server), just the discovery of the fauxmo devices doesn't work.

pvint commented 5 years ago

Original comment by Stuckey (Bitbucket: Stuckeymax, GitHub: Stuckeymax).


Ed – If any existing Philips Hue hubs at your office, power those down during discovery and then switch them back on after.

Router might have strange ports blocked, but if Alexa works there, LAN-linked stuff usually will too. Don’t know how big your co is, might try speaking with IT unless they’re gestapo types.

Stuckey

pvint commented 5 years ago

Original comment by ed bourne (Bitbucket: edbourne, ).


Oops said V2, meant V1.4 Higher bandwidth. The router use at my office seems to be the issue. Any idea what ports are used by fauxmo, or what I might look for on the router that is blocking my Alexa from finding the added devices?

pvint commented 5 years ago

Original comment by ed bourne (Bitbucket: edbourne, ).


Found this: https://forums.developer.amazon.com/articles/46667/what-tcpudp-ports-does-echo-use.html I've got all the ports on my internal network open (so dot and esp8266 can see each other) but I'm still missing something. I'm guessing that isn't all I need. Since its called "discovery" on the Amazon site, can I assume I have to have mDNS working? If so, thats ends using this at the office, no IT type is going to let me have that.

pvint commented 5 years ago

Original comment by Stuckey (Bitbucket: Stuckeymax, GitHub: Stuckeymax).


Is dot in comm with amazon servers, taking voice commands, answering questions?

SMc

pvint commented 5 years ago

Original comment by Jason Thrasher (Bitbucket: [Jason Thrasher](https://bitbucket.org/Jason Thrasher), ).


xoseperez: Thanks for all of your work on this project!

This thread was helpful in getting fauxmoesp working for my D1mini. I’ll report it’s working when writing the firmware using:

I did have to unplug my Philips Hue hub. No ports were treated specially on my firewall/router (which is a pfSense).

I asked Alexa to discover devices, and found I couldn’t use the Alexa app on my phone to connect my ESP8266.

After it was connected and working, I found I could update to

And it continued to work! I didn’t try to initiate the connection routine with esp8266 2.5.2, though it seems the bugs have been worked out, so it’s worth trying.

-Jason

pvint commented 4 years ago

Original comment by arul chris (Bitbucket: [Arul Chirs](https://bitbucket.org/Arul Chirs), ).


(ESP8266 D1 mini) was able to add only 3 devices. on adding 4 or + devices as in the example none of the devices was discovered.

as quote by @Andy Droid changed lwIP variant "v2 lower memory" to "v2 higher bandwidth. and configured 8 devices now Alexa was able to discovered all the eight devices. :grinning:

pvint commented 4 years ago

Original comment by Carlos Nascimento (Bitbucket: [Carlos Nascimento](https://bitbucket.org/Carlos Nascimento), ).


650/5000

My project is running with an ESP8266-01 and Arduino UNO.
When I configure for 4 devices alexa recognizes, but when expelling the project for more devices alexa does not recognize any devices.

Ja I edited the bibliote line 83 to:

if (request.indexOf ("ssdp: discover")> 0 || request.indexOf ("upnp: rootdevice")> 0 || request.indexOf ("device: basic: 1")> 0) {

Arduino IDE 1.8.10
Board Manager: esp8266 2.6.2
Library Manager: FauxmoESP 3.1.0
board selected: “Generic ESP8266 Module”
lwIP: V2 Higher Bandwidth
device: Amazon Echo DoT v3 (gen 3)

12 Relay Design (12 Devices)

Does anyone have any other suggestions?

pvint commented 4 years ago

Original comment by Carlos Nascimento (Bitbucket: [Carlos Nascimento](https://bitbucket.org/Carlos Nascimento), ).


My project is running with an ESP8266-01 and Arduino UNO.
When I configure for 4 devices alexa recognizes, but when expelling the project for more devices alexa does not recognize any devices.

I edited the Liberie line 83 to:

if (request.indexOf ("ssdp: discover")> 0 || request.indexOf ("upnp: rootdevice")> 0 || request.indexOf ("device: basic: 1")> 0) {

Arduino IDE 1.8.10
Board Manager: esp8266 2.6.2
Library Manager: FauxmoESP 3.1.0
board selected: “Generic ESP8266 Module”
lwIP: V2 Higher Bandwidth
device: Amazon Echo DoT v3 (gen 3)

12 Relay Design (12 Devices)

Does anyone have any other suggestions?

pvint commented 4 years ago

Original comment by Stuckey (Bitbucket: Stuckeymax, GitHub: Stuckeymax).


Carlos – Have you tried shutting down the 4 recognized devices plus your Philips Hue hub if you have one, then trying to recognize 1 new device at a time, then switching the others back on?

I have 2 recognized ESP8266 devices working with Alexa, but had to shut down Philips Hue hub to get either of them to connect. In my system, I have one Echo dot and one fairly old Echo cylinder.

Best wishes and Merry Christmas, hope you get it figured out,

Stuckey McIntosh

Atlanta

pvint commented 4 years ago

Original comment by Vlad Voinea (Bitbucket: [Vlad Voinea](https://bitbucket.org/Vlad Voinea), ).


HI guys,

Could you please help me with 2 issues ?

Using the latest fauxmoESP/master echo dot 3 correctly discovers an emulated Philips Hue which can be turned ON and OFF using voice commands. But it cannot be controlled from the Alexa app like a normal Smart Home light (toggle it like a button from the app).

Second issue, I tried to using the fauxmoESP/master-2.4.X (as this one uses Wemo emulation) but I cannot get it working. I updated the discovery response and now my emulated Wemo is found by Alexa but I cannot get it to correctly process SetBinaryState commands.

I would like to mention that I managed to get the original Fauxmo library to correctly emulate Wemo using a Raspberry Pi.

Any help would be appreciated.

Thank you

pvint commented 4 years ago

Original comment by Carlos Nascimento (Bitbucket: [Carlos Nascimento](https://bitbucket.org/Carlos Nascimento), ).


Stuckey - I don't have the Philips Hue hub. I am just running ESP8266 with the fauxmo library.
Running project in IDE with 4 ESP8266 devices Alexa Recognizes 4 in both versions of ESP8266 board and library. My problem is when in the project I extend the code for more devices. It fails to recognize all devices in the code. There seems to be a device limit that is not very clear.

I would like to control 12 devices with a single ESP8266, but it is difficult.

pvint commented 4 years ago

Original comment by Zuriel Hdez (Bitbucket: [Zuriel Hdez](https://bitbucket.org/Zuriel Hdez), ).


I have a similar problem, i can upload a code with two devices and work fine.

But when i edit the same code and upload alexa dont recognize more so i can brake the rule of two devices.

Carlos Nascimiento, dont change some line in the librarie o similar?

i hope today review the code more deep, try to find something what can help

Nice day for everyone

Regards from Mexico

pvint commented 4 years ago

Original comment by Stuckey (Bitbucket: Stuckeymax, GitHub: Stuckeymax).


Carlos - Could be a 2-bit variable in fauxmo that needs to be a 4-bit variable for your 12-device setup.

I’ve never looked into the source code for that, but xoseperez might know where to look, or what gives rise to the 4-device limitation.

SMc

pvint commented 4 years ago

Original comment by Stuckey (Bitbucket: Stuckeymax, GitHub: Stuckeymax).


Carlos – Hope you have your no-more-than-4 issue straightened out. I added 3 more ESP8266 devices to my system yesterday so that in total I have 5, each with a different Alexa-recognized name. I did not encounter any problems adding the 5th device, didn’t have to shut down any other discovered/controllable devices.

Best regards,

Stuckey

Arduino IDE 1.8.9 Board Manager: ? Library Manager: ? board selected: NodeMCU 1.0 (ESP-12E Module) lwIP: V2 Lower Memory device: Amazon Echo v2 + Echo Dot v3

pvint commented 4 years ago

Original comment by Gustavo Freire (Bitbucket: gsfreire, GitHub: gsfreire).


Carlos, can you send your files? thx

pvint commented 4 years ago

Original comment by Chris McKeever (Bitbucket: [Chris McKeever](https://bitbucket.org/Chris McKeever), ).


Is this still working? A previously connected device/code no longer can be discovered.

pvint commented 4 years ago

Original comment by Roger Hoggarth (Bitbucket: [Roger Hoggarth](https://bitbucket.org/Roger Hoggarth), ).


@{5ddd491a7095a40d12530342} did you get it working Chris. My previously working Wemo-emulation and Phillips-hue emulation projects no longer can be discovered. Tried resetting my Echo devices. No luck so far.

pvint commented 4 years ago

Original comment by Chris McKeever (Bitbucket: [Chris McKeever](https://bitbucket.org/Chris McKeever), ).


yes and no. After I removed the devices from Alexa, they started to work again. I did work on the code some that my project was using, but I do not think I did anything that would have resolved the issue.

Im pretty sure it was after I removed the device and re-added that it all got back in line.

BUT I can confirm that as of a few weeks ago, this library was still working with Alexa. I do need to try it again, as I need to connect a device. I will report back when I get a chance

pvint commented 4 years ago

Original comment by Doelectric Domotica Profesional (Bitbucket: [Doelectric Domotica Profesional](https://bitbucket.org/Doelectric Domotica Profesional), ).


I have tried the example on an esp 01 with an alexa ecoflex and everything works fine. switching on and off and regulation.

pvint commented 3 years ago

Closing stale issue.