Simple and reliable esp8266 nodeMCU smart garage door opener

@ogiewon I have been struggling for days now trying to get child devices to show up. I can see changes in the serial output but nothing ever changes in the classic app. I never have a buttons option there either during the set up. All I have in the app is a refresh, a 0 buttons, a dash and the device tile saying it departed once the timeout happened. All the child device handlers look ok and are published. Any ideas?

The latest Parent DTH removed this setting, as it is now handled automatically behind the scenes.

A few major items to verify.

  1. Is the IP address of your ST Hub correct in the sketch?
  2. Is the MAC Address of your ESP8266 board correct in the Parent Device Settings?
  3. Is the IP Address of ESP8266 correct in the Parent Device Settings?
  4. When you manually added the Parent Device in the ST WEB IDE, did you assign it the correct LOCATION and HUB?
  5. Are you signed into the ST WEB IDE with the primary ST account credentials?
  6. Are both the ST Hub and ESP8266 on the same LAN? Can both be pinged using the addresses used the sketch and the parent settings?
  7. Have you power cycled the ST Hub? If v2, make sure you remove the batteries as well.

That’s about all I can think of…:thinking:

@ogiewon If I can refresh from the app and see it in the serial output wouldn’t all of that have to be true? If not, what could be wrong and the refresh still works?

That means ST can send data to the ESP8266. This means you typed in the IP address and port of the ESP8266 correctly into the Parent’s Settings.

Now, you need to verify everything else in the list above…:wink:

@ogiewon All looks good. Here is an error I see in the live logging. Is it related?

5:33:24 error Error parsing ifttt payload groovyx.net.http.ResponseParseException: OK

5:33:05 PM: debug Using ip: 192.168.1.64 and port: 8090 for device:

5:33:05 PM: debug Executing ‘sendEthernet’ refresh

5:33:05 PM: debug Executing ‘refresh()’

5:33:05 PM: debug setting deviceNetworkID =

5:33:05 PM: debug Executing ‘updateDeviceNetworkID’

5:33:06 PM: debug Update detected: DeviceUpdated

5:33:05 PM: debug Executing ‘updateDeviceNetworkID’

@ogiewon Thanks! I figured it out with your help! When I changed sketches, the Hubitat was active in the second one and not ST like the first sketch was.

1 Like

Glad to hear!

@ogiewon My sensor has been running just fine ever since so I decided to make it permanent and I already had a 12e all soldered up for the job. I did have to move the trig and echo to new pins for your code to work. I deleted the old device and added the new one but now in webcore, the ultrasonic sensor value is not available for use in if conditions. All that is shown now is Button, Link Quality, Presence, Signal Strength, $status, numberofbuttons, and supportedbuttonvalues. Any ideas why it would not show the ultrasonic sensor value? Also, the child ultrasonic sensor is not showing a value in the ST app, just stays at 0%. I did give it tank dimensions. It does show in the serial monitor. Thanks!

Looks like you’re looking at the Parent Device, not the child Ultrasonic device.

Since there was a Hub firmware update recently, you may need to power cycle the hub to get things talking correctly again. Just a guess.

If that doesn’t work…

Yeah, the child is not listed. When I use the app to pick devices to expose to Webcore the child is not there anymore and the structure of where things are listed has changed. I have power cycled the ST HUB. Thanks, I will keep playing with it to see what I can figure out. I was able to get the child to work in the app itself just can’t see it in Webcore.

Hi Todd,

Please could I have your code?

I’m using GitHub - hobbzey/Simplest-SmartThings-ESP8266-Blinds: Extremely Simple ESP6288 NodeMCU SmartThings Blinds to control my blinds and it is rock solid.

I’ve love to be able to change the code, but I wouldn’t know where to start.

I have tried to use STAnyThing, but couldn’t work out how to.

I only want to control a relay, so should be even less code than the blind servo.

Many thanks.

K.