Nest Learning Thermostat on sale at Lowe's

[quote=“TheGadgetGuy, post:120, topic:171456”]Regarding the “feature request” for the Nest plugin: This has nothing to do with folks having incompatible routers. That was not the point. The point is, Vera is going to only indicate the last information it receives from Nest’s server. The Nest solution is inherently less reliable because there are multiple points of failure. Thus the need to know how stale the data being presented is.

With Z-wave thermostats, there is a greater reliability factor because Vera is pinging the T-stat directly. If Vera can’t directly change the temperature of a Z-wave T-stat, it tells you.

Don’t get me wrong. I find the Nest to be a really cool device, and so far, it has been a pretty fun gadget to play with. In my line of work, the devil is in the details. If I am being presented information that is not “real time”, I’d like to know that.

Watou made a great plugin for the Nest, and I think we are all greatly benefiting from his efforts. Keep up the good work!! Thanks to your plugin, I’ll soon be buying a couple more Nests for other zones in my house.[/quote]
I agree that since both the plugin and the thermostat have to reach over the Internet to report properly, completely local solutions can be more reliable. But don’t get me wrong – regardless of how you resolve the issue with the Cradlepoint, I am definitely going to be providing usable information in an update to the plugin on how “stale” the thermostat status might have become due to connectivity problems. So at least you will know that you don’t know the current status when those failures occur. I think the issue of connectivity from your Vera to nest.com is addressed properly in the current version, but I will add the LastUpdate variable to the three device types to give information that automation can use for when your thermostat(s) can’t connect back to the mothership.

I just pushed 0.9 of the plugin to apps.mios.com. This release only differs in that there is less logging in LuaUPnP.log, and the LastUpdate device variable is set for the location, thermostat and humidistat devices. Please see the readme file at [url=http://cocu.la/vera/nest/README.md]http://cocu.la/vera/nest/README.md[/url] for more information. And please let me know if you see anything odd in this new release of the plugin. Thank you!

  • watou

[quote=“watou, post:122, topic:171456”]I just pushed 0.9 of the plugin to apps.mios.com. This release only differs in that there is less logging in LuaUPnP.log, and the LastUpdate device variable is set for the location, thermostat and humidistat devices. Please see the readme file at [url=http://cocu.la/vera/nest/README.md]http://cocu.la/vera/nest/README.md[/url] for more information. And please let me know if you see anything odd in this new release of the plugin. Thank you!

  • watou[/quote]

I have auto update checked, but I am still running version 0.7? Strange. On a lighter note, it’s working juuuust fine :slight_smile: .

I was hoping 0.8 would roll out automatically, since it had a problem of polling too frequently after commands were issued. But if it hasn’t been a problem for you, then I suppose it’s OK to wait for 0.9 to become available. Please let me know if 0.9 seems OK; it was a relatively small change, but it’s helpful to get feedback. Thanks!

There was a thread recently where people were complaining that Auto Update doesn’t work. It has never worked for me.

http://forum.micasaverde.com/index.php/topic,12709.msg93983.html#msg93983

I was hoping 0.8 would roll out automatically, since it had a problem of polling too frequently after commands were issued. But if it hasn’t been a problem for you, then I suppose it’s OK to wait for 0.9 to become available. Please let me know if 0.9 seems OK; it was a relatively small change, but it’s helpful to get feedback. Thanks![/quote]

Version 0.7 is working great. I installed my LFM-20 relay yesterday and adjusted my humidity setpoints for corresponding outside air temperatures. It is working great and allowing me to control my humidifier even without a Nest 2… and better than ever before since my original humidistat did not adjust for outside air temperature changes!

I am really happy. Great work watou!!!

[quote=“hugheaves”]@watou,

I was taking a look at your Next thermostat plug-in and was a little disturbed to find some of my GPL licensed thermostat code cut and pasted into your plug-in without attribution and with the removal of my original copyright notice. Furthermore, you are asking for donations on your website for a plug-in, at least some of which was written by me. I have never asked for donations for my plug-ins, and therefore found your GPL violation more than a little irritating.

As you are currently violating the GPL license for my code, could you either: 1. Completely remove my copyrighted code from your plug-in, or 2. Restore the copyright notices for my code, and provide proper attribution to the original code as specified by the GPL license agreement.

Honestly, I wouldn’t mind that much, but as you’re asking for money for my code, I would like to see the GPL properly maintained.

Thanks,
Hugh[/quote]

I regret forgetting to thank you (and several other people) for publishing open source plugins on code.mios.com, which provided one of many examples of how to write a plugin. That is why you made it open source, right? (My list of thank-yous was restricted to people who answered my questions on the forum.) However, whatever you are referring to must be absurdly trivial, and I find your reaction and public chastisement very unpleasant and unwarranted, and quite obviously completely out of the spirit of open source.

Why don’t you spell out what of your code you think I “stole” from you for all to see? It will certainly prove to be trivial helper functions at most, if even that. Then, while I busy myself with rewriting whatever trivial code you cite that is in fact your original work, per your request, please feel free to request to MCV that my free, open-source plugin (for which I have only asked for donations for my efforts, not for your trivial helper functions) be removed from apps.mios.com, so that all of its users can be denied the use of it.

Honestly, how incredibly petty of you, and how much MCV must love folks like you who merely serve to run off folks like me.

watou

P.S. If you really think you deserve the one $5 donation I’ve received, please say so publicly right here.

[quote=“hugheaves”]@watout,

You don’t have to rewrite any of your code, I’d just like you to not remove the copyright on my code. Even open source has rules, and one of them is that you have to give credit were credit is due. (the GPL, under which your code and my code is licensed requires so) For what it’s worth, those “trivial helper functions” that you mention seem to comprise about 20% of your the code to which you are claiming copyright.

However, if they really are trivial, I won’t expect it will take you long at all to rewrite them. :slight_smile:

And don’t worry, I’m not going to request that MCV “pull the plug-in”, that would be absurd.

Hugh[/quote]

You gave me the option of removing your “copyrighted code from [the] plug-in” so I would like to pursue that resolution. Please publish the alleged 20% infringement of your legitimately copyrighted work and I will set about eliminating it from the plug-in. Or, if you would instead like me to rightfully give you thanks and credit in the README.md for having provided an open-source example of Vera thermostat plug-in, I would be more than happy to do that.

watou

watou,

Basically what hugheaves (rightly) points out, is, that if you have used code fragments from GPL code, you also obviously must follow the rules of GPL yourself.

Now, I’m certainly not the guy who knows what (if something), that you have used from any other code, but I’m saddened by the tone of your post.

[quote=“vespaman, post:129, topic:171456”]watou,

Basically what hugheaves (rightly) points out, is, that if you have used code fragments from GPL code, you also obviously must follow the rules of GPL yourself.

Now, I’m certainly not the guy who knows what (if something), that you have used from any other code, but I’m saddened by the tone of your post.[/quote]

hugheaves has accused me of infringing his copyright, but he has (nearly two days on) failed to respond to my two requests to publicly assert what of his original work I have infringed. I am saddened that you see fit to chime in when, at this point, his accusation is unsubstantiated by facts. Until he demonstrates otherwise (and I and others carefully check his assertions), his statements are basically libel. There is no reason for you to be sad, however, because I have responded entirely reasonably to his accusation.

It’s no wonder that there is a dearth of plugins when trolls merely wait in the wings to cast a sinister light on the efforts of new developers.

watou

@watou & @hugheaves,

Thanks for your respective plugins, along with everyone else that have written them for the good of everyone else! I am thankful for the effort you both put into this regardless of where any other code may have been re-used from! Lets keep up the good spirit here!

Its a New Year, and I’m hoping we can all get along, and not have others chime in on their opinions until you both resolve this!

Happy New Year to everyone!

[quote=“strangely, post:131, topic:171456”]@watou & @hugheaves,

Thanks for your respective plugins, along with everyone else that have written them for the good of everyone else! I am thankful for the effort you both put into this regardless of where any other code may have been re-used from! Lets keep up the good spirit here!

Its a New Year, and I’m hoping we can all get along, and not have others chime in on their opinions until you both resolve this!

Happy New Year to everyone![/quote]

I second Strangely’s comments. Thanks for the great plug-ins!

I’ll chime in here as well…

We all share a common interest: The Vera ecosystem, and its continued development. Let’s all work together to further that important goal.

@hugheaves: It is my honest belief that watou meant you no harm or disrespect in making use of your code. I think he was simply unaware of the GPL requirements. Can you please PM watou and indicate to him the sections of code you are speaking of?

@watou: Your Nest plugin was very creative, and made a lot of Vera users happy. Once hugheaves PM’s you the details, please include the proper copyright notice as requested. He has not required you to remove the code from your plugin, and I do not feel that to be necessary. He is just asking you to follow the rules of GPL, which are in this case, reasonable.

We all need to take a breath and relax. This does not need to escalate out of control. Please communicate privately between yourselves (don’t need to air dirty laundry), and let us know once a resolution has been achieved.

Thanks to all, and Happy New Year!

In a past life I was a lecturer in computer programming at a university. One of the more unpleasant things I had to do was to decide when I thought two or more students were copying from each other in their programming assignments. The only evidence I had to go on was the code itself; the students themselves would swear blind that they hadn’t copied or collaborated. Because I had so many students I automated the comparing and then confirmed the flagged pairs by hand. I’d look for telltale signs like the name of a variable, the order of functions, or the way whitespace was used. Common misspellings in comments were like gold nuggets.

So I thought I’d brush off my forensic skills and take a look at the respective codebases. I only looked at Lua code, not the device files, since there’s not a lot of different ways to write a device file.

These were the bits that I thought were beyond doubt from a common origin:

[ul][li]The assignment to decompressScript, also the choice of that variable name, in I_RTCOA_Wifi_ZoneThermostat1.xml (36-46) and in I_Nest1.xml (22-33) [/li]
[li]The choice of the temporary filename (decompress_lzo_file) in I_RTCOA_Wifi_ZoneThermostat1.xml (48-51) and in I_Nest1.xml (35-36) [/li][/ul]

There was a little circumstantial evidence: the implementations for round() are more similar to each other than either of them is to the many other implementations that I found on the web, I_RTCOA_Wifi_ZoneThermostat1.xml (194-201) and in I_Nest1.xml (182-186). Plenty of structural similarity, but that was also true in the assignments I’d receive because they all did the same thing.

On the balance, if I’d been handed these two programs as submissions to an assignment I’d have noticed, and I might have reminded each of them to remember to cite their sources to avoid accusations of plagiarism, but I wouldn’t have hauled them up before the disciplinary committee.

@TheGadgetGuy - thank you for your constructive suggestions. Please be aware, however, that I was publicly accused of willfully misappropriating someone else’s work, and so I believe the accuser is thus expected to cite specifically, and in the same public place, what of his original work I misappropriated. Rather than (correctly) give me the benefit of the doubt as to intent, he unjustly placed a cloud of doubt over my contributions and has thus far not even cited how his work was abused. To resolve this in private, after a public accusation, is not reasonable in my opinion.

@futzle - You are indeed correct that the decompressScript code fragment is found in hugheave’s public, free, open-source plugin. However, since this code fragment only serves to work around a plug-in deployment issue that must affect all plugins that use their own modules, it seemed obvious to me that this was a technique shared by many if not all plugins that use their own modules, regardless of what the plugin does, and that no one would consider this their own proprietary solution to the problem. In fact it seemed like the kind of workaround that MCV themselves would offer to plugin developers, instead of having plugin developers invent their own unique workarounds. Perhaps I was wrong and that this was hugheave’s original, unique solution to the problem, and that all other plugins that workaround this common problem all (or at least should) cite him as its rightful copyright holder. I don’t know, because he hasn’t said either way; I am still waiting for him to identify what code he claims copyright to that I infringed. I would hope that, as @strangley so wisely requested, other parties would choose to not further confuse the matter.

As I said at the beginning of all this, I regret not citing everyone and everything I came into contact with since first learning about the Vera. I do know that the one copy/paste mistake I did make was to say “Copyright (C) 2012 ” at the top of my implementation file, just as hugheaves did, when in fact all plugins share common aspects and fragments, as is what is required of being a plugin in the first place. I’ve seen other open-source projects say “Copyright (C) and others” as a way of signalling 1) none of us is 100% individually responsible for their work product, and 2) it is beyond reasonable to enumerate each and every entity that has in some way contributed to the author’s work product.

I did make an honest effort at the very beginning to offer thanks for assistance in my learning how to write this plugin, but it seems that forgetting one name on the list is enough to be accused, out of the blue, in a public forum, of willful copyright infringement. If that’s considered OK around here, it’s a great way to discourage people from wanting to contribute.

watou

Forgive me, but your attempt to paraphrase what I have said is unnecessary and inaccurate in several respects, and only further confuses the issue. Please kindly allow me and hugheaves to speak for ourselves. Thank you.

Kind regards,
watou

Can we get back on topic perhaps? If people cant refrain from comments/opinions, then perhaps I would go a step further to suggest locking the thread until this is all resolved!

I would agree with the first part, but I would not be in favor of shutting down the venue in which I was wrongly accused until at least after the issue is fully resolved. In my opinion, it would be wrong to allow a public accusation but only a private resolution.

watou

[quote=“watou, post:136, topic:171456”]Forgive me, but your attempt to paraphrase what I have said is unnecessary and inaccurate in several respects, and only further confuses the issue. Please kindly allow me and hugheaves to speak for ourselves. Thank you.

Kind regards,
watou[/quote]
Sure thing. The floor is yours.

I too hope this thread stays open to reach a conclusion.

Can you please have this discussion privately.

You apologize for making the post on a public forum, but you continue to have questions and instigate the author of this plug-in to respond to you in public.

At this point I have serious doubts if you are truly concerned about the suspected use of your code, or you have a greater interest in associating your name with this soon to be very popular plug-in.

Please start a new thread, or have this conversation in private. Having seen the evidence you have provided, there is nothing here that warrants this thread to be hijacked.

I would like all to stop responding to @Hugh in this thread, to ensure this discussion is done in private if he wishes to pursue this issue further.