Xadow Pebble Time Adapter

Introduction

The introduction of RePhone (Xadow) modules makes your smart watch even smarter. Based on the new smart accessory port on the back of Pebble Time, we integrate the slim and small Rephone modules – Xadow GPS v2 and Xadow NFC v2, into Pebble’s existing ecosystem, to help improve its capability from the perspective of built-in electronics. Xadow Pebble Time Adapter enables the RePhone(Xadow) modules to talk to the Pebble Time via the Smartstrap interface using One-wire serial protocol.

Specifications

The ‘GND’ and ‘PWR’on the back frame means you can charge your Pebble Time without taking the shell off.

Hardware Overview

Assembling process

In daily use the modules are evenly placed at each side of the watch, and interconnected with FPC cables. The connections between the module and the adapter are specially designed to be an extendable form so that unexpected connection pull-off may be avoided. The charging ports of Pebble Time are still accessible on the back of adapter for daily charges of watch.

A schematic drawing of the assembling process of the RePhone Strap Kit for Pebble Time is given below

Download the Xadow APP for Pebble Time

You can follow the instructions to download the Xadow APP for Pebble Time, access the GPS information and Tag ID on your Pebble Time.

The Demo App can be downloaded from https://github.com/Seeed-Studio/Xadow_Strap/raw/master/build/pebbleapp_jack.pbw. You can download it from your smart phone or send it from your PC to smart phone. Then select to open it with “Pebble Time” App in your phone. You will have an option to install the demo App into your Pebble Time.

Programming Guide

Talking to the Adapter

The firmware of the adapter implements the protocol described on pebble’s official documentation: http://developer.getpebble.com/guides/hardware/smartstrap-protocol/

So the resources which can be called from the watchapp side are as following:

Service Attribute R/W Data Type Data
0x0 Raw Data 0x0 Raw Data RW uint8 *buffer No handler in adapter side, leave the expandability for adapter firmware programmer
0x2003 Battery Service 0x1001 Get voltage of the battery R uint16 The voltage of the battery for strap in Volt with a precision of 1/100. For example, the voltage is 3.70V, which would be specified as 370.
0x2003 Battery Service 0x1002 Enable or disable charging pebble with the battery of strap RW uint8 0: Don't charge pebble. 1: Charge pebble.
0x2001 Location and Navigation Service 0x0001 Location R sint32[2] The current longitude and latitude in degrees with a precision of 1/10^7. The latitude comes before the longitude in the data. For example, Pebble HQ is at (37.4400662, -122.1583808), which would be specified as {374400662, -1221583808}.
0x2001 Location and Navigation Service 0x0003 Speed R uint16 The current speed in meters per second with a precision of 1/100. For example, 1.5 m/s would be specified as 150.
0x2001 Location and Navigation Service 0x1001 Altitude R uint16 The current altitude in meters with a precision of 1/100. For example, 100m would be specified as 10000.
0x2001 Location and Navigation Service 0x0101 GPS Satellites R uint8 The number of GPS satellites (typically reported via NMEA. Note that this number is for satellites in view.
0x2001 Location and Navigation Service 0x0102 GPS Fix Quality R uint8 The quality of the GPS fix (reported via NMEA). The possible values are listed in the NMEA specification.
0x1E01 NFC Service 0x1001 Get UID of a NFC tag R uint8 * The UID will be returned with variable length which can be indicated in the SmartstrapReadHandler with parameter length.
This attribute can be notified in SmartstrapNotifyHandler.
0x1E01 NFC Service 0x1002 Read NDEF Data R uint8 * The NDEF data will be returned with variable length which can be indicated in the SmartstrapReadHandler with parameter length.
0x1E01 NFC Service 0x1003 Write NDEF Data W uint8 * Write a uint8 buffer into NFC tag
0x1E01 NFC Service 0x1004 Erase NDEF Data W any type Write any content or empty to trigger the erasing.

The source code of the demo pebble app can be downloaded at github: https://github.com/Seeed-Studio/Xadow_Strap

This app is only for demonstration of partial attribute call, please feel free to imagine your own fantastic pebble app based on the ability of GPS, NFC and more on.

Programming the Adapter

The adapter is built with LPC11U35 and running mbed software inside. The initial firmware is located at mbed.org. Please take a look at https://developer.mbed.org/teams/Seeed/code/xadow_smartstrap_for_pebble/

The eagle schematic of the adapter can be downloaded here:

After building the firmware binary, you can follow the steps below to flash the binary into the adapter.

1) Hacking a USB Cable and solder the wires to the soldering pads accordingly.

2) Make sure the battery disconnected and plug the USB into PC.

3) Short the “ISP” and “GND” pins.

4) Plug the battery on to power on the adapter

5) There will be a usb drive at your PC, open it and delete anything inside the disk, then copy the firmware binary into the disk.

6) Power off then on, the firmware is updated.

RePhone Community

We’ve been looking for a better place where our backers (RePhone Users) can sit together, warmly and comfortably, have conversations about RePhone, discuss technical problems, share ideas/projects, and give feedback on the modules’ development in the future. And then here we go, the RePhone Community.

Now join us in the RePhone Community! Together we seek answers, make interesting stuff, care about each other, and share our experiences.

Resources

Help us make it better

Thank you for choosing Seeed. A couple of months ago we initiated a project to improve our documentation system. What you are looking at now is the first edition of the new documentation system. Comparing to the old one, here is the progresses that we made:

  • Replaced the old documentation system with a new one that was developed from Mkdocs, a more widely used and cooler tool to develop documentation system.
  • Integrated the documentation system with our official website, now you can go to Bazaar and other section like Forum and Community more conveniently.
  • Reviewed and rewrote documents for hundreds of products for the system’s first edition, and will continue migrate documents from old wiki to the new one.

An easy-to-use instruction is as important as the product itself. We are expecting this new system will improve your experience when using Seeed’s products. However since this is the first edition, there are still many things need to improve, if you have any suggestions or findings, you are most welcome to submit the amended version as our contributor or give us suggestions in the survey below, Please don’t forget to leave your email address so that we can reply.

Happy hacking