Feedback after first day owning bangle.js

Posted on
  • Hello,

    I've just received my bangle.js and here are some various feedbacks after one day (do not take it as negative):

    • after starting the watch it was surprising there was no default pedometer / heart rate monitor widget / app installed
    • at startup watch says it updating date and time using gps but it doesn't work
    • there is no pairing verification : everybody can pair with the watch
    • i have been confused between apps / widget / clock differences (now it's ok)
    • apps have some dependencies but it is not very obvious (ex: stepometer clock)
    • gadgetbridge is working but I can't see steps in activity only HRM is ok after activating it
    • there isn't a standard way to go back to clock except long press on BTN3
    • lumonisity of the screen outside is very low but i can read the clock
    • having full screen notifications is easier to read. smiley are not supported in the default font "??"

    I'm really happy of this new toy and I hope I'll be abble to help :)
    Valvin

  • Hi! Thanks for this - it's always good to hear some unbiased first impressions, and glad you're enjoying it!

    it was surprising there was no default pedometer / heart rate monitor widget / app installed

    Yes, maybe that should change. To be honest it's been about trying to keep the watch as basic and simple as possible out of the box.

    at startup watch says it updating date and time using gps but it doesn't work

    This is actually mentioned in http://www.espruino.com/Troubleshooting+­Bangle.js#my-bangle-shows-searching-for-­gps-time-for-a-second-after-a-hard-reboo­t-s - but it's expected.

    A firmware update soon should actually fix that so the watch remembers the time even through reboots.

    there is no pairing verification : everybody can pair with the watch

    Yes - you can turn some things on to help with that in settings, but while it's insecure by default, anything that makes it harder for folks to connect out the box turns into a massive support headache for us :)

    i have been confused between apps / widget / clock differences (now it's ok)

    Interesting - thanks! Was there anywhere you think we should put an explanation to help out?

    apps have some dependencies but it is not very obvious (ex: stepometer clock)

    Ahh - thanks! Apps can actually request dependencies are installed but most don't do that :)

    gadgetbridge is working but I can't see steps in activity only HRM is ok after activating it

    Yes, that's expected - but maybe it should be documented better!

    there isn't a standard way to go back to clock except long press on BTN3

    What sort of thing did you expect? The issue is generally getting all apps to implement the same way of going back - hence why the long-press is built into the OS.

    lumonisity of the screen outside is very low but i can read the clock

    Yes, it's a hard one. I think many of the apps could use larger fonts that'd make them easier to read.

    having full screen notifications is easier to read. smiley are not supported in the default font "??"

    You mean Emoji? I'm afraid there's not enough space in the watch to store them! We had thought it'd be possible to convert them (and unsupported fonts) to images in the phone, and then upload those - but that's quite a big undertaking!

  • Now after few days of usage I have more feedbacks :)

    it was surprising there was no default pedometer / heart rate monitor widget / app installed

    Yes, maybe that should change. To be honest it's been about trying to
    keep the watch as basic and simple as possible out of the box.

    I think it could be nice to have official pedometer / HRM in order to have a reference and a ready to use watch even if bangle.js is more for hacking purpose. Maybe some featured apps in the store?

    i have been confused between apps / widget / clock differences (now it's ok)

    Interesting - thanks! Was there anywhere you think we should put an
    explanation to help out?

    And this is there I was lost at the begining to find which apps / widget to use. I think I have been confused when install HRM widget which displayed only a red heath and no other information. Then I began to understand it was only a widget which running background and registered records in a file.

    there isn't a standard way to go back to clock except long press on BTN3

    What sort of thing did you expect? The issue is generally getting all
    apps to implement the same way of going back - hence why the
    long-press is built into the OS.

    I think I misunderstood the usage of BTN3 long press because I read it was for reloading the watch. But after few days of usage it looks more "go back to clock".

    lumonisity of the screen outside is very low but i can read the clock

    Yes, it's a hard one. I think many of the apps could use larger fonts that'd make them easier to read.

    I think if there is in the future a bangleJS 2 it should be a priority with the memory.

    having full screen notifications is easier to read. smiley are not supported in the default font "??"
    You mean Emoji? I'm afraid there's not enough space in the watch to store them! We had thought it'd be possible to convert them (and unsupported fonts) to images in the phone, and then upload those - but that's quite a big undertaking!

    yes exactly. i discover the memory limit using openstreetmap and gpsrecorder. maybe a simple workaround could be hardcoded default emojis we use frequently and can be translated in ascii ( :-) , :-/, :-( , :'( ...)

    Another feedback:

    • as mentioned I was unable to preview tracks in gpsrecorder because of OOM. so I deleted almost everything to make it runs. it requires 40% free memory to compute some basic information. by the way it works very well :)

    • I'm a bit frustrating not finding good parameters with Active Pedometer. I had a MiBand2 before and never reached 10k steps a day. Now I exploded this every day. I do steps even while typing this message. By the way when testing steps counting in reality it sound good. More false positive during inactivity.

    • Almost same with HRM. gadget bridge or the HRM apps gets too many low quality records. I think both apps tries to get an instant value even if the accuracy is not correct. My gadget bridge activity was ridiculous. I goes from 50 to 200 in few seconds.

    • I did my first app using the tutorial and creates a really basic stopwatch and then see there was really better already created. IDE works really well and helps understanding how it works.

    • Concerning the banglejs.com/apps all apps are on a mono repository. But I'm wondering if it is the good way to report issue to a developer? For example I'd like giving feedback to gadgetbridge and why not trying to make PR but I'm not sure it is the right place. I don't know if there are using another repository or who mentions? Have you planned using git submodules to register from another repository? Or use CODEOWNERS file github CODEOWNERS?

    So my next tries will be getting a reliable steps number and HRM using existing apps or trying to develop it.

  • Thanks!

    Widgets / I think I misunderstood the usage of BTN3

    Do you remember where you first went for information on Bangle.js? I know there's the welcome app that everyone gets...

    It's possible I could change the wording there and/or add another screen about apps/widgets?

    Screen/if there is in the future a bangleJS 2 it should be a priority with the memory.

    Yes - I'm definitely on that :) It's a compromise though - sunlight readable screens aren't as vivid when indoors, but IMO sunlight readable fits better with the whole long battery life/low power ethos of Espruino.

    unable to preview tracks in gpsrecorder because of OOM

    That's an interesting one. Did you have OpenStreetMap as well? I'm just wondering what could cause the memory issues as it shouldn't be too memory intensive.

    pedometer + HRM

    You might have seen another post, but fixing the original pedometer is high on my list - and then hopefully we can modify active pedometer to use the same algorithm, which will save memory and shouldn't need all those adjustments.

    HRM is the same - we have a university currently using a whole bunch of Bangles for health monitoring and they were saying they might have some code contributions to help improve matters - so hopefully soon! The real issue is there's a 'confidence' value, and right now that shows a high confidence even when there's too much noise for a sensible signal.

    But I'm wondering if it is the good way to report issue to a developer?

    https://github.com/espruino/BangleApps is definitely the right place - if you click on the github icon next to an app on https://banglejs.com/apps/ you'll go right to the app. If you click on one of the .js files GitHub should show you who the authors are - you can then @mention them in any GitHub issues. Sometimes contact info is also in the app's README at the bottom.

    The whole submodule/multiple repository thing is difficult. It's been suggested a few times, but honestly, the majority of contributors are doing stuff for fun and many aren't so well versed in Git/GitHub. The contribution process needs to be simple, but also folks tend to play around a lot with their apps and they end up broken (the vast majority of users would contribute to master). If we used submodules then probably 25% of all the apps would constantly be broken, which doesn't make for a good experience for users!

    Obviously if someone wants to fork the app loader and make theirs a 'living' one with submodules (or just links) to other users apps, that's great and might be useful for some - but I think we need to keep a more static https://banglejs.com/apps for the majority of Bangle.js users :)

  • I forgot to mention about the smileys - yes, that's a really good point with :)/etc. I'm not sure what the state of unicode support is for other watches on Gadgetbridge, but it might be that a unicode->ascii converter in the app itself would be useful to everyone, not just Bangle.js (of course it might be that adding something that runs in Bangle.js itself rather than the phone is easier to do)

  • Do you remember where you first went for information on Bangle.js? (BTN3)

    I don't remember exactly to be honest. I watched the welcome app but I don't remember information it has provided. So I've reinstalled it and it provides important information I didn't get at the beginning. I was maybe too impatient to test my new toy. Maybe I think information goes too quick by default (i'm not english native) even if we can go back after using button.

    Did you have OpenStreetMap as well? I'm just wondering what could cause the memory issues as it shouldn't be too memory intensive.

    Yeap I had OSM at that moment but it was effective on all options with or without OSM tiles. And now I've just had similar issue with Heart Rate Recorder when I tryied to view my records. I'm starting the with 54% of RAM usage but navigating in the menu raise the memory usage and crashed when I validate the menu.

    pedometer + HRM

    That's great to hear about the university and the HRM.
    I'll enjoy to test these new feature when available.
    Here I've tried to tune ActivePedometer but I'm still doing many steps at my desk :)

    BangleApps

    Ok I see the idea. About submodules I disagree on that point:

    If we used submodules then probably 25% of all the apps would constantly be broken
    I think we need to keep a more static https://banglejs.com/apps for the majority of Bangle.js users

    Having submodules is mostly the same as what you actually have.If you add a submodule for gadgetbridge which targets the remote gitlab.com/gadgetbridge/bangleapp on main you add on which commit. That mean only you (or someone through a PR you merge) decide when updating the app in BangleApps. It is possible to have Apps directly in BangleApps repository and only few using submodules. That way people can make live their app in their own repository without impacting BangleApps user and using their own workflow. Main problem would be if one the remote developer rewrites history on its main branch. Submodules allow to be static as you are today.

    By the way I totally understand your wish to not implement it :)

    About smiley I'll try to test it on Full screen notification.

  • Thanks! I'll take a look at the graphing and will try and see why it needs so much memory.

    Did you have a lot of HRM and/or GPS recordings? Or it failed even with just a few in there?

  • I don't think app submodules are a good idea, they would complicate things a lot without adding much (if any) benefit: Instead of just forking the BangleApps repo, you first need to learn about submodules, then fork/create the app repo. And then fork the BangleApps repo anyway to update the submodule. (Not to mention the complications if an app maintainer seems inactive/deletes their repo, or for global changes which affect multiple apps)

    CODEOWNERS looks interesting though, it could be a neat way for people to opt-in to receive notifications about certain apps, and you could ask issue submitters to look at that file for people to @mention. It seems a bit duplicate with the per-app readme/blame, but it also means people who for some reason don't want to be bothered anymore could just be removed from the CODEOWNERS file.

  • just a few is enought. With HRM with small recording < 20 i get the error. But I think I'll reset my watch because many things gets easilly out of memory.

  • If you have submodules, developer doesn't need to fork the BangleApp repository but have only its own files in his repository. Then developer request to register its app and inform when there are changes. But ok I understand it doesn't match :)

    CODEOWNERS in addition to be a pointer when opening an issue is really interesting when there are contribution on an app. It should affect the PR to the codeowner automatically. At least it works like that on Gitlab.

  • An advantage of running it in Bangle.js would be that you could choose to actually draw some of them, e.g. if a notification only consists of a smiley. (or use it as icon if it's the first/last character)
    On the other hand: there are tons of them, I guess phone-side you might be able to run a more complete translation?

  • Apps have some dependencies but it is not very obvious (ex: stepometer clock)

    Hi. I wrote the Stepometer clock. I have other Apps with dependancies on a later version of the firmware and I usually state this upfront in the one line description in the App loader and also in the README file. Stepometer has no dependancies to my knowledge, what did you observe ?

    Ah - I think you mean you have to install one of the pedominter widgets. It will work with either. I will update the README when I get a chance.

    Remember we are all hobbyists with day jobs burning the midnight oil to write these apps :)

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

Feedback after first day owning bangle.js

Posted by Avatar for valvin @valvin

Actions