A Deep Dive into the Fossil Q Explorist

The Fossil Q Explorist is a smartwatch that comes with Wear OS (formerly Android Wear) and is made from metal and glass. It contains the Snapdragon Wear 2100, a 32-bit ARM CPU with 4 Cortex A7 cores that speeds up to 1.2 GHz and an Adreno 304 GPU. The 512 MB RAM and 4 GB storage sound small, but are enough for a watch, that is essentially just a notification mirror anyway. The 370 mAh battery lasts for one entire day and gets energized via a magnetic wireless charging pad.

Software

Customizing the watch face is simple and an integral part of the experience. If you want to change something different it gets more tricky. Even simple things like custom Ringtones are not possible without access to the internal storage.

Accessing the internal storage

Accessing the internal storage is possible but we need to use WiFi 4 (802.11n) because the watch does not have a single port. First, we make sure that the Explorist is connected to the WFi of our choice and has an IP address. In the second step, we need to enable the developer options and turn on ADB over WiFI. That can be achieved by going to ‘System -> Info’ and tapping the ‘Build-Number’ 7 times in a row. Next, we can move back to the first settings page and scroll down to developer options. After enabling ADB and ADB over WiFi we can connect to the watch.

adb connect ip<:port>

While trying to connect there should be a popup on the watch asking for permission. We can add our computer to the list of trusted devices by accepting the request.

To complete the Ringtone example we leave the shell by typing exit and choose a sound file on our computer to transfer. We can push the file by writing: adb push /path/to/soundfile.mp3 /sdcard/Ringtones/soundfile.mp3

If the ringtone is not showing up in the audio settings ringtone list, simply reboot the watch by typing adb reboot or reboot it via system settings.

Audio Settings - Ringtone list with custom ringtone

Additional Info

adb shell getprop returns some new info on the device.

Info [ro.hardware]: [bluegill]
[ro.oem.brand]: [Fossil]
[ro.oem.device]: [Explorist]
[ro.oem.sku]: [FTW4001]
[ro.product.board]: [bluegill]
[ro.product.cpu.abilist]: [armeabi-v7a,armeabi]
[ro.product.device]: [bluegill]
[ro.product.first_api_level]: [25]
[ro.product.manufacturer]: [Compal]
[ro.product.model]: [Q Explorist]
[ro.product.name]: [bluegill]
[ro.treble.enabled]: [false]

Turns out the Fossil Q Explorist is manufactured by Compal and has the codename bluegill An interesting note is that this device has no treble layer, which makes it harder to build custom roms for it or use a generic system image (GSI). But with a little bit of help by @fossil on Twitter I got a link to the kernel sources.

Speaking of custom ROMs, if we want to run our own wear OS builds or a non-Android based OS, we need access to the bootloader.With adb reboot bootloader we can boot into the bootloader.

fastboot mode of the fosil q explorist / bluegill

The fastboot mode can be navigated by pressing the power button short and long to select the shown option.

Unfortunately, WiFi is not working in fastboot or recovery mode and the watch does not have a port.

Pinouts

Opening up the Fossil Q Explorist reveals the pinouts on the mainboard. I highly recommend to use a specialized tool for this task to avoid scratching the easy scratchable lid. You can find one for under 2€ on ebay or Aliexpress.

Fossil Q Explorist / Compal bluegill pinouts

Pin Name Description
1 VCC -
2 - -
3 - -
4 - -
5 GND Ground

At this point, I figured out that pin 1 is VCC and pin 5 is GND. Since the CPU has USB 2, I guess that pin 2-4 are Data+, Data- and OTG. But I don’t know in which order or if it’s UART instead of USB.


If you know how to safely determine what the other pins are or you have feedback/more info please send an email to feedback[at]jrtberlin[dot]de.