Ethernet Gateway - unreliable (sort-of)
-
I think he was saying to leave the Ethernet shield powered by the Uno, but to power the Radio separately...
-
Nice setup... I'll see if powering my radio separately helps. Right now, the symptoms are interesting. After a reset, I can telnet into the gw until I push a button in the Vera plug-in UI (i.e. either try to "start" inclusion mode or switch between Metric and Imperial). Neither button works, and after that, I can no longer telnet into the gw. The plug-in buttons never work. However, interestingly, if I push the physical 'inclusion' button on the gateway, the plug-in updates immediately to show I'm in inclusion mode. It also updates immediately when inclusion mode expires. So GW to Vera communication is working fine. I can also go into Advanced Settings -> Variables for the plug-in and manually change a variable (say, change the config settings for Metric from "M" to "I") and that setting is reflected in the plug-in (but I can't tell if it makes it back to the GW - I see nothing in the serial monitor, although Vera said it sent the command successfully)...
Really weird stuff....
I'm in the process now of creating a sensor to see if the radio is working and further troubleshoot the GW <-> Vera interaction.
@stevebus said:
I can also go into Advanced Settings -> Variables for the plug-in and manually change a variable (say, change the config settings for Metric from "M" to "I")...
Sorry to threadjack, but this comment solved a long running problem I have been fighting. My sensors had been reporting imperial (as set in Vera->Setup->Unit Settings) until about two months ago when any new sensor connected would start reporting data back as metric. I checked my Vera settings, reset my nodes, deleted and re-introduced the nodes and even toggled back in forth between metric/imperial in Vera but nothing corrected this problem except hardcoding imperial into my sketches. I never thought to check the plugin variables. Sure enough, the unit setting was set to metric (M). I switched it to imperial (I) and all my confused sensors started reporting correctly after a simple reset.
I am using a serial gw (1.4) on Vera UI5. Does anyone have any clue why the gw would start ignoring the unit settings from the controller?
-
I'm rebuilding my gateway (going to go with a serial gw instead of Ethernet).. but during my limited testing with my Ethernet gateway, pretty much nothing with the Metric/Imperial setting worked as I expected :-). But I think that and my connectivity issues may be related.
-
Separate power supply for the radio didn't help the stability of the Ethernet Gateway. Telneting into it is spotty. It seems pretty reliable when it updates Vera (i.e. pushing the inclusion mode button, and letting it time out, immediately reflects in the Vera UI). My temperature sensor (the only sensor I've built so far, as a test) very reliably gets updated in the Vera UI as well. However, Vera -> controller communication is spotty. Sometimes hitting inclusion button from Vera works, sometimes not. Metric vs. Imperial button never works. Setting the variable for 'config' in advanced settings may or may not work (gw.getConfig().isMetric always returns 0, regardless of setting). Still troubleshooting that....
-
Separate power supply for the radio didn't help the stability of the Ethernet Gateway. Telneting into it is spotty. It seems pretty reliable when it updates Vera (i.e. pushing the inclusion mode button, and letting it time out, immediately reflects in the Vera UI). My temperature sensor (the only sensor I've built so far, as a test) very reliably gets updated in the Vera UI as well. However, Vera -> controller communication is spotty. Sometimes hitting inclusion button from Vera works, sometimes not. Metric vs. Imperial button never works. Setting the variable for 'config' in advanced settings may or may not work (gw.getConfig().isMetric always returns 0, regardless of setting). Still troubleshooting that....
@stevebus I typically have to hit the inclusion button several times while rebooting the sensor before it is completely included in Vera. I consider that normal operation. Sometimes when the inclusion doesn't work right I delete it and start over. When you change the metric setting did you hit the vera reload button after doing that? You may also need to restart the sensor after that. It's been a while since I changed that setting to what I wanted.
-
Thanks for the response @dan-s. My issue isn't getting the sensor to show up in Vera, that actually worked perfectly. The issue is that communication from the GW to Vera works great, but communication from Vera to the GW doesn't appear to work at all, or at least it is very unreliable.
For example, just to use the inclusion example. If I push the hardware inclusion button on my gateway, Vera immediately reflects the fact that I changed to inclusion mode. If I 'include' any sensors by restarting them, Vera (via the GW) recognizes them immediately. If/when the GW times out of inclusion mode, Vera recognizes it immediately.
The issue comes when I try to communicate the other way. None of the buttons on the Vera plug-in appear to do anything on the GW. For example, I can't start or stop inclusion mode by hitting the Start and Stop buttons on the plug-in UI inside of Vera. The Metric and Imperial buttons appear to not do anything either. Even if I manually change the 'config' variable on the advanced settings page of the plug-in from M to I, it sticks in the GUI, but doesn't appear to get pushed to the GW (the GW still reports M to the sensors). So it appears that nothing is being communicated from Vera to the GW.
So far, I haven't had a chance to see if Vera will send any commands to a sensor/switch/whatever via the GW because the only 'sensor' I've had time to build is a temperature sensor that only sends temps (via the GW) to Vera. It works great. I'm going to try to build a sensor that receives commands from Vera as well as sends inputs, but haven't had time yet (and running out of HW).
so, so summarize (too late, I know).. based on the evidence so far, it appears that communication from Vera to my GW dies soon after reset. I cannot telnet into the GW on port 5003 after more than a couple of minutes after reset either (and the little troubleshooting Windows app, I can't remember the name, can't connect either).
-
How are you powering arduino + ethernet + radio module? The ethernet module drains a lot of mA in high speed. Cheap phone chargers will not delivery proper energy to it.
And from another perspective, do you have any firewall / router in between Vera and the GW ? -
Thanks @rvendrame.... For the Arduino + Ethernet shield, at the moment (temporary while debugging), I'm powering both from a USB 3.0 port on my computer. I have also, in an earlier iteration of troubleshooting, also had a switching power supply rated at 9V and 1A plugged into the barrel connector of the Uno in addition to USB (for serial monitor). Behavior didn't change.
Per recommendation by @dan-s, The radio is separately powered by it's own power supply. It's a Enercell supply rated at 4.5V and 700mA. The supply for the radio goes through a LD1117 3.3V voltage regulator and has a 100uF can capacitor across the input leads. I've verified the input of the regulaor at 4.52V and output of the regulator at exactly 3.3V.
Of course, I don't yet have any confirmation that any of the voltages going into either of the components doesn't drop due to inability to provide enough current for the components under load. It's certainly possible I'm under-supplying either component. I have moved my sensor over 100ft away and it still picks up fine for the radio.
The behavior of the gateway is that after a reset, you can telnet into it, connect via the MYSController software, and/or use the Vera software to send commands to it for about 30 seconds, then it starts ignoring all Ethernet-sided input... i.e. it seems to quit listening for network client connections. (although radio traffic and GW initiated network input works fine). A persistent ping to the device during all of this traffic never drops a single packet.
What would be the recommended rating for power supplies for the two different parts of the solution? (Arduino Uno + shield and Radio)
-
Thanks for the response @dan-s. My issue isn't getting the sensor to show up in Vera, that actually worked perfectly. The issue is that communication from the GW to Vera works great, but communication from Vera to the GW doesn't appear to work at all, or at least it is very unreliable.
For example, just to use the inclusion example. If I push the hardware inclusion button on my gateway, Vera immediately reflects the fact that I changed to inclusion mode. If I 'include' any sensors by restarting them, Vera (via the GW) recognizes them immediately. If/when the GW times out of inclusion mode, Vera recognizes it immediately.
The issue comes when I try to communicate the other way. None of the buttons on the Vera plug-in appear to do anything on the GW. For example, I can't start or stop inclusion mode by hitting the Start and Stop buttons on the plug-in UI inside of Vera. The Metric and Imperial buttons appear to not do anything either. Even if I manually change the 'config' variable on the advanced settings page of the plug-in from M to I, it sticks in the GUI, but doesn't appear to get pushed to the GW (the GW still reports M to the sensors). So it appears that nothing is being communicated from Vera to the GW.
So far, I haven't had a chance to see if Vera will send any commands to a sensor/switch/whatever via the GW because the only 'sensor' I've had time to build is a temperature sensor that only sends temps (via the GW) to Vera. It works great. I'm going to try to build a sensor that receives commands from Vera as well as sends inputs, but haven't had time yet (and running out of HW).
so, so summarize (too late, I know).. based on the evidence so far, it appears that communication from Vera to my GW dies soon after reset. I cannot telnet into the GW on port 5003 after more than a couple of minutes after reset either (and the little troubleshooting Windows app, I can't remember the name, can't connect either).
@stevebus I don't have an inclusion button on my gateway so I can't speak from experience there, but l do know that it sometimes takes several presses of the vera inclusion button and multiple sensor resets to get the sensor included. Have you tried to include a sensor this way via the vera button and not pushing the gateway button?
-
I have tried inclusion via Vera, but I will admit not with the 'persistence" you mentioned :-) I might have tried the button a couple of times in a row, but that's it. And it works fine from the Vera button for the first half-minute or so after a restart.
-
I have tried inclusion via Vera, but I will admit not with the 'persistence" you mentioned :-) I might have tried the button a couple of times in a row, but that's it. And it works fine from the Vera button for the first half-minute or so after a restart.
@stevebus One other thought. If you hit the reload button on Vera it will give and error message when it executes the lua code associated with the gateway it can't communicate with the gateway. Do you get an error message when you do that?
-
I do not get any errors after hitting the reload button on the Vera. And it has no effect on the Vera buttons working or not (only a GW reset temporarily fixes that).
One note: I used the Vera device files from https://github.com/mysensors/Vera
Someone from another forum pointed me to the UI7 branch https://github.com/mysensors/Vera/tree/UI7
But when I tried to use those files, I couldn't get the gateway to create.
Not sure if it makes a difference. If so, I can try again
-
I do not get any errors after hitting the reload button on the Vera. And it has no effect on the Vera buttons working or not (only a GW reset temporarily fixes that).
One note: I used the Vera device files from https://github.com/mysensors/Vera
Someone from another forum pointed me to the UI7 branch https://github.com/mysensors/Vera/tree/UI7
But when I tried to use those files, I couldn't get the gateway to create.
Not sure if it makes a difference. If so, I can try again
-
yeah, since I'm relatively new to home automation, I made the (apparent) mistake of building an Edge. No choice but UI7. When troubleshooting other stuff with long time Vera users, this is the point I usually get to, where they say "oh, I'm running UI5, <insert thing I'm trying to do> works fine for me" and shrug :-)
Apparently UI7 is a big pile of monkey :shit:
Thanks a ton for trying to help! I'll keep plugging at it.
-
yeah, since I'm relatively new to home automation, I made the (apparent) mistake of building an Edge. No choice but UI7. When troubleshooting other stuff with long time Vera users, this is the point I usually get to, where they say "oh, I'm running UI5, <insert thing I'm trying to do> works fine for me" and shrug :-)
Apparently UI7 is a big pile of monkey :shit:
Thanks a ton for trying to help! I'll keep plugging at it.
@stevebus There have been discussions here about using UI7 and I am assuming there are some members of this forum who have an Ethernet gateway up and running. If it is a UI7 specific problem, I recommend you start a new entry such as "Help with Vera Edge UI7 Ethernet gateway problem" so that you attract UI7 users with your title.
-
I can do that, but I'm not yet convinced it's a Vera/UI7 problem (unless UI7 is what's causing the GW to stop listening). I say that because I can't telnet or use the MYSController app to connect to it either. I should be able to connect with those things as well I would think.
-
I can do that, but I'm not yet convinced it's a Vera/UI7 problem (unless UI7 is what's causing the GW to stop listening). I say that because I can't telnet or use the MYSController app to connect to it either. I should be able to connect with those things as well I would think.
Does your arduino or Ethernet shield get very warm?
By that I mean impossible for you to hold your finger on them for more than a few moments?
I'm wondering if you haven't overpowered your rig, causing some over current protection to trip.
I have the same setup but the arduino/Ethernet/radio and had problems with a 1200mA 12v power supply... Got too hot!
-
I can do that, but I'm not yet convinced it's a Vera/UI7 problem (unless UI7 is what's causing the GW to stop listening). I say that because I can't telnet or use the MYSController app to connect to it either. I should be able to connect with those things as well I would think.
@stevebus Since you receive from the sensor and post on the Vera, your gateway loop and radio are working which means the problem is probably not the Arduino. The Ethernet is sending to the vera but not receiving. When you reboot the setup code is run through again, the Ethernet is reinitialized and then it is ok for a short while (If I correctly understood your problem description). Thinking maybe a problem with wiznet board. Do you have one to substitute?
-
@BulldogLowell - Neither the Uno or the Ethernet shield gets hot. I seem to have the same experience no matter how I power it...
@Dan-S - I'm using a ENC28J60 based shield, not Wiznet. I had both. I actually tried to use the Wiznet board first, but it seems to be completely bad (I can't even get any of the built-in Ethernet examples to work with it). I don't have another ENC28J60 board to test with..
However - by way of a small update. I've had the GW running for several days in a row now and have a few updates/observations:
- communication from sensor to GW to Vera continues to work flawlessly.
- I finally got around to adding a sensor that requires commands to be sent FROM the Vera (a variation on the relay actuator sample). Communication from the Vera through the GW to the sensor also works very reliably... So, it seems the problem is not the Ethernet stack or listener. So, the problem seems to be isolated to the inclusion mode and Metric/Imperial buttons.
- inclusion mode now works 'sometimes'. It doesn't work every time, but sometimes setting inclusion mode from the Vera UI works, as opposed to never working previously after the first 30 seconds after a reboot. It seems like it works right as I'm about to get irritated that I have to walk down two flights of stairs to my basement to push the inclusion mode button manually, so maybe the Vera/GW have a 'mood' sensor :-)
I don't know (yet) why it works sometimes and not others. Still troubleshooting. But I'm encouraged that the Vera/Mysensors combination is trending towards more reliability.