#Introduction I recently got a Pebble Time for my cake day, and wanted to see what I could do with it outside watchfaces and apps.
#Before everything else I was able to accomplish all of below by using Pebble Firmware Utils by MarSoft (https://github.com/MarSoft/pebble-firmware-utils). Python 2.7 is required to get the firmware files. Run the following:
cd pebble-firmware-utils python downloadFirmware.py python unpackFirmware.py [file_name].pbz cd pebble_firmware
#Hack 1: Changing strings The first thing I was able to do was change the string "BLUETOOTH" in settings to something else. I discovered the string by running:
strings tintin_fw.bin
I found some words, including BLUETOOTH. I was able to change this string by opening it in Hex Fiend, and changing the string. NOTE: The new string must be less than or equal to the length of the old string. If less than, add spaces as padding. Otherwise the Pebble will go into SOS mode. I then repacked the firmware by running:
python repackFirmware.py [file_name].pbz
And uploaded it to my Pebble.
#Hack 2 (it's just playing around stuff) Going to be using binwalk to find things in the binary.
binwalk tintin_fw.bin
Outputs only 2 entries, others are invalid:
DECIMAL HEXADECIMAL DESCRIPTION -------------------------------------------------------------------------------- 541643 0x843CB LZMA compressed data, properties: 0xB8, dictionary size: 524288 bytes, uncompressed size: 12599299 bytes 550655 0x866FF LZMA compressed data, properties: 0xC0, dictionary size: 33554432 bytes, uncompressed size: 15728640 bytes
Going to try and extract them:
binwalk -e tintin_fw.bin
Files are in 7z, can't extract for some reason. Mac error: "Error on decrunching"