[Q] cabotEL.log - tracking data? - Nexus 4 Q&A, Help & Troubleshooting

While checking out my N4 I found the file cabotEL.log containing things like:
Code:
Feb 14, 2013 6:55:32 PM [First location received ] Location
--- Provider: gps
--- Lat: 29.XXXXXXXX
--- Lon: -82.XXXXXXXX
--- Accuracy: 3.0
--- HasSpeed: true Speed: 21.25
--- Time: 06:22:21
Feb 14, 2013 6:55:32 PM [OnLocationChanged: ] Location
--- Provider: network
--- Lat: 29.XXXXXXXX
--- Lon: -82.XXXXXXXX
--- Accuracy: 20.0
--- HasSpeed: false Speed: 0.0
--- Time: 06:55:32
and
Code:
Feb 14, 2013 6:57:17 PM Processed event: DisconnectedEvent BDA: XX:XX:XX:XX:XX:XX
Feb 14, 2013 7:02:36 PM Processed event: ConnectedEvent BDA: XX:XX:XX:XX:XX:XX
Feb 14, 2013 7:02:37 PM Processed event: USER_AGENT BDA:
Feb 14, 2013 7:02:37 PM Processed event: BATTERY BDA:
Feb 14, 2013 7:02:37 PM Processed event: DON BDA:
Feb 14, 2013 7:02:37 PM Processed event: SENSORSTATUS BDA:
This seems to be the bulk of the file. I've looked pretty thoroughly and I haven't been able to identify the culprit.
Has anyone seen this before?
Matt

berglundma said:
While checking out my N4 I found the file cabotEL.log containing things like:
Code:
How did you get this out of the file? I have the same thing in my Nexus 4 I noticed today. This is the only post anywhere about it.
Click to expand...
Click to collapse

Interesting I would like to know as well. I did search for the file but I didn't find any. Do you have location history on? I have it off. I wonder if that's the case or caused by a certain app?
Sent from my Nexus 4 using Tapatalk 4 Beta

I just found this thread looking for more information on the cabotel.log file. I realise this in an old post, but I'm updating in case it helps anyone else as this is the only relevant hit on google.
Looking through my app install history, I found the cabotel.log started immediately after I installed the plantronics find my headset app. Closer look at the connect / disconnect events show my handsfree's bluetooth mac address.
If you have (had) plantronics find my headset installed, that's probably a safe bet for where the file came from. So long as it doesn't upload this to some third party it's at least helpful tracking data.
--fg

fg said:
I just found this thread looking for more information on the cabotel.log file. I realise this in an old post, but I'm updating in case it helps anyone else as this is the only relevant hit on google.
Looking through my app install history, I found the cabotel.log started immediately after I installed the plantronics find my headset app. Closer look at the connect / disconnect events show my handsfree's bluetooth mac address.
If you have (had) plantronics find my headset installed, that's probably a safe bet for where the file came from. So long as it doesn't upload this to some third party it's at least helpful tracking data.
--fg
Click to expand...
Click to collapse
I also realize this is an old post but I can confirm this has to do with plantronics find my headset app. My log started on the 24th of this past September same time I got my headset and installed the app.
Sent from my Nexus 5 using Tapatalk

One or Some of plantronics apps would be..
Plantronics apps tracking your bluetooth devices would be the one you are looking for.

Related

Current Adobe Flash projects.

I would like to just inform you all of what adobe is working on currently via the browser webcam I..e. chatroulette and other outgoing video via the browser. I sent a email to adobe and this is my response included in several email's. A little love and he kinda opens up hope this answers some questions.. it did for me..
, "Flash Player Mobile Team" <fxxxxile-Adobe> wrote: >
No problem. Just FYI, the tricky thing isn't hooking the streaming up. It's figuring out how to compress the video stream on a device with constrained memory and CPU effectively enough that you can send it up the 3G network. The more compression you want, the more CPU you consume. Anyway, stay tuned.
From: xxxxxey <cxxxxxxsley-gmail> Date: Thu, 18 Aug 2011 11:37:46 -0700 To: Flash Player Mobile Team <fxxxxle-adobe> Subject: Re: Flash question
Lol good answer. Its in your release notes that it doesn't support can/mic function yet but I'm hoping lol good job so far though. It would be nice to do some browser broadcasting without having to use those buggy apps lol. Anyway thanks for responding quickly and your lucky to have a great job at adobe have a great day and don't work too hard.
On Aug 18, 2011 1:29 PM, "Flash Player Mobile Team"xxxxxxxxile-adobe> wrote: > Hi, > > Thanks for the suggestion. Unfortunately, we cannot discuss our future engineering roadmap without a non-disclosure agreement in place. > > Best regards, > xxxxxxxek > Quality Engineering Manager - Flash Runtime Mobile > Adobe Systems, Inc > >
Fromxxxxy <cxxxxy-gmail>
<mailtoxxxxxxxsley-gmail>> > Date: Thu, 18 Aug 2011 10:41:05 -0700 > To: Flash Player Mobile Team <fxxxxxxe-adobe<mailto xxxxxxile-adobe>> > Subject: Flash question > > > Just a quick question I have a Acer iconia and was wondering when flash for android will support the cam/microphone. As an example to use in the browser for video chat like chatroulette etc etc I can only get videos to me and it can't find the camera. Are you guys currently working on this and will it ever be supported? Thanks!!
Thread moved to General.

[Paid Job] Create Method for Quick Setup of Multiple Tablets

I have created my own app which I sell pre-loaded on Samsung Galaxy Note GT-N8000's
I currently set up each tablet by hand, generally:
Turn on
Get past initial setup screens - Samsung account, Dropbox account, Google Account
Delete all of the Home Main Screens, just leaving one clear screen instead of 5.
Change approx 5 settings (GPS on, screen brightness, screen off time etc)
Change Background to a photo in Dropbox
Install approx 5 apps from Google Play and place icons on Main Homescreen
This takes approx 8mins per tablet, which adds up when I have lots of tablets
I would like to pay $100.00USD (via PayPal, or another means) to the person who makes the easiest 'Automated Setup Method'. This does not have to make the process completely automatic, I just want to reduce my setup time dramatically. A couple mins actual interaction with each device would be ok.
The solution cannot Leave the Tablet Rooted, leave the Flash Counter increased, void the warranty, leave the Recovery changed.
I was thinking the solution might flash a custom ZIP file or something with these changes, but I'm not really sure.
Send solutions via PM, with a description of how it works and how to use it.
T's & C's
Deadline for completion 6pm EST Tuesday 25th March.
Winner announced on this post by 6pm EST Wednesday 26th March
Winner will be asked to confirm payment on here once received (to show I actually paid)
Thanks
Andrew Humphries
AgriTrack Ltd
I'm not sure you can post this type of thing in our forums. This is xda-developers, not a job-advertising site.

[International Pushbullet Server] [US Pushbullet] [N6 Browser Launch] N6 Availability

International Nexus 6 Pushbullet Java Server channel
I can't setup Nexus 6 Pushbullet Channels outside US because is where I'm living now but I can share a Java program that will work at any country so you can setup your country channel.
Be aware:
The program will check the page where the server or computer is located.
If you use a VPN be careful because maybe the server will be checking a different country page.
The only restriction is that the Nexus 6 page has to be available.
If you share your channel please try to run the Pushbullet server 24/7 because people will be disappointed if the nexus appear and the server is not running.
How to setup:
Setup a Pushbullet account: https://www.pushbullet.com/
Create a new channel: https://www.pushbullet.com/my-channels
Find and save your api key also called acces token: https://www.pushbullet.com/account
Download the servernexus.jar file
Install the latest Java in your laptop, PC or Server.
Setup your java environment variables properly (help)
Open your terminal or cmd
Go to the path where your file is located
Run your servernexus.jar file as: java -jar servernexus.jar <api key> <channel tag> (help)
Example: java -jar servernexus.jar 11KJ45JH34NDWFN234N423 nexus6availabilityuk
If everything works well you will see a Pushbullet notification on your channel indicating that the server is running.
The refresh time is 5 seconds
US Nexus 6 Pushbullet channel
For those who are still waiting for it I prepared this Pushbullet channel for myself and it worked fine so if you want to use it go ahead I'll keep my server running until stock gets fluent.
The refresh time is 5 seconds
Channel: allnexus6availabilityus
Web: https://www.pushbullet.com/channel?tag=allnexus6availabilityus
International browser launcher Nexus 6
If you don't believe in Pushbullet notifications and you prefer something different I also prepared this nexus.jar file that will look for your desired device and if it's available will launch your browser into the device page when appears available.
The refresh time is 2 seconds
To use it you will need the latest Java installed on your computer and java path in your environment variables.
Then for N6 Blue 32Gb introduce: java -jar nexus.jar 0
For N6 White 32Gb introduce: java -jar nexus.jar 1
For N6 Blue 64Gb introduce: java -jar nexus.jar 2
For N6 White 64Gb introduce: java -jar nexus.jar 3
Hopefully will be usefull for somebody.
Worked great. Many thanks. Got the 34 gig midnight blue. Average stock available time was about 8 seconds.
geebee1932 said:
Worked great. Many thanks. Got the 34 gig midnight blue. Average stock available time was about 8 seconds.
Click to expand...
Click to collapse
You are very welcome Did you use the Pushbullet Channel or the Java file though?
I used Pushbullet. It was the first time using it.
Thanks! Hoping for some luck next week if not sooner. Using the channel.
geebee1932 said:
Worked great. Many thanks. Got the 34 gig midnight blue. Average stock available time was about 8 seconds.
Click to expand...
Click to collapse
Damn bro. Where'd you see the 34GB option? All I could do was the 32 or 64!
Can anybody do anything similar for the UK?
bigf00t said:
Can anybody do anything similar for the UK?
Click to expand...
Click to collapse
If you have a computer in UK that can be online 24/7 I can share you my program so you can setup your own channel if you want.
For anyone looking for a python script, I did this, based on another scrit. Sorry, I lost the original script to give credits
I don't use pushbullet, I use notify my android (https://play.google.com/store/apps/details?id=com.usk.app.notifymyandroid)
First, download the python lib to send notifications to NotifyMyAndroid
https://github.com/uskr/pynma
Download the zip and unpack it. Go to the extracted dir and create a file. ex: nexus632gbblue.py
Code:
#!/usr/bin/python
from urllib import urlopen
import logging
import pynma
#nma api key
nma = "your_nma_api_key"
#change to your desired model
urlnex = "https://play.google.com/store/devices/details?id=nexus_6_blue_32gb"
contents = urlopen(urlnex).read()
if contents.find("Add to cart") != -1: #Found magic button!
try:
p = pynma.PyNMA([nma])
# application, event, description, (opt) url, (opt) priority, (opt) batch mode
res = p.push("Nexus 6 Available", 'Nexus 6 - Blue 32gb ', 'Nexus 6 - Blue 32GB Available', urlnex, 2, batch_mode=False)
except Exception:
print logging.exception('')
To test:
chmod +x nexus632gbblue.py
python nexus632gbblue.py
edit: on crontab, to set update interval less than 1 minute:
You can change the script and put a while loop and a sleep on python script. It's just an example
Code:
* * * * * python nexus632gbblue.py
* * * * * sleep 10; python nexus632gbblue.py
* * * * * sleep 20; python nexus632gbblue.py
* * * * * sleep 30; python nexus632gbblue.py
* * * * * sleep 40; python nexus632gbblue.py
* * * * * sleep 50; python nexus632gbblue.py
Now, just put on your job scheduler and chose the update time
Thanks X, that channel has been very helpful in keeping me up to date with the stock.
Is there a script to automate the ordering? Like click Buy, Checkout, etc so I don't waste seconds fumbling for the button?
xbassols said:
If you have a computer in UK that can be online 24/7 I can share you my program so you can setup your own channel if you want.
Click to expand...
Click to collapse
Hi xbassols, If you could share the program that would be much appreciated. The uk play store is now showing the Nexus 6, all be it with "coming soon" but it would be good to get prepared.
Cheers,
Rochey
This works for specific country or just US?
Rochey13 said:
Hi xbassols, If you could share the program that would be much appreciated. The uk play store is now showing the Nexus 6, all be it with "coming soon" but it would be good to get prepared.
Cheers,
Rochey
Click to expand...
Click to collapse
I've updated the first page.
Seadra said:
This works for specific country or just US?
Click to expand...
Click to collapse
The channel only in US but the java files everywhere where the nexus 6 page exists
Hey, what text does this search for on the page and/or does it just detect changes between a previous version and the current version of the page? I ask as the UK site says "add to basket" when available rather than "add to cart" as the US does. Other than that, the pushbullet java server seems to be up and running well for me here - thanks!
GavinAshford said:
Hey, what text does this search for on the page and/or does it just detect changes between a previous version and the current version of the page? I ask as the UK site says "add to basket" when available rather than "add to cart" as the US does. Other than that, the pushbullet java server seems to be up and running well for me here - thanks!
Click to expand...
Click to collapse
Don't worry about that, it doesn't really search any visible text. It works monitoring the class name of some specific tags so can work at any country even if the page language is different and it's way more reliable than other programs that just search any difference in the webpage.
It will work properly if Google don't mess with the internal classes and that shouldn't happen.
If you intend to keep your pc running 24/7 or so, I think other users would appreciate having the opportunity to use your channel
BTW don't forget to subscribe to your own channel... For some weird reason it's not done automatically when you create the channel.
uknexus6stockcheck
Just managed to set this up on my mac mini which is on in the uk 24/7.
Updating Java was a pain as OS X wanted to keep using version 1.6. In the end I had to symlink the 1.8 java in /usr/bin/.
Seems to be working now. If I start the script I get a pushbullet notification saying that the "server is up and running" and I can see the poll every few seconds.
Thanks for the script and if anyone wants the channel name to use themselves subscribe to;
uknexus6stockcheck
Quick query, Does the script check for both colors and sizes? I'm assuming it will message when each comes available as there are no options. Just thought I'd check.
Thanks again for the java script and instructions - here's to hoping that I get a nexus 6 before a few of my friends! lol!
Yeah you're right, a quick compare of the page source US vs UK does indeed show the class names all match between both.
Unfortunately I doubt I'll be keeping my PC on 24/7 else I'd gladly share. No-one wants to be prematurely excited about a notification to then see its just the server starting again!
Thanks for the heads up, I had already noticed that I wasn't automatically subscribed to my own channel, I found it odd too.
could someone make a channel for the german playstore?
thanks in advance
Meh. I changed my mind. Not talented enough to set this up.
Now if someone could just make a .jar that monitors motorola.com's "Out of Stock" message for the Nexus 6 Buy page...

ASUS ZenPad 8 Z380M - internal storage issue due to mtklog audio dump files

Would like some assistance with an ASUS ZenPad 8-inch tablet. The tablet is not rooted; is about a month old; and is updated to Android 7.0. Recently I get an "Internal storage running out" notice. I trace it to a folder called mtklog>audio_dump. All of the files are just audio logs of what my daughter watches on YouTube. These files take up to 8-9 GB of memory in the span of a day or two depending on how much she's watching. I can delete the files but they just fill back up and it's annoying. I do not recall doing anything to start these audio logs.
Can anyone advise on what to do in order to not record these audio logs? I can't seem to find an app that's recording the logs. I've attached a screenshot of the files hogging up all the storage.
My Zenpad is also affected by this issue after the update. Mine becomes unusable within an hour or two due to the size of the files generated. Why was this backdoor spy added/activated?
Exactly same problem with ZenPad10 with Android7 . Anyone has any work arounds?
Hi Everyone,
I did some digging and found a workaround.
This is how I fixed it:
Click 7 times on build number found in software update option in settings to enable developer options.
Go to Developers options under settings menu and change 'Logger Buffer sizes' to off.
Voila! The issue is fixed. Hope it helps!
Ig23 said:
Hi Everyone,
I did some digging and found a workaround.
This is how I fixed it:
Click 7 times on build number found in software update option in settings to enable developer options.
Go to Developers options under settings menu and change 'Logger Buffer sizes' to off.
Voila! The issue is fixed. Hope it helps!
Click to expand...
Click to collapse
Hello, I had the same problem with my ASUS. lg23's workaround fixed the issue. Thanks!
Edit: Nope I thought it worked, but it didn't. Still creating huge audio dump files in mtklog folder...
Same issue for me.... do not understand how to turn this off..... have you found a solution ?
Hey guys, see if this works:
Install Engineer Mode MTK shortcut
Turn on developer options
Start Engineer Mode. Go to Hardware Testing -> Audio -> Audio Logger
Uncheck any boxes that are checked
Profit (and maybe reboot)
All in all, I don't understand why some tablets have the logging enabled and other don't, if this is indeed the issue. I've never seen it enabled, even after a factory reset.
If you have the audio logging issue on either the Z380M or the Z300M, please post:
Your firmware SKU
Your region code given by the property ro.config.versatility (may need a terminal app to read that via getprop)
The firmware version you were on when you reset your tablet
diplomatic said:
Hey guys, see if this works:
Instal Engineer Mode MTK shortcut
Turn on developer options
Start Engineer Mode. Go to Hardware Testing -> Audio -> Audio Logger
Uncheck any boxes that are checked
Profit (and maybe reboot)
All in all, I don't understand why some tablets have the logging enabled and other don't, if this is indeed the issue. I've never seen it enabled, even after a factory reset.
If you have the audio logging issue on either the Z380M or the Z300M, please post:
Your firmware SKU
Your region code given by the property ro.config.versatility (may need a terminal app to read that via getprop)
The firmware version you were on when you reset your tablet
Click to expand...
Click to collapse
Hey,
I'm still having the problem. It seems it works for a few days turning off the logging in developer settings, but only for few days, then it starts again (without a restart in the meantime). Also tried the Engineer Mode and all checkboxes are unchecked.
Just an idea: can we somehow set the mtklog folder as read only?
My SKU:
3.18.35+
[email protected] #1
Fri Nov 3 19:22:46 CST 2017
Firmware:
NRD90M.WW_P00A-V5.3.16-20171103
070010926_201612160002
Huh, that's weird... That engineer mode setting is what's supposed to control it. Maybe try checking the boxes, save, then uncheck them. Just to refresh the internal settings.
I suppose you can do something like this in TWRP or root mode to remove write permissions from that folder:
chmod -w /sdcard/mtklog/audio_dump​Not sure if that will stick or have any side-effects.
Did you figure out how to fix this?? I am having the EXACT same problem. The solution works for me for about 2 weeks and then without notice, it will just start again! It is so frustrating and I can't find any other solution on the web.
Houmr9 said:
Hey,
I'm still having the problem. It seems it works for a few days turning off the logging in developer settings, but only for few days, then it starts again (without a restart in the meantime). Also tried the Engineer Mode and all checkboxes are unchecked.
Just an idea: can we somehow set the mtklog folder as read only?
My SKU:
3.18.35+
[email protected] #1
Fri Nov 3 19:22:46 CST 2017
Firmware:
NRD90M.WW_P00A-V5.3.16-20171103
070010926_201612160002
Click to expand...
Click to collapse
steeler0038 said:
Did you figure out how to fix this?? I am having the EXACT same problem. The solution works for me for about 2 weeks and then without notice, it will just start again! It is so frustrating and I can't find any other solution on the web.
Click to expand...
Click to collapse
Hey, so far the only thing worked for me:
1) install "Automate" app (or a similar one which can run user created tasks)
2) create task, that deletes the "mtklog" folder every 10 mins (yeah, playing youtube can fill up my memory in 10 mins)
hi, thanks for the advice.
On automaton, how to create this task, please?
Aiirae said:
hi, thanks for the advice.
On automaton, how to create this task, please?
Click to expand...
Click to collapse
https://photos.app.goo.gl/4d82AnHaQpyPIyxl1
Same issue MTKlogger
I also have the same issue with my Asus tablet. The MTKlogger fills up my internal storage continually. This was how it came out the box, horrible quality control from Asus. I am still searching for how to stop the logging.
Can these files be converted into usable MP3s?
Quite often I would like to save the audio on YouTube videos and used to have plug-ins and apps that could do that and haven't bothered to replace them with modern versions. So I am wondering if there is data in these files that can be converted into MP3 files. A search of this thread found no hits so I am posting this reply.
Thanks! You guys here have always been life savers for me!
sssteeve
P.S. Funny how what most people consider to be a problem caused by this bug is viewed as a potential opportunity for a music nut like myself.... I've been working around software bugs as a user for almost 35 years so I don't mind having to delete them whenever they build up. Rather than delete them I moved 5.85GB of them to an ext sd card just in case....
P.P.S. As a user here is a tip other Z380M owners might find useful. One of my big complaints is that you need to remove the back cover to access the ext sd card. A second complaint is that because of the physical design I find the tablet to be unusable without a cover or snap-on case.
What eventually solved both of those issues for me was to leave the hard plastic back cover off as the snap-on soft gel case sold for around $5 on-line offers enough protection, at least for me. While I usually prefer to use a folio case whenever transporting a tablet in my goto bag I made up a protective cover out of cardboard and secured with two thick rubber bands. It might look like crap but it sure beats having to worry about a cracked screen!
Turn off audio dump
Ig23 said:
Hi Everyone,
I did some digging and found a workaround.
This is how I fixed it:
Click 7 times on build number found in software update option in settings to enable developer options.
Go to Developers options under settings menu and change 'Logger Buffer sizes' to off.
Voila! The issue is fixed. Hope it helps!
Click to expand...
Click to collapse
Clicking 7 times didn't do anything. Was this some kind of goose chase prank? How would anyone even know to click that 7 times to access developer options and is there another way to access developer options?
I have the same problem. Not sure why it dumps, perhaps when I use a bluetooth external speaker. Mine takes months to accumulate,. I go to Storage then to Internal shared storage, Other then explore. I delete the files from here, under the mktlog folder, autio dump. They are stored here and can't be deleted with other programs like ES File explorer. Hope it helps.
Hi there
I have an ASUS Z380 and my internal storage be being eaten up by mtklog>audio_dump.
So I enabled the developer mode and set 'Logger Buffer sizes' to off in the Developers options.
I also installed the "Engineer Mode MTK shortcut" and unchecked "Audio Logger" from Hardware Testing -> Audio -> Audio Logger.
The disk space was the same as before so I manually deleted the entire "mtklog" folder from file manager, then rebooted.
Looks like things are nice. I now have over 6GB free space rather than just a couple of hundred MB.
Kernel ver
3.18.35
[email protected] #1
Thur Aug 9 12:33:25 CST 2018
Build number:
NRD90M.WW_P00A-V5.3.20-20180809
070010926_201612160002
This method of installing "Engineer Mode MTK" helped solve this issue in my AZUS Z380M Tab.
Hi,
Thanks all for making this problem searchable and caring
Z300M with recent storage troubles.
I've Chromecasted many YouTubes without seeing any storage blockages.
However, I only recently experimented with BLUETOOTH for podcasting to my Internet Radio.
Now, memory full thanks to junk in folder "audio_dump".
I'll list the filenames because they might provide evidence of criminality
I can delete them manually without fear as I did a few days ago.
Common pattern:
mixer_drc_{before | after}_565_0xecb6e{nnn}.pcm.{header | wav}
Filename​Size​Date created​mixer_drc_before_565_0xecb6e158.pcm.header
mixer_drc_before_565_0xecb6e158.pcm.wav
mixer_drc_after_565_0xecb6e158.pcm.header
mixer_drc_after_565_0xecb6e158.pcm.wav64B
631MB
64B
631MB​23 Jan​mixer_drc_before_565_0xecb6e250.pcm.header
mixer_drc_before_565_0xecb6e250.pcm.wav
mixer_drc_after_565_0xecb6e250.pcm.header
mixer_drc_after_565_0xecb6e250.pcm.wav16B
1.16GB
16B
1.16GB​26 Jan​mixer_drc_before_565_0xecb6e060.pcm.header
mixer_drc_before_565_0xecb6e060.pcm.wav
mixer_drc_after_565_0xecb6e060.pcm.header
mixer_drc_after_565_0xecb6e060.pcm.wav64B
860MB
64B
861MB​Today
(Bluetooth was/is DISABLED)​
Today's row shows that it's not necessarily the use of Bluetooth that creates the files, rather that a previous use of Bluetooth might have left an unwanted setting enabled (?)
I've now set Logging OFF (as suggested in an earlier post) and shall monitor.
__________
Android 7.0 (patch: 1 December 2017)
Kernel version
3.18.35
[email protected] #1
Tue Dec 19 15:45:06 CST 2017
Build number
NRD90M.WW_P00C-V5.3.19-20171219
070010929_201612210851

Hacking the Casio G-Shock GW-B5600 BLE

Hello all, this is my first post here!
In this article I will explain my method of hacking the Square G-Shocks that make use of a Bluetooth module (I have a GW-B5600, but it should theoretically work on the GMW-B5000 too) with the goal to create our own Android app that will allow to get info and set the watch via BLE (Bluetooth Low Energy) commands/requests.
The tools I am using are: (sorry no link I am too new)
nRF Connect for Android by Nordic Semiconductor from the Play Store
Wireshark desktop (Windows/Mac) from the official website
The official "G-Shock Connected" Android app from the Play Store
And adb that can be found in the Android platform tools (by default in "C:\Users\usrname\AppData\Local\Android\Sdk\platform-tools")
Your phone does not need to be rooted but needs the Developer options enabled.
1 Discover the services offered by the G-Shock
I am using nRF Connect installed from the Play Store to scan for BT devices.
Long-press the (C) (bottom left) button on the B5600 to enable BT on the watch.
Hit Scan in nRF and search for "CASIO GW-B5600" and tap it to show the following details:
Code:
Device BT Name: CASIO GW-B5600
Device BT Address: [B]EB:1C:FF:90:C2:34[/B]
Offered services: 0x1801 Generic Attribute
0x1800 Generic Access
0x2A00 (R) Device Name
0x2A01 (R) Appearance
0x1804 Tx Power
0x2A07 (R) Tx Power Level
0x26EB00 0D Unknown Service
(UUID 0x2902 for all)
[B]0x26EB002C (W*) Custom Service #2C[/B]
[B]0x26EB002D (NW) Custom Service #2D[/B]
0x26EB0023 (NW) Custom Service #23
0x26EB0024 (NW*)Custom Service #24
(R) is read only (W) write (W*) write no response (N) notify.
The important information has been set in bold: the BT address that we will use to analyze the packets, and the 2 services that I called #2C and #2D that are used by the official G-Shock app to get and set info from/to the watch.
2 Enable Bluetooth traces on the phone
After that, open the phone Developer options > Enable Bluetooth HCI snoop log.
Or use the USB debugging mode, plug the phone to the computer and type the following command in a prompt:
Code:
adb shell settings put secure bluetooth_hci_log 1
To know where the BT traces will be stored, type the following command:
Code:
adb shell cat /etc/bluetooth/bt_stack.conf
and look at the line starting with 'BtSnoopFileName=' to locate the BT log files.
3 Capture BT activity and save the logs on computer
Install and run the "G-Shock Connected" app on your phone from the Play Store.
Do manipulations between the watch and the app, take note of the time you make them.
Then plug the phone and type:
Code:
adb pull /data/log/bt/btsnoop_hci*.log
Note: the place and name of the logs are for my Huawei Mate 10. You will need to adapt the path with the one you got at step 2.
4 Analyze the BT traces in Wireshark
Open Wireshark and drag and drop one of the "btsnoop_hci*.log" files pulled to the computer onto the program.
Add a filter on the G-Shock BT address we got from nRF Connect at step 1:
Code:
bluetooth.addr==EB:1C:FF:90:C2:34
And hit enter to see the BLE activity on the watch.
Now the fun (or the boring part, it depends ) begins... Understanding the BT requests/answers (get info) and BT commands (set info)!
In Wireshark, the important information for each BT frame are contained in the fields
Bluetooth Attribute Protocol > Handle > UUID
and in Bluetooth Attribute Protocol > Value
The very first -easiest- command I was able to identify is the one to Get and Set the Home City and the 5 World Time (WT) Cities.
When you analyse the BT packets, you can see the name of the cities written in all letters in the Value field:
Code:
0000 1f 01 48 4f ..HO
0010 4e 47 20 4b 4f 4e 47 00 00 00 00 00 00 00 00 00 NG KONG.........
We can observe that to GET the Home City, we send a Write command with the value 1F00 to the service 0x26EB002C (aka Custom Service #2C). In return, we will receive a notification through the service 0x26EB002D (aka Custom Service #2D) containing an echo of the Command ID (1F00) followed by the name of the Home City in upper-case (e.g. "PARIS").
To SET the Home City is just as easy: we send a Write request to the service 0x26EB002D (Custom Service #2D) with the value 1F00 followed by the name of the new Home City on 18 Bytes (e.g. "PARIS"), tailed with 0x00.
GETting and SETting the 5 World Time Cities is very similar: you only need to use the Command IDs 1F01 to 1F05...
The next command I reverse engineered is the one to set the date and time.
I started to search for the hexadecimal value "07 E4" in the traces (2020 in decimal = the current year). The search returned zero result... If finding a WORD (value encoded on 2 bytes) in big endian* fails, you gotta try searching it in little endian* so I did another search for "E4 07" this time, and bingo! It appears in a SET command starting with the ID 0x09.
* search Wikipedia for "Endianness"
The full structure of the binary value is:
Code:
([B]09[/B]) YYYY MM DD HH mm ss ?? ?? 01 ?? ?? is the milliseconds in big endian(?)
[B]Mon.13-JAN (15:54:10) traces[/B]
([B]09[/B]) E4 07 01 0D 0F 36 0B 01 F2 01 --> 2020-01-13 15:54:11 (,498?)
[B]Wed.15-JAN (15:29:27) traces[/B]
([B]09[/B]) E4 07 01 0F 0F 1D 1E 03 44 01 --> 2020-01-15 15:29:30 (,836?)
You can notice there's a difference in the trace timestamp and the time sent, respectively 1 second and 3 seconds. That is quite normal: I disabled the time synchronization in the watch settings, so the watch time can deviate from the atomic time by a few seconds (the user guide states a tolerance of +/- 15s per month average).
Hey, did you ever manage to get any further with this @mougino ? I've also got one of these watches, and have been playing around with the BLE connection to it. I've managed to successfully set the alarm times and on/off state – but so far haven't had any luck with setting the actual time. I tried writing with the op-code you suggested of 0x09, but it doesn't seem to actually do anything for me.
Up its interesting.
Hope somebody can help me. I'm having trouble getting/setting time on my Casio GW-B5600BC-2BJF. I can get and Set most other things like alarms, home city, etc using the #2D command (Characteristic: 26eb002d-b012-49a8-b1f8-394fb2032b0f), but when I try to set the time, it has no effect. The command does not complain, but does not change the time. Should I be using a different characteristic? Here are supported BLE services on my watch:
[CD:85:24:01:62:17][LE]> connect
Attempting to connect to CD:85:24:01:62:17
Connection successful
[CD:85:24:01:62:17][LE]> characteristics
handle: 0x0003, char properties: 0x02, char value handle: 0x0004, uuid: 00002a00-0000-1000-8000-00805f9b34fb
handle: 0x0005, char properties: 0x02, char value handle: 0x0006, uuid: 00002a01-0000-1000-8000-00805f9b34fb
handle: 0x0008, char properties: 0x02, char value handle: 0x0009, uuid: 00002a07-0000-1000-8000-00805f9b34fb
handle: 0x000b, char properties: 0x04, char value handle: 0x000c, uuid: 26eb002c-b012-49a8-b1f8-394fb2032b0f
handle: 0x000d, char properties: 0x18, char value handle: 0x000e, uuid: 26eb002d-b012-49a8-b1f8-394fb2032b0f
handle: 0x0010, char properties: 0x18, char value handle: 0x0011, uuid: 26eb0023-b012-49a8-b1f8-394fb2032b0f
handle: 0x0013, char properties: 0x14, char value handle: 0x0014, uuid: 26eb0024-b012-49a8-b1f8-394fb2032b0f
[CD:85:24:01:62:17][LE]>
Here is the command I'm sending:
Wrote to characteristic 26eb002d-b012-49a8-b1f8-394fb2032b0f | value: 0x09 E6 07 03 19 0B 29 07 05 4F 01
Thanks in advance.
seanlano said:
Hey, did you ever manage to get any further with this @mougino ? I've also got one of these watches, and have been playing around with the BLE connection to it. I've managed to successfully set the alarm times and on/off state – but so far haven't had any luck with setting the actual time. I tried writing with the op-code you suggested of 0x09, but it doesn't seem to actually do anything for me.
Click to expand...
Click to collapse
Same here. Did you resolve this? See my message above. Thanks.
izivkov said:
Same here. Did you resolve this? See my message above. Thanks.
Click to expand...
Click to collapse
Nah I kind of dropped it, and haven't picked it up again for quite a while. I'd love to get it working though!
seanlano said:
Nah I kind of dropped it, and haven't picked it up again for quite a while. I'd love to get it working though!
Click to expand...
Click to collapse
OK, I will let you know if I figure it out.
Just curious, are you wring an Android app for the watch?
izivkov said:
OK, I will let you know if I figure it out.
Just curious, are you wring an Android app for the watch?
Click to expand...
Click to collapse
I was planning on having something running on a Raspberry Pi Zero W – I can program, but I've never made an Android app. My plan was to do something in Python, ideally having the Pi Zero running somewhere in my bedroom so that the Casio watch can do the time synchronisation at night. If I can get that working I'd also thought about setting some alarms and reminders for the day ahead, like maybe connect it to a calendar and put any important events into the reminders function of the watch, things that the existing Casio app can't do. An Android app would be a better way of doing this, but I figured I'd get it working in Python first since it's faster for me.
Ok, thanks for the info.
I more or less figured out how to set the time. It involves setting the DST for all world locations first. I guess makes sense, since the casio will update the time for all locations. I still don't understand some things so I will need to figure it out first, and I can share if you are interested.
I am working on an open source Android app to integrate the Casio watch with Google services on android, such as calendar and Alarm ckock. It will not replace the official app. I have been working on this app for about a month now, and got the alarms and now the time setting working. I think the callender integration will be the most challenging, since I don't know what the data means to Casio.
Currently the github is private, because it is WIP, but I will make it public when it is ready.
That would be very cool! I'll be happy to do some beta testing if you end up getting to that stage. Good luck!
@seanlano I have the basic app running, except for the reminders. If you like to try it, here is the github:
GitHub - izivkov/CasioGShockSmartSync
Contribute to izivkov/CasioGShockSmartSync development by creating an account on GitHub.
github.com
It is private, so not sure if you can access it, so let me know.
If you don't want to bother building the APK, I have put it on on my Google drive:
Google Drive: Sign-in
Access Google Drive with a Google account (for personal use) or Google Workspace account (for business use).
drive.google.com
I'm curious to see if for you the local time works properly, and the battery level is correct. Where are you located?
Of course, use at your own risk. It might screw up some settings on your watch. In that case, you may have to reset it like this:
Google Drive: Sign-in
Access Google Drive with a Google account (for personal use) or Google Workspace account (for business use).
drive.google.com
Ivo
izivkov said:
I'm curious to see if for you the local time works properly, and the battery level is correct. Where are you located?
Click to expand...
Click to collapse
Hey @izivkov, I tried it out and it seems to mostly work!
The time setting worked correctly (I made sure by manually setting the time to be very wrong, and your app brought it back to the correct time). The home time zone (Sydney) was correct too.
However, the battery level didn't work – the Casio app shows my watch at 100% but your app shows only maybe 20%.
The alarms worked well too, although I found that any time I set the alarms it turns off the hourly signal, and the app doesn't have a way to turn it back on (this isn't a big deal though, since it's only a couple of buttons to press on the watch).
Keep up the good work!
seanlano said:
Hey @izivkov, I tried it out and it seems to mostly work!
The time setting worked correctly (I made sure by manually setting the time to be very wrong, and your app brought it back to the correct time). The home time zone (Sydney) was correct too.
However, the battery level didn't work – the Casio app shows my watch at 100% but your app shows only maybe 20%.
The alarms worked well too, although I found that any time I set the alarms it turns off the hourly signal, and the app doesn't have a way to turn it back on (this isn't a big deal though, since it's only a couple of buttons to press on the watch).
Keep up the good work!
Click to expand...
Click to collapse
Hey, thanks for the feedback.
- I did not notice the hourly signal setting and will fix it. Possibly add a setting to the app to turn it on/off.
- For the battery level, I was not sure I was getting the right value, but for me seemed to be about right. Obviously, should look at other ways to set it.
- I'm working on Calendar events integration with Watch's reminders, and when I finish this and fix these issues you mentioned I will have another version and will let you know.
Cheers
izivkov said:
Hey, thanks for the feedback.
- I did not notice the hourly signal setting and will fix it. Possibly add a setting to the app to turn it on/off.
- For the battery level, I was not sure I was getting the right value, but for me seemed to be about right. Obviously, should look at other ways to set it.
- I'm working on Calendar events integration with Watch's reminders, and when I finish this and fix these issues you mentioned I will have another version and will let you know.
Cheers
Click to expand...
Click to collapse
Hay, thanks for starring my github. I moved the code to another repository: https://github.com/izivkov/CasioGShockPhoneSync, which is now public. Feel free to star the new one. ;-)
Basically, I added Google calendar event support, and fixed the issue with hourly chime getting reset. Still cannot figure out how the battery level is read. I get a value using command 0x28, but the value does not make sense. I get back something like 0x28 0x0f 0x17 0x00 for about 25% charged battery, and 0x28 0x13 0x19 0x00 for almost fully charged one. I think I will disable the battery icon until I can figure what is going on.
Anyway, adding some documentation now. Hope other people can contribute to this project and possibly support more watch models.
I'm a bit stuck. I'm trying to detect the difference between GW-B5600 long-press lower left button and short-press lower-right button as far at connection to the Android device is concerned. The app on the phone should be able to tell the difference, becase the official app acts differntly when the right button is pressed, i.e. sets the current location. This does not happen for left-button connection. But the data sent to the phone from the watch is identical. If somebody has figured this out, please let me know.
For those who are interested in how to communicate with the Casio G-Shock 5600 BT watches, here is the latest github I created:
GitHub - izivkov/CasioGShockSmartSync
Contribute to izivkov/CasioGShockSmartSync development by creating an account on GitHub.
github.com
And you can get the android app on PlayStore:
Casio G-Shock Smart Sync - Apps on Google Play
Add Smart functions to your Casio G-Shock Bluetooth (B5600, B5000, B2100) watch.
play.google.com
Enjoy
I've been working on a very similar app but for a slightly different Casio model. I'm not very familiar with the BLE and getting to a point where I'd happily pay someone for investigating the communication.
Would anyone be willing to figure it out?
drunkenHiker said:
I've been working on a very similar app but for a slightly different Casio model. I'm not very familiar with the BLE and getting to a point where I'd happily pay someone for investigating the communication.
Would anyone be willing to figure it out?
Click to expand...
Click to collapse
Sure, I can take a look. You can contact me by email directly at [email protected], or better still you can post to the github repository:
izivkov/CasioGShockSmartSync · Discussions
Explore the GitHub Discussions forum for izivkov CasioGShockSmartSync. Discuss code, ask questions & collaborate with the developer community.
github.com

Categories

Resources