Friday, 27 September 2013

Screens and Plugins

This is the bit where I say: wow.

Nearly 4 months ago, Canvas was released. It was made to allow you to design your own watch-faces for your Pebble - but also to share them. And share you have. In no particular order:-

Please, share more in the comments ;)

Then there were plugins.

Partly just so that I could say "write a plugin" to every feature request? Maybe

The Canvas plugin API was released in July, allowing anyone to add dynamic content to Canvas. Here are some great examples from the Pebble community:-

Pebble RSS
Augmented Smartwatch
Stock Ticker
and the original Now Playing

Again, if you've developed a plugin not listed, I'd love to hear in the comments!

More to come

Lots of really neat new features have been added to Canvas in the last few weeks (not that I can release them yet). Some of them, I can tell you about (dynamic sizing of layers, more animations, more weather options, a larger editor, inversion, interaction... much more), and some stuff that I can't. I visited Pebble HQ earlier this month for the Developer Retreat - its safe to say that there is cool stuff coming, but I'm not allowed to tell you what ;)

It was a 2-way event. I learned lots about Pebble and met the great Pebble team, as well as loads of fantastic developers... and also got the chance to bend the ears of Team Pebble about the future of the SDK. I have heard nothing but positive feedback about the event, and thanks to Thomas @ Pebble for organising it!

Wednesday, 21 August 2013

Canvas v1.4.6

Thanks to all of those who have been beta testing Canvas for the last few weeks; v1.4.6 is now released!

This version brings lots of changes, fixes and improvements. New features:-
 - Tasker integration: Canvas is now available as a Tasker plugin
 - Weather: new icons and other improvements
 - More layers: now a maximum of 12 layers available
 - Vibration option when a layer changes or is hidden/shown, with custom patterns
 - Detect disconnection from phone to show/hide layers
 - More calendar options: event end date/duration, search period
 - Conditional format strings for dynamic text layers
 - Autohide empty layers
 - Watch-app optimisations and communication improvements

Make sure that you install the new watch-app when prompted. If you have any problems installing, please see the FAQ.

For more information about Tasker, conditionals and other new features, see the user guide.

The full changelog:
 - Wrap text correctly in preview
 - Don't resend same screen
 - Crash editing screen
 - Don't display holding image
 - Don't resend images when not needed
 - Added loading screen with time display + disconnected indicator
 - Improved size/position of font rendering on phone preview screen
 - Added new built-in fonts in the latest firmware
 - Lowercase am/pm mask added
 - Dialog theming issues on gingerbread fixed
 - Option to hide dynamic layer if empty
 - Commas and newlines allowed in text fields
 - Watch-app crash
 - Watch-app optimised in a number of ways
 - New weather masks: wind speed, humdity, cloud, pressure, sunrise/sunset times, time since update
 - Conditionals can now use if/elseif/else
 - Always update plugin content on start
 - Remove blank squares from screen previews
 - Custom vibration patterns
 - Watchapp performance improvement
 - Communication improvements with watch
 - Renamed fonts to match Pebble SDK
 - Crash loading screens from different versions of Canvas
 - Add calendar event end date + duration masks
 - Plugin selection
 - Various other crashes
 - Fix static image/weather refresh/resize/flip
 - Tasker integration (set content and change screens)
 - Fix crash loading malformed .pcs file
 - Show/hide layers when connection lost to phone
 - Conditionals in dynamic text layer format strings
 - Add integer format masks for temperature (weather + sensors)
 - Ambient light sensor added for S4
 - Option to change how far in future calendar searches for events + exclude all-day events
 - Vibrate when layer content changes
 - Max number of layers is now 12
 - Plugin interface v2: per-instance parameters and ability to change screens
 - New masks for time layers to show details of selected timezone
 - New weather icons (thanks Zephyris)
 - Fix issue which may have caused battery drain when using a weather image layer
 - Weather settings screen: configure update interval
 - Weather uses last known location if not available
 - Plugins: detects changes when a new version of a plugin is installed

Wednesday, 17 July 2013

v1.3.3 Released

Canvas v1.3.3 just hit Google Play - hit that update button!

Mainly bugfixes from last week's release, here's the changelog:-

- Display gmail lable dialogue if not selected yet
- Problem loading images
- Crash loading home screen
- Display time/result of last weather update
- Manual update of weather
- Fix watchapp crash when displaying extended ascii symbols
- Allow more characters to be displayed
- Option to flip image colours
- Crash on certain format strings
- Crash re-ordering layers
- Crash if Pebble app not installed
Quite a few people are having problems uploading the Canvas watch-app to Pebble. The progress bar appears to stop half-way across then says "complete". If this happens to you and you can't get it to upload, please go to the main Pebble app and select 'Contact Support', which will generate some logs which may be of use to the Pebble team in diagnosing the issue. Feel free to copy them to me as well.
Edit: the plugins guide is now back up!

Thursday, 11 July 2013

Canvas 1.3.0 Released: images, weather, and plugins!

It's been a while since v1.2.1 was released, and there have been a couple of reasons for this. Firstly, adding support for images and plugins has taken a long time - and secondly I was hoping that Pebble would release a firmware fix to speed up communication between phone and watch so that image transfer is actually practical. Well they did!

The headlines in this release are:
  • Image support: Any layer can be an image. You can have more than one image. You can use any image from the examples supplied, or from your gallery, and can scale/rotate them and choose the dithering settings to get them looking just right (or as just right as a 1-bit image can look) on your Pebble
  • Plugins: You can now add any dynamic content you like (text or image) to any Canvas screen.... provided that you can write a plugin to provide it! See for details on writing plugins for Canvas.
  • Weather: A new dynamic content type (either text or image) which gets the current weather at your location
There are lots of other fixes, additions and behind-the-scenes improvements - see the change-log below.

You will need to upgrade your Pebble firmware to v1.12.0 for this release to work. You will also need to install a new version of the Canvas watch-app - you will be prompted to do this after installing.

The full changelog (which won't fit on  Google Play's 'Recent Changes' page):-

v1.3.0 (11/07/13)
         - Increase max number of layers to 9
         - Format date/time in UK locale on phone (to match what Pebble is capable of)
         - Drag to resize layers
         - Added degrees f mask for temp sensor
         - Now available for tablets
         - Check whether pebble is connected before sending messages
         - Gmail account selection dialog fixed
         - Countdown total hours now correct
         - Implemented new fast messaging features of Pebble firmware v1.12.0 (required for this release)
         - Countdown date/time pickers show correct values
         - Plugin system added (see Now Playing plugin example)
         - Select which calendars to use
         - Avoid Pebble rejecting updates
         - SMS updates promptly
         - Image support (supports supplied images, gallery images, weather and plugins, with scaling/rotation/dithering controls)
         - Weather
         - Recurring calendar events fixed
         - Fixed Several crashes