--- # Copyright 2025 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. title: Pebble SDK 3.2 - Changelog date: 2015-07-22 --- ### Known issues * Taking screenshots from physical watches running firmware 3.2 usually doesn't work. We expect to fix this in firmware 3.3. ### Changes to Firmware * Improved the reliability of app wakeup service when it is in use by multiple apps. * Added generic icons to the Watchfaces app for watchfaces without one. * Improved rendering of non-antialiased rounded rectangles. * Improved rendering of timeline pins with long body text. * Improved rendering of notifications. * Improved rendering of timeline pins using the Reminder layout. * Improved the music app on Android, in conjunction with the Pebble Time Android app version 3.2. * Added settings for backlight brightness and duration. * Added settings for notification font size and vibration intensity. * Restored the "dismiss all" action on notifications (long press or use the menu). * Significantly improved music control reliability on iOS. * Improved music control on Android, in conjunction with version 3.2 of the Android app. * Fixed a crash when forcibly terminating the launcher. * Improved the behavior of the app fetch UI after a bluetooth reconnection. ### Changes to SDK * ``ANIMATION_PLAY_COUNT_INFINITE`` got lost, but it's back now. * Added ``gcolor_legible_over``, which returns a color legible over some background color. ### Changes to Pebble Tool We scrapped everything and rewrote it from scratch! * Introducing [libpebble2]({{ site.links.libpebble }}), the successor to libpebble. If you want to write tools that interact with a watch, this is the library to use. * Also introducing [pebble-tool](https://github.com/pebble/pebble-tool), the successor to the old 'pebble' command, which was also part of libpebble. The following user-visible changes were made: * You can now connect to your phone via the CloudPebble proxy, even if the network blocks local connections. Pass `--cloudpebble` to do this. * The pebble tool will now prompt you to opt in to analytics on first launch. While this is optional, it would be very helpful if you said yes. * If you had previously opted out, that will still be respected and the question will be skipped. * Analytics are no longer collected synchronously, which should reduce pauses while using the pebble tool. * Launching and connecting to the emulator should now be much more reliable. * Both aplite and basalt emulators can now run concurrently. * There is no longer a default action if no connection is specified. However, if exactly one emulator is running, that will be used by default. * Screenshots are now color-corrected by default. Use `--no-correction` to disable correction. * You can now pass a filename to the screenshot command. * On OS X, screenshots will automatically open once they are taken. This can be disabled by passing `--no-open`. * Screenshots now display a progress bar while the are taken. * `--debug` and `--debug-phonesim` have both been removed. They have been replaced by `-v`. * You can use up to four v's (`-vvvv`) for increased verbosity. At this level, all protocol messages will be displayed in both deserialised and binary forms. * `pebble build` now respects `-v` (up to three v's) to increase the verbosity of build output. * `pebble build` can now pass arguments to your wscript; place them after a `--`. * Log output from `pebble logs` and `pebble install --logs` is now in color. * Added `pebble logout`. * `pebble wipe` now only wipes data for the current SDK version, and will not log you out. * To wipe *everything*, use `pebble wipe --everything`. * `pebble app-config` has been renamed to `pebble emu-app-config`. * The following commands have been removed: `list`, `rm`, `current`, `uuids`, `coredump`. * The environment produced by `pebble repl` has changed: it now provides a libpebble2 [`PebbleConnection`](http://libpebble2.readthedocs.org/en/v0.0.7/connection/#libpebble2.communication.PebbleConnection) object named `pebble` and places the pebble protocol messages under `protocol`. * Lightblue support was removed, but direct serial connections are still available using `--serial`, e.g. `--serial /dev/cu.PebbleTimeDF7C-SerialPo`. ### Changes to Emulator/Phonesim * Updated the phone simulator to use libpebble2. ### Changes to Documentation * [PebbleKit JS is now documented](/docs/pebblekit-js/). * [A PebbleKit Android tutorial was added](/getting-started/android-tutorial/part1/). * [A PebbleKit iOS tutorial was added](/getting-started/ios-tutorial/part1/).