23rd-Aug-16 iphone update breaks button widget, node-red-contrib-blynk-websockets

I updated blynk on my iphone but now a virtual push button does not work properly … instead of sending a 1 when pressed and a 0 when released like any push button would, it works as a pulse button sending a 1 followed by a 0 when pressed and nothing when released, this screws up my whole project as I use multiple push buttons, is it a mistake or by design ?

Dear @Toshi_Bass

Button widget functionality wasn’t changed for ~3months)
It workes in the way you describe for a very long time and last release doesn’t change that.
But I agree with you that this behaviour isn’t perfect.
So I’ve changed it’s implementation and it will be available in the nearest app update (1~2 weeks).

Well that answer is very strange, I have been using button setup as “push” in my project since May and I have updated blynk ios app every time there has been a new release. In reality the “push” button has always worked as per the blynk document says it works …see attached… until this latest ios update, as it stands the push button working like a pulse button is useless as is the associated button indication, So I look forward to new update in (1-2 weeks) hopefully you will return functionality back to what is documented ie. push button sends a 1 release button sends a 0

I must admit though I was amazed that no one else has seen this behavior and commented, am I the only person that uses a “push” button the way it was designed to work :open_mouth:

@Toshi_Bass I use Android so some of what I write might not be applicable to iOS.

In PUSH mode, rather than SWITCH mode, are you not expecting a “pulse” of 1 and 0 (HIGH and LOW)?

Are you saying that you wish to hold a PUSH button in the HIGH state until you release it? This would be where SWITCH would be used.

Bit confused by what you are experiencing and as you say we haven’t heard from other Blynkers with a similar issue. Surely your code will capture the HIGH and LOW and take the appropriate course based on the signal received.

Hi Costas, prior to this latest ios update … a button in “push” mode sent a 1 when the button is pressed and a 0 when it was released, that is what a standard every day “push” button does, like my door bell if I press it I get ding when I release it I get dong.

In my project I used a “push” button multiple times …
I made a greenhouse watering system I have a button that overrides auto, I choose which area I want to manually water using a slider and press the “push” button it used to energises the chosen water solenoid then when the button was released the solenoid de energized like a dead man’s switch, now with the same setup the solenoid momentarily closes then opens immediately whether I keep my finger on or not.

if I use that same same button in “switch” mode then when I press the “switch” button the solenoid energises and does not de energise until I press the button again, the dead man’s switch is preferable so I don’t flood my tomatoes.

In May this year I made a lock screen, 12 “push” buttons which have to be pressed in a certain combination or no other button will function like ios lock screen, this has been working faultlessly until yesterday despite updating each and every ios blynk update, a “switch” button just doesn’t work as you can imagine, using the lock screen now leaves the indicator on on each button pressed see attached… because the 1 followed immediately by 0 is quicker than the time it takes to take your finger off the button

So yes I can capture the HIGH and LOW and take the appropriate course BUT the “push” button now has no action when its released I cannot therefore capture anything when the push button is released only when its pressed.

In the post above, the attachment describes a push button action exactly how it was working until yesterday
"Button sends 1 (HIGH) on press and sends 0 (LOW) on release"

1 Like

Can’t you simply count the 1 and 0?

First 1 and 0 is PUSH
Second is release?

@Toshi_Bass just checked in Android it still works how it has always worked.

Holding the PUSH button sends a 1 and the 0 isn’t sent until the button is released.

So it is different to Android?

@Toshi_Bass Maybe this is just turning the PUSH into a SWITCH but would this work for you?

int iosfix = 0;

BLYNK_WRITE(V20){  // READ button on V20 and WRITE it to the server
                   // for use in the app on V21 and V22 displays
  int v20push = param.asInt();
  if(v20push==1){
    Blynk.virtualWrite(V21, v20push);
  }
  else{
    Blynk.virtualWrite(V21, v20push);
    if(iosfix == 0){   //iosfix; // Swtich 0 or 1
      iosfix = 1;
    }
    else{
      iosfix = 0;
    }
    Serial.print(iosfix);
    Blynk.virtualWrite(V22, iosfix);
    if(iosfix == 1){
      // do something
      Blynk.virtualWrite(V22, "pushed");
    }
    else{
      // do something different
      Blynk.virtualWrite(V22, "released");
    }
  } 
}

First 1 and 0 is PUSH Second PUSH is release? yes but then its a switch… I am using node-red-contrib-websockets but example in above post is easy to replicate but it still means I have to push the button twice which really isnt right, as a stop gap for manual water until the fix in 1 or 2 weeks I inserted a timer so when it see’s 1 it energises the solenoid for 5 seconds then sends a 0 to close the solenoid not as nice but at least the rest of my flow including all the fail safes still work and I shouldn’t flood the greenhouse while I am on vacation (tomorrow for 2 weeks)

Android … Holding the PUSH button sends a 1 and the 0 isn’t sent until the button is released ! YES How it should be. and How it was until yesterday

1 Like

Apart from issues, your project looks great! Could you post a full res screenshot?
I like how you used empty block! :fireworks:

And what does your project do?

Hi Pavel I can post your request but there will be a 2 week delay as I go on vacation very (hmmm very) shortly and my wife is giving me earache to turn off the computer to get packed and stuff sorry…

1 Like

@Toshi_Bass Hi Toshi, I’ve verified just now the functionality of push buttons on my iPhone and iPad and they work normally as always done “Holding the PUSH button sends a 1 and the 0 isn’t sent until the button is released” All OK !!

Aaargh :confused: !! Today the Push Button widgets on my iOS devices are working bad exactly as reported by @Toshi_Bass !! They work no more as Push Buttons but as strange “pulse generators” !! @Pavel Please Pavel can you ask to your team to report the functionality of this widget exactly as it was before? Thank you indeed, Giancarlo

Guys, Please check the most recent version from the AppStore.
Now it should be ok.

FIXED !! It works fine.
Thanks,
Giancarlo