-
-
I had the same problem, deleting and re-flashing the bootloader (sounds dangerous) worked for me.
After doing it, I found the following in https://www.espruino.com/Bangle.js+Development :RAM - you should normally try and use this - it writes nothing
permanently to Bangle.js so is quick and safe to develop with.Flash/Flash (always) - DO NOT USE THIS ON BANGLE.JS because you will
overwrite the existing Bangle.js bootloader with your own app (if you
do, you can re-install the bootloader app using
https://banglejs.com/apps). -
I'm very interested in GPS topics (see my comments in http://forum.espruino.com/conversations/370398/ ) and wondering what's meant with "CASIC"?
Can it be used to implement Assisted GPS?
Forum and internet searches doesn't provide results for "CASIC". -
Nice functionaliy, may be you are willing to extend it a little bit:
I'm struggeling with the Moon Phase Widget ( https://github.com/espruino/BangleApps/tree/master/apps/widmp ) to add "the dark side of the moon". Currently it is drawn with a filled circle overlaid by a rectangle to clear it half.
I'm thinking about using your code to draw a half filled circle, for this it would be nice to add a parameter to disable the rounding of one or several edge(s).
I know that there are easier ways to draw a half filled circle but with a small modification this function (when hopefully added to the graphics library) will be "more universal".My proposal is:
function drawRoundedRect (x1,y1, x2,y2, r, edgeMask)
where
edgeMask
is a bit coded parameter to disable the rounding of an edge (1,2,4,8 - in clockwise order):edgeMask = (e.g.) 0x00 -> (_) 0x06 -> (_] 0x09 -> [_) 0x0F -> [_]
On the other way round, maybe
r
androundMask
can be added to the generic drawRect() function (with roundMask to enable rounded edges) but I don't know how Javascript reacts when function parameters are missing. -
For everyone with GPS issues who is able to download Apps via IDE, I did a quick & dirty hack:
There is a very nice Acceleration Logger App ( https://github.com/espruino/BangleApps/tree/master/apps/accellog ) which I modified for logging NMEA data.
As I hacked it with a minimum effort, all explanations how to use the Acceleration Logger App are still valid - it just will not log acceleration any more but raw NMEA telegrams. Also the files that contain NMEA data are still named accellog.?.csv .To use my attached code, do the following steps:
- download the "Acceleration Logger" App from https://banglejs.com/apps
- start the Acceleration Logger App, stop it and download the data to get used to it.
- load GPS-NMEA-Logger.js into the Espruino Web IDE https://www.espruino.com/ide or the IDE you're using and download it to RAM.
- use it as learned above.
The downloaded accellog.?.csv should contain something like this:
$GPTXT,01,01,02,MA=CASIC*27 $GPTXT,01,01,02,SW=URANUS5,V5.1.0.0*1F $GNGGA,185459.750,,,,,0,00,25.5,,,,,,*7C $GPGSV,2,1,06,02,30,050,,12,27,100,,18,13,178,,25,57,100,,0*62 $GPGSV,2,2,06,26,24,289,,32,07,230,,0*65 $BDGSV,1,1,00,0*74 $GNGGA,185500.750,,,,,0,00,25.5,,,,,,*71 $GPGSV,2,1,06,02,30,050,,12,27,100,,18,13,178,,25,57,100,,0*62 $GPGSV,2,2,06,26,24,289,,32,07,230,,0*65 $BDGSV,1,1,00,0*74 $GNGGA,185501.750,,,,,0,00,25.5,,,,,,*70 $GPGSV,2,1,06,02,30,050,,12,27,100,,18,13,178,,25,57,100,,0*62 $GPGSV,2,2,06,26,24,289,,32,07,230,,0*65
If anyone has severy problems with GPS reception, post the .csv here (please not more than ~80 lines) and I will have a look at it.
- download the "Acceleration Logger" App from https://banglejs.com/apps
-
I've created a pull request https://github.com/espruino/BangleApps/pull/1167 for the "GPS Info" App that adds the number of satellites in view. On my Bangle 2 I only get a fix with at least 10 satellites in view, which I've never seen indoor (around 5 in view). If a fix "from outside" is available, it continuous working indoor.
Probably the parameters (e.g. the position quality criteria PDOP) for acquiring the first fix are set too high inside the GPS receiver. -
I've found a GPS issue on Bangle.js 2, many "unusual" NMEA messages - not starting with $GP are sent by the GPS receiver.
E.g.:$BDGSV,1,1,00,0*74 $GNGGA,105700.296,,,,,0,00,25.5,,,,,,*74
See also
"App crash on Bangle.js 2 with GPS NMEA telegram GNGGA instead of GPGGA (contains UTC time) "
on github:
https://github.com/espruino/BangleApps/issues/1155
Thank you for the spec!
Just an idea: I've seen receivers that communicate with different baud rates on different channels. Do you have tried to communicate with all "well known" baud rates?