-
-
were you looking in the code for a gnss-aide.com address?
I've used a .dex to .java decompiler and did a full text search in the sources.
But now I think that SMA isn't so unexperienced to allow this:
If I were SMA and wanted to protect my credentials I would authenticate the watch via API, wait for the SMA server to download from gnss-aide.com and provide the AGPS data via API - I think, thats what you observed.
I'm not experienced enough to find the AGPS data in the protocol, so I give up.Maybe someone is able to solder 2 wires to the serial port of the GPS hardware in the Q3 watch and capture the AGPS data from there...
-
-
Sorry for the alarm, here's the "all-clear signal":
The "holes" were only visible with a strong magnifier, there's no possibility for me to photo it.
But with the help of my fingernail it turned out that the "holes" are bumps instead!
So again sorry for the false alarm.Maybe the Silver Conductive Paint can prevent the corrosion anyhow?
-
If you can find a URL...
I've tried to find one in the .apk and in .dex -> .jar -> .java but with no success.
As the communication with http://www.gnss-aide.com seems to be not encrypted, there should be a good chance to find the URL in the communication of the Android App with help of the Wireshark protocol analyzer.
For a working Android App, some original hardware (e.g. an original Q3) is needed - Gordon, if you can send me one I will try again to find a URL ;-) -
@Gordon :
In http://forum.espruino.com/conversations/371622/#comment16340448 you wrote "When the new set of Bangles comes in ..."
Is there a chance to verify my theory above? -
-
-
ANy chance you could do a meaurement of installing Apps through the Loader or the IDE ?
I tried it, but it can't be measured with my USB multimeter - an oscilloscope is needed:
The download is usually very fast (<2 seconds) and the backlight is instantly turning on with a big current draw. I suppose that the energy for downloading and flashing is minimal compared to the backlight's. -
The accelerometer's data sheet ( https://kionixfs.kionix.com/en/datasheet/KX023-1025%20Specifications%20Rev%2012.0.pdf ) states on page 8:
Current Consumption
High Resolution Mode 145 uA (0.145 mA)
Low Power Mode 10 uA
Standby 0.9 uA
As "Acceleration sensing is based on the principle of a differential
capacitance arising from acceleration-induced motion of the sense
element" I don't expect a current change in the device itself when in motion - only if switching from Low Power Mode to High Resolution Mode when a motion is detected. -
-
-
-
Just a crazy idea:
If you follow the download link from HughB in #1 ( https://www.icofchina.com/d/file/xiazai/2020-09-22/26ac3f347aca9fc6c3a23db296b0dec0.zip?_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=en-GB ), you will get a .zip file which contains GnssToolKit3.exe . If you start it, it waits for a connection to a COM port.
[crazy on]
Would it be possible to route the internal COM ports of the watch via Bluetooth serial to GnssToolKit3.exe ?
[/crazy off]
If this is working, it should be possible to look at the communication with a com port sniffer and eventually get hints for the CASIC communication or (I'm dreaming) AGPS.
btw: You can set GnssToolKit3.exe to English with the rightmost menu entry, 3rd item and restart of the program.While searching the internet for "gnss-aide.com" it seems that also ublox devices use this service. Which AGPS provider does the Bangle.js 1 use?
-
Having a closer look at my watch I can see that the gold plating has very small holes, like punched with a needle.
I suppose that this is caused by Spring Contact Probes (circuit board test needles) used in the factory to program or to test the watch.
Humidity will go through these holes and cause corrosion in the copper layer, ending up in pushing off the gold plating, only remaining the corroded copper. This will also explain the still gold plated pad(s), the needles did not penetrate their gold layer.
The factory should use less sharp pointed contact probes to avoid this, for already punched contacts one may try to use Silver Conductive Paint to cover the holes (not yet tested by me). -
-
Your "Garbled 15 puzzle (v0.02)" is working on my "real" Bangle.js 2 :
- opened it in the emulator:
https://www.espruino.com/ide/?codeurl=https://dirkhillbrecht.github.io/BangleApps/apps/p15prob/puzzle15.app.js&upload&emulator - copied and pasted the code from the emulator window into the Web IDE and downloaded it to RAM
-> The puzzle is displayed on my Bangle2 without any errors or warnings.
This confirms the statement from HughB that the code is correct but the environment needs to be fixed.
- opened it in the emulator:
-
Both, the github search and the search in Espruino-master.zip returns no results for AT6558.
For "casic" or "uranus" it finds only one result:
'GPS' : {'device' : 'Casic URANUS', 'pin_en' : 'D29', # IO expander P0 'pin_rx' : 'D30', 'pin_tx' : 'D31'
May be
BANGLEJS_F18 is Bangle.js
BANGLEJS_Q3 is Bangle.js 2
DTNO1_F5 is ? -
-
It's defined for
defined(BANGLEJS_F18) || defined(DTNO1_F5) || defined(BANGLEJS_Q3)
I don't know if one of these is AT6558 - but it seems so:
A search for "AT6558" in the contents of https://github.com/espruino/Espruino does not deliver any result. -
-
I've found something interesting in https://github.com/espruino/Espruino/blob/master/libs/banglejs/jswrap_bangle.c
ifdef BANGLEJS_Q3 ... define GPS_UART EV_SERIAL1 ... /*JSON{ "type" : "EV_SERIAL1", "generate" : "jswrap_banglejs_gps_character", "#if" : "defined(BANGLEJS_F18) || defined(DTNO1_F5) || defined(BANGLEJS_Q3)" }*/ bool jswrap_banglejs_gps_character(char ch) { ...
Maybe that's what you are looking for.
-
-
Does a particular message always gets NACK - even when sent in a different order or with pauses between them?
I'm thinking of "NACK = currently busy - please try again later".