tzapu / node-red-contrib-blynk

Blynk app integration with Node Red
MIT License
17 stars 5 forks source link

Another cacheing issue #15

Closed scargill closed 8 years ago

scargill commented 8 years ago

At least I think it is... but firstly - this new node ie the LCD node (I already control the LCD)... is there a description somewhere of what it does? Sorry, might just be me being thick.

Right - to my issue... see the code below - very simple - a single button toggles a control between auto, on and off- and only does it on the downward stroke of the button. On the App is a button and one of those rectangular displays that can show a few characters - ie the result "on", "off" or "auto".

I had this on my main page in Node-Red. I hit control-X to delete it - and went to another page where I now keep all my BLYNK stuff - and PASTED it in. I SAVED everything. I made sure the original was not still there.

When pressing a button (you have to look carefully) I noted that the message was jumping and not in the right order, that is - the symptoms of the function being called TWICE in very quick succession - as if BOTH versions were running.

I checked again that the original was no longer there. I restarted Node-Red. The problem went away.

Pete.

if (msg.payload=="1") { switch (context.global.pergola_override) { case 2: msg.payload="off"; context.global.pergola_override=1; break; case 1: msg.payload="auto"; context.global.pergola_override=0; break; case 0: msg.payload="on"; context.global.pergola_override=2; break; default: context.global.pergola_override=0; msg.payload="auto"; break; } return msg; } else { switch (context.global.pergola_override) { case 0: msg.payload="auto"; break; case 1: msg.payload="off"; break; case 2: msg.payload="on"; break; default: context.global.pergola_override=0; msg.payload="auto";break; } return msg; }

tzapu commented 8 years ago

hi, i ll take a look at this and see about the issue as well. will also write a description of the lcd thingy. very much a work in progress.

Could you tell me how are you driving the LCD widget currently? I was unable to make it work before it getting added in the js lib... If there s another way i'd like to add it to some documentation as well

scargill commented 8 years ago

So not at my desk... at airport but let me assure you, you can write to lcd. See my blog tech.scargill.net for pic. Simple set lcd to use 2 pins ( with template from memory like /lcd0/ and /lcd1/ NOT the actual pin number)... then simply send message to relevant pin. Done it several times. If you need more info write pete at scargill dot net and I will send screen shots. Expect 24 hour delay. On route to USA.

On 23 November 2015 07:19:18 tzapu notifications@github.com wrote:

hi, i ll take a look at this and see about the issue as well. will also write a description of the lcd thingy. very much a work in progress.

Could you tell me how are you driving the LCD widget currently? I was unable to make it work before it getting added in the js lib... If there s another way i'd like to add it to some documentation as well


Reply to this email directly or view it on GitHub: https://github.com/tzapu/node-red-contrib-blynk/issues/15#issuecomment-158867576

Toshibass commented 8 years ago

If you check blog tech.scargill.net you may also see the above info is for android, not for iOS which I am using, until your new node it was not possible to write to the lcd widget even using scargill's method. Now it works but need info on syntax as per Closed issue #9

First of all what is correct syntax for sending a message ... if I send ... lcd.print(0,0,"Hello from Node-Red") (the format detailed on the node in the app) the blynk app on iphone crashes, however I found I can enter just Hello and that pops up on the lcd display clear-lcd also works but how to get msg to print at coordinates / second line?

There is an issue (although it goes on to work)... when I press deploy in node-red I get ... "node-red-contrib-blynk:LCD Pin already in use" this also happens every time I connect another say inject node to the lcd-print node then deploy or disconnect a node that's already connected to the lcd-print node then deploy. I am just back from USA, so no delay.

tzapu commented 8 years ago

hi guys, it seems there s some bug somewhere that doesn't display usage info on lcd. i will sort that and make some more docs for it. I m also using ios which might explain why it didn t work for me. Short tips for lcd widget are:

short example using an inject node [{"id":"23f12591.81dfba","type":"blynk-server","key":"","usessl":true,"host":"","port":""},{"id":"f629c0bd.775d","type":"blynk-lcd-print","name":"","server":"23f12591.81dfba","pin":"20","x":288,"y":825,"z":"1ed41123.5fece7","wires":[]},{"id":"d31bb3f7.206a2","type":"inject","name":"","topic":"1","payload":"5","payloadType":"string","repeat":"","crontab":"","once":false,"x":92,"y":406,"z":"1ed41123.5fece7","wires":[["a431d5da.26d288","f629c0bd.775d"]]}]

please note that is just something i threw together. any suggestions on how to better do it are more than welcome

tzapu commented 8 years ago

https://github.com/tzapu/node-red-contrib-blynk/issues/17 started discussion about LCD Widget there to keep this more to the point