Avatar for devsnd


Member since May 2023 • Last active Jul 2024
  • 0 conversations

Most recent activity

  • in Bangle.js
    Avatar for devsnd

    Just wanted to report in: I've tried setuichange for the past week and everything worked nicely for me, the watch feels much snappier. I think this change is awesome and the impact is huge!

    @Gordon I'll try to find the build you once made that would install apps on the internal storage instead of the one connected through SPI. I wonder if that shaves of another few milliseconds from the startup time of the apps.

  • in Bangle.js
    Avatar for devsnd

    I sanded it down a bit and it looks much nicer now. I got to keep sanding, bit I only have 120 grit paper right now. it still has the look as if Tony stark made this in a cave... But also maybe that is exactly how a banglejs2 is supposed to look

  • in Bangle.js
    Avatar for devsnd

    I finally received the 3d printed metal part and it fits perfectly, a slight press fit. With a drop of glue it should hold on fine for day to day usage.

    If the wrist band holders would also be made of metal and part of the cover, there would be no need at all for any glue, since the watch would stay sandwiched in place between wrist and watch-cover.

    Anyway, I'm trying to figure out if I leave the finish as is, or if I should try to brush the metal using a Dremel bit on my small CNC... I don't even know if there is any pretty finishing to be achieved with the printed metal parts. Please tell me if anyone has any ideas

  • in Bangle.js
    Avatar for devsnd

    My attempt at having them print a connected part to try multiple sizes failes, as connected parts are not allowed for metal prints. Anyway, I now ordered a single one: I remeasured my actual watch with a caliper and added 0.3mm on all sides. Fingers crossed it fits!

    @halemmerich I really like your idea of adding watchband holders to the metal part. This would require people to remove the original holders, but could also be a much cleaner design. If this fits nicely I'll add the holders to the CAD model and provide it for everybody to print/order themselves. It could also be a very simple and cheap way to repair broken BJS2s

  • in Bangle.js
    Avatar for devsnd

    I converted the Step file of the banglejs housing (thanks @Gordon) to an obj that which I imported to fusion 360 to create the metal cover rim that fits around the BJS2.

    I just finished printing the plastic sample and I'm quite happy with the result, even though the white certainly ruins the look, but that's just the filament I currently have loaded into my 3d printer... So I also did a render in fusion 360 so I could have a better idea what the metal part would look like.

    Since @halemmerich mentioned that the part tolerances are good but might be a tiny bit off, I'll just order multiple pieces at 95%, 97%, 100%, 102% and 105% scale and check which works best. (For cost reduction, I'll try to order a single item that I have to saw apart, let's see if that works)

  • in Bangle.js
    Avatar for devsnd

    Thanks for the hint, @Gordon!

    I'm not entirely sure (and I can't really tell from the pictures), but to me it looks like the silicone does not really extend above the glass that much and that's what I'd like to better protect.

    If anyone has a better picture with the silicone cover on from the side, I'd be much obliged!

  • in Bangle.js
    Avatar for devsnd

    Wow, this is really cool!

    My son just recently accidentally banged up my bangle on the playground, so I thought it would be nice to have something to ruggedize the watch before it's too late.

    Since I don't have the same dedication as halemmerich to transplant the whole watch, I though about creating an outer shell for the current watch housing that reduces risk of the screen getting deep scratches or cracks.

    @halemmerich, from your experience, do you think that a shell with 1mm thickness around the outer borders of the watch would work? Something that could then be attached to the original housing using some glue, maybe?

    (That reminds me, I should also share some of my original designs for a charging pedestal that I 3d printed for myself!)

  • in Bangle.js
    Avatar for devsnd

    In the hopes that my voice for a next bangle shall be heard, I also have a wish list for what would make it an even greater device for version 3.

    Sorry for the wall of text, you can read the conclusion for a TL;DR:

    ** Battery **

    • The battery life of the device is the killer feature for me. If I had to charge the watch every night, I would probably forget to do it every other night (which basically means that I would stop using it). For me the battery lasts around 7 days, which is great. It would be great if there was a way to improve power-monitoring (maybe estimate power-draw of the apps? I had a few watch faces that ate my battery for breakfast).

    ** Speed **
    IDK what the bottleneck for the responsiveness of the watch is, but it would be awesome if it could be reduced. If there was a way to have a clock the CPU or memory faster just for launching apps, that would be awesome. The performance would be perfect if you could achieve full-screen smooth scrolling using the touch screen. If it was possible to have different power-states during active use and during passive use, the overall power consumption should not be much higher I guess, since race-to-idle can also be a way to save power.

    ** Screen **

    • Keep the transflective screen. It's awesome! I wish there were mainstream phones and laptops with these screens out there!
    • Keep the low physical profile: I've seen smartwatches as thick as a pack of cigarettes and as chunky as a tiny phone. I've got rather thin arms, so I'd never wear such a large device. The current size is perfect.
    • Keep the Rectangular Touch Screen. The resolution is also pretty good. A little higher resolution would be welcome, but I see how this needs to stay in balance with the CPU power / power consumption. I'd love to have a few more colors without dithering though. More colors for images + sub-pixel anti-aliased fonts for text would already do a lot for better legibility.
    • If I could wish for anything in this regard, it would be great if the screen would fill a larger portion of the watch front. A little smaller bezels would be nice, but I also like that it's pretty rugged, so leaving some margin is also good.
    • Arguably the resolution should stay the same so that most hard-coded coordinates in apps keep working on a new watch

    ** Environment Sensors and Water resistance **

    • Lose the barometer: Having a hole in the case just for a barometer is a pity. It's a big compromise for water resistance for a feature that's IMHO less important than water resistance. The only way I think compromising the water resistance would make sense if the device also had a microphone, which could be a great feature as well. (Given the little computing power for sound processing and how much of the community rather develops for the watch instead of the companion app - such as gadgetbridge - I think that water resistance has still higher priority than a microphone). The one thing I would sacrifice water resistance for would be an SD-card slot + mp3 decoder + Bluetooth-audio to use it as a Walkman on the go, but IDK if that's really such a good idea or if I just think it's cool to have.

    Anyway, it would be awesome to keep it on when swimming or when taking a shower. Not necessarily because I need to check my messages in the shower, but rather because I'm often afraid to forget to remove it before.

    ** Buttons **
    More buttons or a wheel like the apple watch would be nice. Even just a second button could make a big difference, but 3 would be perfect I guess. Having a touch screen still is great for building diverse UIs and input schemas for individual apps, but I I'd love to have some standard interactions - maybe similar to an android phone - mapped to the buttons.

    ** Connectivity **
    IDK the details, but I think bluetooth has gotten much more stable over time (with firmware updates) and that's great. But still, sometimes I have disconnects for no reason. For all apps that do some background task periodically that require a connection, this is somewhat annoying. If there was a chance to have better bluetooth (chip/antenna/whatever), this would be pretty high on my wishlist. Maybe it's a phone thing, in which case I retract my statement ;)

    Also it would be great if the watch had Wifi. I wouldn't want to use it all the time as that would kill the battery super quick, but I have Wifi available all the time when I am indoors and it would be great if the watch could then work more autonomously, so I could leave my phone at home. My bet would be that a bunch of people would build low-bandwidth server applications that work well with the watch and that would be awesome. (this could also nicely tie into the other espruino powered devices)

    ** Contactless Payment **
    Apparently the nRF52840 already has NFC functionality that could be used to perform contact-less payment operations. IDK if this is a hardware/software/legal limitation, but if I could pay using my banglejs, I could leave my phone home a lot more often.

    ** Health Sensors **
    I never use the heart rate sensor as I found it to be too unreliable. I would love to use when doing sports. Same for sleep tracking. I found the sleep detection to be lacking, even though this was one of the main drivers of me buying the watch in the first place! (instead of returning the device, I got hooked on the eco-system ;). Maybe I should give it another go, but the last times I tried heart-rate sensor and sleep tracking I was rather disappointed.

    It would be great to have an hardware upgrade here for more reliable sensors. If I could wish for anything, then also a blood oxygen sensor would be awesome.

    ** Conclusion **
    The BJS2 is already great as is. It strikes a great balance for many features. There's a few things I would love to see improved, but at the same time I see how improving some features could be at the cost of others (also considering small form as factor a feature!). So generally I rather like to see many small improvements on the current hardware, especially reliability and more physical inputs, than a large jump in a different direction, because many things are already in a great balance.

  • in Bangle.js
    Avatar for devsnd

    You should be able to pass any kind of authorization in the headers of the options when making the HTTP call.

    You can for example check the sources of the android integration here:

    So basically you should be able to make a POST call with authorization headers like this:

            method: 'POST',
            headers: {Authorization: 'Bearer <your JWT>'}

    (maybe you typed header instead of headers or some other typo?)

  • in Bangle.js
    Avatar for devsnd

    I've also played around with multiple ways developing and my highest priority in developing is using familiar tools with quick iteration times. Since Bluetooth pairing is very finicky for me (i.e. switching from phone to pc and back), I always either use the emulator or connect through the web IDE remotely in gadget bridge.

    I use JetBrains to develop and have a script that takes the app.js and copy pasted it into the web IDE. From there I upload it automatically to the emulator or the watch over the remote IDE connection.


    • I can use all my tools and get to run the code in the emulator quickly.
    • I can run the same code on the watch easily using remote IDE feature


    • The copy pasting script is sometimes flaky (maybe there's a better more reliable way to inject the code?)
    • my app has to reside in a single file for this to work properly
    • running code on the watch over remote IDE only works online I guess?

    (I am a bit shocked that the infamous and prolific HalEmmerich does not have a more advanced setup. ;) thanks for all the small improvements and apps!)