Avatar for Franz

Franz

Member since Apr 2022 • Last active Oct 2023
  • 3 conversations
  • 5 comments

Most recent activity

  • in Bangle.js
    Avatar for Franz

    Oh, wow. edge: "rising" was kinda staring me in the face; Didn't think to play with it.
    Thank you for the quick response!

    It also works fine in the emulator.

  • in Bangle.js
    Avatar for Franz

    I'm having trouble opening Settings from another app. I saw some related topics and issues, but they don't apply exactly. This issue occurs on:

    • Emulator (v18.1) -> Setting visible; Stuck on "Loading..."
    • Device (v19.35) -> Settings visible; "Loading" -> Settings close immideately

    Here's some basic code to replicate this:

    var Layout = require("Layout");
    var layout = new Layout( {
      type:"txt", font:"6x8", label:"Test settings"
    });
    g.clear();
    layout.render();
    
    setWatch(
      function () {
        eval(require("Storage").read("myapp.settĀ­ings.js"))(()=>load());
      },
      BTN,
      { edge: "rising", debounce: 50, repeat: true }
    );
    

    and the settings app, copied from the examples:

    (function(back) {
      var FILE = "myapp.json";
      // Load settings
      var settings = Object.assign({
        something: 123,
      }, require('Storage').readJSON(FILE, true) || {});
    
      function writeSettings() {
        require('Storage').writeJSON(FILE, settings);
      }
    
      // Show the menu
      E.showMenu({
        "" : { "title" : "App Name" },
        "< Back" : () => back(),
        'On or off?': {
          value: !!settings.onoroff,  // !! converts undefined to false
          format: v => v?"On":"Off",
          onchange: v => {
            settings.onoroff = v;
            writeSettings();
          }
        },
        'How Many?': {
          value: 0|settings.howmany,  // 0| converts undefined to 0
          min: 0, max: 10,
          onchange: v => {
            settings.howmany = v;
            writeSettings();
          }
        },
      });
    })
    

    What's the problem? Am I missing something?
    I'm pretty sure this was working on v12.

    Edit:

    The "Loading..." appears pretty much as soon as I release the button.

    • On emulator, I can hold the button indefinitely and the menu remains

      // (1) PRESS BUTTON
      console.log('Open settings')
      eval(require("Storage").read("vhh.settinĀ­gs.js"))(()=> {
      // (2) RELEASE BUTTON
      console.log('Close settings');
      load()
      })
      
    • On the device, of cource just ~2-3s.

  • in Bangle.js
    Avatar for Franz

    That explains a lot :) Thanks!

  • in Bangle.js
    Avatar for Franz

    Initially I started out with a v10 DFU.

    1. I updated the DFU to v12 on https://banglejs.com/apps/
    2. I updated the firmware to v19 using nRF Connect (failed on the web)

    Now I've got a v19 firmware with a v12 DFU.

    I tried nRF Firmware Upgrade, Web, nRF Connect. Still v12 DFU.
    Am I wrong to assume, I should be on v19?

    Cheers

  • in Bangle.js
    Avatar for Franz

    Hello,

    I'm trying to figure out how-to require bonding to be notified about service value changes. I'm using nRF Connect for debugging and this only works partially:

    • Reading prompts for the key, as expected (requires bonding)
    • Notifications work without bonding

      NRF.setServices(
      {
      0x180d: {
        0x2a37: {
          notify: true,
          value: [0x06, 0],
          readable: true,
          security: {
            read: {
              mitm: true,
              encrypted: true,
            },
          }
        },
      }
      }
      )
      

    Am I missing something? I tried doing for notify, what I did for read but without success.

    Thanks in advance!

Actions