Currently i'm running cumulusmx connected to a Davis VantagePro2 through the weatherenvoy with IP Datalogger. CumuluxMX is very stable; the only problem i have is that sometimes (random periods, can work for several days, but can also happen within the hour) i get a socketexception as displayed below:

When i restart CumulusMX manually it will connect again succesfully. The reason for the disconnected are most probably because currently the IP datalogger is connected trhough a VPN to the CumulusMX PC, and there can be a hickup once in a while. But i think this problem can be solved easily by modifying your try / catch block within DaviStation.cs, catching the System.IO.IOException specifically and restart the data loop / thread from there. I would add a configurable retry maximum so it's not constantly restarting the loop if the connection is lost for some reason.

Would this be something you are willing to add to the source? Currently i have to monitor the interface often to see it the station is still connected. The above addition would make cumulus a lot more stable for these IP-connected scenario's.