Avatar for kab

kab

Member since Jan 2022 • Last active Aug 2022
  • 5 conversations
  • 22 comments

Most recent activity

  • in Bangle.js
    Avatar for kab

    ok. Cleared out all my files, went back to basics.
    added an image and an info file to storage. then added a ibeacon.boot.js file to storage with

    var myiBeacon = require("ble_ibeacon").get({
      uuid : [0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx, 0xxx], [#myuuid](http://forum.espruino.com/searĀ­ch/?q=%23myuuid)
      rssi : -74
    });
    var _setAdvertising = NRF.setAdvertising;
    NRF.setAdvertising = function(a,b) {
      if (Array.isArray(typeof a)) a = [a,myiBeacon];
      _setAdvertising(a,b);
    };
    function advertiseBeacon() {
      NRF.setAdvertising(Bangle.bleAdvert);
    }
    if (!Bangle.bleAdvert) Bangle.bleAdvert = {};
    setInterval(advertiseBeacon, 60 * 1000);
    advertiseBeacon();
    

    did a load() and it disconnected from bangle2 with prompt not detected, upload failed, trying to recover. And it reconnected. At that point I checked the file was saved - it was and I did load() and then disconnected - and all seems to work. It is picked up by Home Assistant Espresense as an ibeacon.

    I guess I should now try t add widget bootgattbat and see if they all work together. First... a backup

  • in Bangle.js
    Avatar for kab

    Nope. With code below I only get to the bangle logo with a line
    -> bluetooth

    then it sticks

    var myiBeacon = require("ble_ibeacon").get({
      uuid : [0xbd, 0x84, 0xb1, 0xb2, 0x1c, 0x2c, 0x00, 0xbe, 0x0c, 0xe9, 0x26, 0x70, 0x0f, 0xfe, 0x0c, 0xa0],
      rssi : -74
    });
    
    NRF.setAdvertising = function(a,b) {
      if (Array.isArray(typeof a)) a = [a,myiBeacon];
        _setAdvertising(a,b);
    };
    
    var _setAdvertising = NRF.setAdvertising;
    
    function advertiseBeacon() {
      NRF.setAdvertising(Bangle.bleAdvert);
    }
    
    if (!Bangle.bleAdvert) Bangle.bleAdvert = {};
    
    setInterval(advertiseBeacon, 60 * 1000);
    
    advertiseBeacon();
    
  • in Bangle.js
    Avatar for kab
    Uncaught error: Too much recursion stack is about to overflow
    in function "_setadvertising" called from line 9 col 21 in .boot0
    

    First "rotating" the advertising code seems to work. Stick to no more ble advertising and I should be fine?

  • in Bangle.js
    Avatar for kab

    Thanks for info on error.
    Also - thanks for overwrite of setAdvertising. Tried it and get an error on left side of ide at line 7: invalid typeof value "array"
    I g-searched but could not come up with a fix. I assume you are checking to see if incoming a is an array? Sorry - just a hair above my javascript knowledge.

  • in Bangle.js
    Avatar for kab

    How would I use this example as a way use my bangle2 to advertising it as a beacon?
    I have tried

    
    (() => {
      function advertiseBeacon() {
        NRF.setAdvertising([
          require("ble_ibeacon").get({
            uuid : [0xb1, 0xae, 0x51, 0x2b, 0x97, 0x03, 0x4a, 0xe2, 0xb9, 0xc3, 0x9e, 0x26, 0x0c, 0xa7, 0xb3, 0x99],
            rssi : -60
          })
        ]);
      }
      setInterval(advertiseBeacon, 60 * 1000);
      advertiseBeacon();
    })();
    
    

    but get a "Uncaught Storage Updated" when I try to save it to a file in storage on the watch.

    I want to figure out how to use it in this format

    Bangle.bleAdvert[0x180F] = [E.getBattery()];
    

    so they all play together
    Thanks
    Katherine

  • in Bangle.js
    Avatar for kab

    cool. will get experimenting with this lead. Thanks!

  • in Bangle.js
    Avatar for kab

    nope, not connected to gadgetbridge.
    I use espruino hub now for mqtt and bluetooth "translation" to get my puck ble advertising into home assistant for controlling automations with button presses.

    what I was thinking
    I currently have presence detection via bluetooth/home assistant. When presence is detected coming in the front door, check to see if any data avail (via bangle bluetooth ad?) , if so automatically download it to NAS (or somewhere)

    like I said, clueless so not even sure of the questions to ask.

  • in Bangle.js
    Avatar for kab

    I wonder if you could point me in the direction to get started.
    I would like to be able to automatically (?) download my recorder gpx tracks(s) locally either via an automation (eg every day at xx:ii), or eg whenever I am within ble of my espruino hub.

    Like when I walk in my front door and pass my rasppi, or every night.

    I currently have a py automation file that can go get my garmin gpx tracks and store them on my DB, and I'd like to do something similar with my bangle2 recorder gpx files.

    Not quite sure where to start.
    Thanks

    Thanks

Actions