Avatar for jeffmer

jeffmer

Member since Apr 2020 • Last active Jan 2022
  • 8 conversations
  • 105 comments

Most recent activity

  • in Bangle.js
    Avatar for jeffmer

    The problem of removing the static accelerometer magnitude would seem to be the same as DC removal in Digital Signal Processing. The problem with a simple moving average is that it may obscure the signal at some orientations if as seems likely the magnitude at rest varies due to rotation. There is a great article here on a low cost very simple digital filter to deal with this - it even lists a 3-line Javascript implementation.

  • in Bangle.js
    Avatar for jeffmer

    This does seem to be the problem I referred to earlier. I did a quick spreadsheet to compute (magnitude-8192)/32 which the step count algorithm does initially. Most values exceed 14 the RAW_THRESHOLD ( the average is 15.56). The step count algorithm assumes that at rest the magnitude will be 1g = 8192 which it will not be in all orientations for all accelerometers unless they are calibrated.

    • 22 comments
    • 688 views
  • in Bangle.js
    Avatar for jeffmer

    The blink is because the Bangle 1 screen is not buffered so you are seeing the delay between the second hand being deleted and then redrawn. It is noticeable because in this face, the second hands overlap the numbers so they have to be redrawn on every tick. There is now a new version (in the same place) which reduces the delay by only redrawing the 4 numbers that are actually overlapped by the second hand. A better approach would be to be to use an image buffer but with 4 colours this would need about 200*200*2/8 = 10K bytes which should fit but would take most of free memory.

  • in Bangle.js
    Avatar for jeffmer

    Thanks for the kind words. There is a version of the Braun face for the original Bangle:

    The nice thing about the brAun logo is that the A is the middle letter and can be centred in the watch. bAngle would look asymmetric.

    BTW: The Apple Notification app is now obsolete as Gordon has provided an IOS Integration app. It did work well with a fimware hack but was flaky without it:(
    @Gordon - should I do a PR to remove the ANCS app?

  • in Bangle.js
    Avatar for jeffmer

    Oops - accidentally deleted the image in my previous post - now restored. I have added the Braun face to multiclock which you can load from here - in advance of submission to the offical BangleApps repository.

  • in Bangle.js
    Avatar for jeffmer

    I had a go at a Braun face this afternoon and the result is below. The problem with using grey is that it can only be achieved by dithering on the Bangle2 and as a result looks terrible on narrow marks -so the marks are white.

    You can see the effect of dithering on the orange second hand which is a made up of red and green pixels - I think it looks better in solid red.

  • in Bangle.js
    Avatar for jeffmer

    Hi, I had something similar on a different platform. In that orientation, when connected to the WebIDE try seeing what values Bangle.getAccel() produces. If you have the same problem I had, the magnitude field will not be 1g.

  • in Bangle.js
    Avatar for jeffmer

    The time to draw the dial on a Bangle2 (with radius 88 rather that 120) with the code above took 376ms. The time using a version of drawRotRect that does not use transformVertices was 490ms - or 114ms slower. Timed using:

     var tt = Date.now(); 
    dial(); 
    console.log("Time: "+Math.ceil(Date.now()-tt)+"ms");
    
Actions