You are reading a single comment by @Gordon and its replies. Click here to read the full conversation.
  • Sorry this happened to you, but I'm glad you're finding some ways around it!

    For the swipe->click idea, if overloading Bangle.setUI wasn't working for some reason, you could try adding this:

    Bangle.on('swipe',(x,y) => {
      if (x!=1) return;
      global["\xff"].watches.forEach(w => { if (w.pin==BTN) w.callback(); })
    });
    

    It's very hacky, but it basically piggy-backs on the the existing setWatch to just call whatever functions were set to be called when BTN changes.

    I'd also be interested in whether if you run the following code:

    setInterval(function() { "jit"
      pinMode(BTN,"output");
      BTN.reset();
      pinMode(BTN,"input_pulldown");
      print(BTN.read());
    }, 100);
    

    the button itself changes what's printed from false to true or if it's still always stuck on true? The code is basically just forcing the button pin to be off and then reading the value again after. If that's something that actually helps, I could add it inside the firmware where it checks the button for reboots and it might really help you.

About

Avatar for Gordon @Gordon started