-
@Andreas_Rozek - this is my function, implementing an Andres circle. Heavily based on example implementations on French Wikipedia .
I think it can probably be optimised more, and ultimately I also want to draw this a bit at a time. My best approach to that so far is having an array per octant and pushing/unshifting on each iteration for each circle so that I can step through later, but I think I can improve on that.
I spent a lot of thinking about allocating a fixed length array for the coordinates, but I've come to the conclusion that it isn't possible to know the length a priori (at least, I think that is the case).
const drawThickRing = function (x_centre, y_centre, r, thickness) { // Uses the Andres circle drawing algorithm to draw a ring // with outer radius r and a specified thickness. var x, y, d; for (let t = 0; t < thickness; t++) { r--; x = 0; y = r; d = r - 1; while (y >= x) { g.setPixel(x_centre + x, y_centre - y); g.setPixel(x_centre + y, y_centre - x); g.setPixel(x_centre + y, y_centre + x); g.setPixel(x_centre - x, y_centre + y); g.setPixel(x_centre + x, y_centre + y); g.setPixel(x_centre - y, y_centre + x); g.setPixel(x_centre - y, y_centre - x); g.setPixel(x_centre - x, y_centre - y); if (d >= 2 * x) { d -= 2 * x + 1; x++; } else if (d < 2 * (r - y)) { d += 2 * y - 1; y--; } else { d += 2 * (y - x - 1); y--; x++; } } } }; drawThickRing(85, 85, 70, 10);
-
Not a pebble user (or even a bangle user yet) but have you upgraded the firmware since arrival? If you look through the forum you'll find a long thread about the step counter, which should be counting a lot more accurately now than in the original firmware. I think you'd have @HughB to thank, hopefully not misremembering that.
-
-
-
Related to http://forum.espruino.com/conversations/371281/ perhaps?
-
-
-
I know that Gordon plans to make his own phone app (stretch goal)
My understanding is the app will still be based on GadgedBridge (forked from it). I would imagine any improvements to the App other than what is required for internet access will get ported over to GadgetBridge sooner or later?
The other OS nicoboss ? You're thinking about Ubuntu Touch, right :) ?
Oh, I assumed he was talking about Mobian or PostmarketOS :/
Just for the record, I'll check if there's any functionnality in the very high end watches that could be of some interest for anyone.
Please do! One of the other things on my neverending list of projects is digging into the HRM on the Bangle to see what advanced stats we might be able to get. Especially combined with the inbuilt ML capabilities I think quite a lot is possible even beyond what the component itself advertises.
-
Thanks @Gordon - I didn't know I could use the Recorder app like that.
I looked at BangleRun before deciding to write something myself. It didn't cover my main needs. It think it serves as a nice reference though. -
-
About the different HR zones, once you start to use it, it makes more sense than BPM. Also, plenty of videos about running refer to these HR zones. Probably all running watches nowadays include it, so it's definitively something people may look for.
Thanks, I haven't used any running watch in the past so I didn't realise this. I've had conversations about HR Zones in the past and it meant different things to different people I spoke to, is the meaning standardised across the watches you've used?
And in the list of things that could be useful, I use an external HR, the polar OH1+ (second hand 50 euros, as precise as a chest strap HRM) which pairs flawlessly with the bangle.js. Still, when I finished to run, I have to take it off and delete the app. Adding a setting section for HRM with ON/OFF/EXTERNAL would be perfect. When "external" is toggled, a short message with a buzz confirming the pairing with it would also finish to polish the whole thing.
I think this one should be handled elsewhere rather than in a single app. Deleting the app for external HRM obviously isn't ideal for anyone when they take it off.
-
-
@diego I know the problem you mean! I'd also like the Bangle to buzz between intervals (and at target reached) so I'm not clock watching too much.
@Poolitzer originally I hadn't thought about it because I care more about the stats than the actual coordinates, but from @Fteacher's description it seems like people would use it so I'll put it in. But I won't be thinking much about that until I am using a real device.
-
-
Hi @Fteacher,
I have been working a little on an app for running that will do some of the things you ask for. The design is different visually, but my aim is similar in terms of functionality. HR Zones is on my list of wishes with a question mark after it, if it is something other people are interested in to I will remove the question mark.
What you haven't mentioned, but is important to me, is being able to choose the target for a run. I have planned 4 options: Free run, Time run (aiming for, e.g. 30 minutes regardless of distance), Distance run (aiming for, e.g., 5k regardless of time), and intervals (e.g. 3 sets of 5 min sprint, 2 min jog). The design I am working on uses a ring filled depending on progress towards the time/distance goal.
-
-
-
-
-
-
-
That's the sort of thing I was expecting based on your previous message. @Gordon or one of the other hardware experts might be able to have a guess based on that what the cause is. My idea as to the solution, but someone else might have a better idea, would be writing the max and min voltage to storage and reading the value on boot. Max is easy, whereas Min would probably take a few cycles to get accurate.
-
I am a TypeScript amateur and don't use VSCode, but this might be of interest to you: https://github.com/espruino/BangleApps/issues/998
-
I think this is a different issue to the above linked one. In the linked issue, a missing connection meant the voltage readings were small negative numbers. Your voltages are higher than usual. If the entire range of voltages on your device is higher than 0.3144 you will always get 100% all the time.
Were the readings above near full charge or near empty? Getting readings from both ends might be interesting, but I am not a hardware guy and have no idea what if any hardware difference your device has. There have been at least 2 other threads about different voltages. If there is a lot of variation then perhaps determining the voltage range on a per device basis is necessary.
Ah good, I was interpreting the ! correctly.
This is a nice trick. Is there a good way to benchmark the difference things like this make?