-
I have some dumb questions with regards to github that I am hoping someone can straighten me out on.
PROBLEM #1
When I started developing on Bangle, I understood basic git commands but could
not find out how to update a fork of the master Bangle repo through the github website GUI. I looked in the docs but could not find out how once you had created a fork you could update it through the github website.Everytime I made changes I had to create a new branch on github add my change so that I had a repo that was up to date and do a pull request. After a while I realised I could work as follows.
I cloned the BangleApps (call it upstream) repo to my github user account (my fork)
I then cloned my fork onto my ChromeBook linux setup using
git clone https://github.com/hughbarney/BangleApps.git
. This is now my local repository.I update the Chromebook/BangleApps (local) using
git fetch upstream
where upstream
is setup using
git remote add upstream https://github.com/espruino/BangleApps.git
I merge in any changes using
git merge upstream/master
I make my changes and get my app working
when done I push it to my github account (the fork) usinggit psh origin master
This allows me to test the app will install through my own loader.
I then manually request a pull request through the github website to BangleAppNow all this is because I could not figure out what the github website GUI actions are to update a fork after ot has got out of date.
So there must be a better way. Can anyone show me where the 'Update' button is on a github repo.
If you could speak in screenshots and I could not find a useful decription of how this is done.PROBLEM 2
After doing a pull request - there seems to be a review process and someone else
changes your pull request (Change#1) and and then asks you to make some more changes.
Where does the changed code for (change #1) now live. Is it in my forked repository ? -
See this question in the wiki:
https://github.com/espruino/BangleApps/wikiThere is also a power monitoring app that will show you how much power is being used and writes to a log. But the answer in the wiki covers most of the big power drainers.
I used to only get 3 days as I was constantly flashing new versions of code onto the watch. But I have eased off developing so much and most often get 2 weeks. This drops to about 1 week to 10 days if I start using the heart rate monitor with a setting of 3 mins. I definitely would say set heart rate to every 10 minutes or off. If you use a clock that supports clock_info you can always tap the heart rate clock_info to get a refresh.
I think I get about 20+ days on my 2nd Bangle2 which has HRM off and just stays mostly in a drawer.
-
Success ! Thanks everyone for your help.
// image converter https://www.espruino.com/Image+Converter ; settings to get a fillable image // 1 bit bw, transparency? Y, transparent bg, white heart (must be white for color fill) g.drawImage(atob("FBSBAAAAAAAAAAAB+fg//8f//n//5//+f//n//5//+P//D//wf/4D/8Af+AB+AAPAABgAAAA"), 1+this.x, 1+this.y);
-
Thanks @Gordon - So just to check.
Select '1 bit Black/White' for 1 bpp
Make sure image is white (select inverted if black)
Make sure background is transparent when you download the image.What do you select for 'transparency ? setting - Tick or Not Tick ?
What do you select for 'transparent to colour' setting - Tick or Not Tick ? -
Thanks for the reply. I will try your example. I'm not sure compression should make any difference.
I will try 1 bpp. Though I dont understand how 1bpp could accept different 3 bit colours.
(full white is #FFF full black is #000)
Yes I set to Green and Blue to ensure I could see the other colours whilst switching themes and check the code is working. This is temporary.
It is definitely possible to do this as the existing code / image works with different colours. Also widgps also does this, using grey, orange, green. I'm just trying to change the image to a fuller one that is easier to see.
i struggle sometimes with the transparency stuff as well with the convertor
Somtimes it seems to work without issue and other times it just seems to be a major session of trial and error.
-
I'm trying to upgrade widhrt with a better icon.
I'm using the imageconverter at:
https://espruino.github.io/EspruinoWebTools/examples/imageconverter.htmlI wanted to use a full RED heart when the HRM is on, and then White or Black when Off depending on background. The existing image works fine except it uses grey when off and the image is quite delicate and hard to see, my original choice - not so good.
So I have downloaded a new image of a full red heart on a transparent background.
https://icons8.com/icons/set/heartI am just struggling to get the color fill to work. No matter what options I seem to choose from the
imageconverter I either just get a RED heart or a white heart on a black background.File below
and code below.
What am I doing wrong ?(function(){ if (!Bangle.isHRMOn) return; // old firmware var hp = Bangle.setHRMPower; Bangle.setHRMPower = () => { hp.apply(Bangle, arguments); WIDGETS.widhrt.draw(); }; WIDGETS.widhrt={area:"tr",width:24,draw:function() { g.reset(); if (Bangle.isHRMOn()) { g.setColor('#f00'); // on = red } else { g.setColor(g.theme.dark ? '#0f0' : '#00f'); // off } // 3 bit rgb, no options, just red heart on black all the time g.drawImage(atob("FBQDAAAAAAAAAAAAAAAAAAAAAAEgAAEgAAAkkkgEkkkAEkkkkkkkkgEkkkkkkkkgEkkkkkkkkgEkkkkkkkkgEkkkkkkkkgEkkkkkkkkgAkkkkkkkkAAEkkkkkkgAAAkkkkkkAAAAEkkkkgAAAAAkkkkAAAAAAEkkgAAAAAAAkkAAAAAAAAEgAAAAAAAAAAAAAAAAAAAAAAAA"), 1+this.x, 1+this.y); // 3 bit rgb, transparency:Y, background follows theme, but wont fill with color //g.drawImage(atob("FBSDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABJJAAJJAAAJJJIBJJJAAJJJJJJJJABJJJJJJJJIBJJJJJJJJIAJJJJJJJJAAJJJJJJJJAABJJJJJJIAAAJJJJJJAAAABJJJJIAAAAAJJJJAAAAAABJJIAAAAAAAJJAAAAAAAABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="), 1+this.x, 1+this.y); // 3 bit rgb, transparency:Y, transpareny to color Y, just shows white all the time //g.drawImage(atob("FBSDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB//wAP/wAAP//+B///wAP///////wB////////+B////////+AP///////wAP///////wAB//////+AAAP/////wAAAB////+AAAAAP///wAAAAAB//+AAAAAAAP/wAAAAAAAB+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="), 1+this.x, 1+this.y); // 3 bit rgb, transpareny to color Y, black background, white heart //g.drawImage(atob("FBQDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH//AA//AAA///4H///AA////////AH////////4H////////4A////////AA////////AAH//////4AAA//////AAAAH////4AAAAA////AAAAAAH//4AAAAAAA//AAAAAAAAH4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"), 1+this.x, 1+this.y); }}; })();
-
@bkumanchik - would you be able do support for the dark theme in Invader. It only seems to suport light them.
-
-
-
-
-
-
-
-
-
-
-
-
-
BTW you dont need to use gadgetbridge to install apps. You can go straight to the AppLoader page through the standard browser on the phone.
There is a debug setting in the Settings App. Utils / Debug / Log should capture something in log.txt. You would need to look at it through the IDE (after disconnecting with GadgetBridge).
I have also experienced randon clock freezes. I have seen them mostly on my Pastel and Lato clocks. Both use the Lato font. Its not frequent enough to narrow down. I saw it twice a couple of weeks back, but not now.
If you are using the health app check what you have set the heart rate monitor to. If it is on always I would expect you battery to run down in a few days.
-
-
-
Unless a flatten the battery reset fixes it, it looks like a broken accelerometer.
In order for the step counter to work it uses SQRT(X^2 + Y^2 + Z^2).Step counters that only one axis tend to stop working in certain positions - eg one of the Garmin (£500) smartwatch wont count steps if you walk with sticks.
-
I have noticed that pull requests now get reviewed by various people.
I think this is a good thing - hopefully it will lead to higher quality code, better consistancy.
Who are the reviewers, can anyone review ?
Did I miss some announcements ?
Do we have a check list of things ? For example I feel screenshots should be mandatory. I hate having to install an app in order to see what it looks like, only to decide I dont like it and delete it, when I could have decided that from a screenshot. For example the
Orloj
clock looked intresting, but I could not understand what it would be like from the description. The screenshot below would have told me what I needed to know at a glance.