--- # 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 2.0 BETA7 - Changelog date: 2014-01-23 --- Pebble SDK 2.0 is still in BETA and is **recommended only** for developers working on new applications for the upcoming Pebble appstore. ## Update Jan 31st: 2.0 Release Candidate 3 We fixed two more crashes. iOS user will automatically get the update. Android users can download it from this site. Not sending an email to everyone this time because it really is a small changes and we want to spare your inbox before the week-end. ## Update Jan 30th: 2.0 Release Candidate 2 On January 30th, we released a 2.0 Release Candidate version of the firmware with the following changes: * fixes a number of crashes * app no longer gets killed when it cancels an invalid timer * removes “persist_raw -9” message * low battery message always uses the right icon * fixes crash on watch shutdown * fixes crash when using accel ## Updated Jan 29th: 2.0 Release Candidate On January 29th, we released a 2.0 Release Candidate version of the firmware with the following changes: * Fixed numerous crashes * %Z flag passed to strftime no longer crashes the watch * Fixed iOS connected but not receiving anything issue * Firmware will now delete all data logging data on factory reset * Rate limit logging to prevent apps from crashing app with logging loops * Fixed issues were buttons become unresponsive * Fixed gpath getting clipped in some cases * Fixed accel lockup issue * Fixed accel not using the right sampling rate * Added low battery warning * Cancel snooze timer when alarm is deleted Please continue using BETA7 versions of the SDK and mobile applications. ## What has changed since BETA6 Overview: - More random crashes fixed in the firmware - Seriously improved datalogging on iOS (and some bugfixes on Android) - Fixed the URL scheme to install Pebble applications. It did not work in Beta6. - Added support for `getAccountToken()` in PebbleKit JS (iOS only at the moment) - iOS application and PebbleKit iOS are now 64 bits compatible - iOS application does not crash on iPhone 4 anymore - Some breaking changes in PebbleKit iOS: We cannot use NSNumber categories in 64 bit because their size is unknown. We added a new PBNumber class. This class is returned if you use the NSNumber Pebble category. ### Known Problems and limitations - Android does not include the Pebble appstore yet - PebbleKit iOS apps may see error messages about parsing firmware in their logs. This will be removed soon and does not impact anything in PebbleKit iOS. ### Changes for Firmware: - fix bugs with modal windows over fullscreen apps - fix bugs where action bar buttons could get "stuck" - reduced the power used by Pebble Steel LEDs - fix some data logging corruption issues on Pebble - fix a bug where the time of a notification would not be displayed properly - adjusted the battery charged thresholds so that Pebble Steel turns green when apps show 100% - fix a bug where you could get 110% battery - fix a bug where datalogging session could be incompletely initialized when pushed - fix a bug that could happen when looking for notifications - fix a bug where some original Pebbles (ev2_4) would never hit 100% battery - fix infinite loop if you push a modal while one is closing - fix some button problems on Pebble Steel ### Changes for Pebble iOS App: - added support for 64bits compilation - fix a bug where 64 bit devices would not display the bluetooth accessory picker - native login / signup screen - fix some button sizes to display text properly - calculate the area of the buttons on the left menu to highlight them dynamically - data logging: do not print error messages for partially fetched data - unless we are actually done - fix some bugs around the Bluetooth accessory picker - better management of the screens stack in onboarding process. allows users to go back. - do not display icon for watchfaces in the my pebble screen - fix bug where appstore url-scheme would not work - add link to terms and conditions - deal with timeout errors while installing apps - downloading apps in the Caches directory instead of Documents since that one gets pruned automatically by the system (Fixes pebblekit#39) - only allow to start dragging the center view if you start dragging from the left edge - fix crash for iPhone 4 users - fix bug where datalogging would try to send data to the Pebble app (instead of 3rd party apps) - lazy loading the web appstore views to improve loading speed - sort apps alphabetically in the locker - memory optimization to stay in the background longer - getAccountToken() now working in JavaScript - fix a bug where the configuration view was not sometimes not dismissed - rename the "Done" button of the configuration view to "Cancel" - send empty string back to the JS if the user cancels the configuration view (as per documentation) - only show the "notifications not set up" if there's a watch connected - fix a JS bug where in some conditions the 'showConfiguration' event might be fired before the 'ready' event ### Changes for Pebble Android App: - Datalogging: if a session contains bad data, just remove it at startup ### Changes for PebbleKit iOS: - PebbleKit iOS is now 64 bits (armv7s) compatible - We cannot use NSNumber categories in 64 bit because their size is unknown. We added a new PBNumber class. This class is returned if you use the NSNumber Pebble category. - Do not start the datalogging server if appUUID is all zeros ### Changes for PebbleKit Android: No changes. ### Changes for SDK Tools: No changes. ### Changes for Examples: - Classio-battery-connection is a watchface - Onthebutton is a watchface - Rumbletime is a watchface - Fuzzy Time is a watchface - Changed example UUID's to avoid appstore collisions ### Changes for Documentation: - Add note about datalogging size