Skip to content

Commit

Permalink
Merge branch 'develop' of JF/PineTime into master
Browse files Browse the repository at this point in the history
  • Loading branch information
JF002 authored and Gitea committed Jan 23, 2021
2 parents 1d940af + 84b509e commit 76ab14f
Show file tree
Hide file tree
Showing 317 changed files with 12,185 additions and 468 deletions.
18 changes: 18 additions & 0 deletions .gitpod.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
image:
file: docker/.gitpod.Dockerfile
github:
prebuilds:
# enable for the master/default branch (defaults to true)
master: true
# enable for all branches in this repo (defaults to false)
branches: false
# enable for pull requests coming from this repo (defaults to true)
pullRequests: false
# enable for pull requests coming from forks (defaults to false)
pullRequestsFromForks: false
# add a "Review in Gitpod" button as a comment to pull requests (defaults to true)
addComment: true
# add a "Review in Gitpod" button to pull requests (defaults to false)
addBadge: false
# add a label once the prebuild is ready to pull requests (defaults to false)
addLabel: false #prebuilt-in-gitpod
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 3.10)
project(pinetime VERSION 0.10.0 LANGUAGES C CXX ASM)
project(pinetime VERSION 0.11.0 LANGUAGES C CXX ASM)

set(NRF_TARGET "nrf52")

Expand Down
118 changes: 118 additions & 0 deletions doc/NavigationService.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
# Navigation Service
## Introduction
The navigation ble service provides 4 characteristics to allow the the watch to display navigation instructions from a companion application. The intended purpose is when performing some outdoor activities, for example running or cycling.

The 4 characteristics are:
flag (string) - Upcoming icon name
narrative (string) - Textual description of instruction
manDist (string) - Manouvre Distance, the distance to the upcoming change
progress (uint8) - Percent complete of total route, value 0-100

## Service
The service UUID is c7e60001-78fc-48fe-8e23-433b3a1942d0

## Characteristics
## Flags (UUID c7e60002-78fc-48fe-8e23-433b3a1942d0)
All included icons are from pure-maps, which provides the actual routing from the client. The icon names ultimately come from the mapbox project "direction-icons", See https://github.com/rinigus/pure-maps/tree/master/qml/icons/navigation See the end of this document for the full lsit of supported icon names.

## Narrative (UUID c7e60003-78fc-48fe-8e23-433b3a1942d0)
This is a client supplied string describing the upcoming instruction such as "At the roundabout take the first exit".

## Man Dist (UUID c7e60004-78fc-48fe-8e23-433b3a1942d0)
This is a short string describing the distance to the upcoming instruction such as "50 m".

## Progress (UUID c7e60001=5-78fc-48fe-8e23-433b3a1942d0)
The percent complete in a uint8. The watch displays this as an overall progress in a progress bar.

## Full icon list
* arrive
* arrive-left
* arrive-right
* arrive-straight
* close
* continue
* continue-left
* continue-right
* continue-slight-left
* continue-slight-right
* continue-straight
* continue-uturn
* depart
* depart-left
* depart-right
* depart-straight
* end-of-road-left
* end-of-road-right
* ferry
* flag
* fork
* fork-left
* fork-right
* fork-slight-left
* fork-slight-right
* fork-straight
* invalid
* invalid-left
* invalid-right
* invalid-slight-left
* invalid-slight-right
* invalid-straight
* invalid-uturn
* merge-left
* merge-right
* merge-slight-left
* merge-slight-right
* merge-straight
* new-name-left
* new-name-right
* new-name-sharp-left
* new-name-sharp-right
* new-name-slight-left
* new-name-slight-right
* new-name-straight
* notification-left
* notification-right
* notification-sharp-left
* notification-sharp-right
* notification-slight-left
* notification-slight-right
* notification-straight
* off-ramp-left
* off-ramp-right
* off-ramp-sharp-left
* off-ramp-sharp-right
* off-ramp-slight-left
* off-ramp-slight-right
* off-ramp-straight
* on-ramp-left
* on-ramp-right
* on-ramp-sharp-left
* on-ramp-sharp-right
* on-ramp-slight-left
* on-ramp-slight-right
* on-ramp-straight
* rotary
* rotary-left
* rotary-right
* rotary-sharp-left
* rotary-sharp-right
* rotary-slight-left
* rotary-slight-right
* rotary-straight
* roundabout
* roundabout-left
* roundabout-right
* roundabout-sharp-left
* roundabout-sharp-right
* roundabout-slight-left
* roundabout-slight-right
* roundabout-straight
* turn-left
* turn-right
* turn-sharp-left
* turn-sharp-right
* turn-slight-left
* turn-slight-right
* turn-stright
* updown
* uturn
23 changes: 23 additions & 0 deletions doc/ble.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,29 @@ If **CTS** is detected, it'll request the current time to the companion applicat

![BLE connection sequence diagram](ble/connection_sequence.png "BLE connection sequence diagram")

## BLE UUIDs
When possible, InfiniTime tries to implement BLE services defined by the BLE specification.

When the service does not exist in the BLE specification, InfiniTime implement custom services. As all BLE services, custom services are identified by a UUID. Here is how to define the UUID of custom services in InfiniTime:

```
- Base UUID : xxxxxxxx-78fc-48fe-8e23-433b3a1942d0
- Service UUID : SSSS0000-78fc-48fe-8e23-433b3a1942d0 where SSSS is the service ID
- Characteristic UUID : SSSSCCCC-78fc-48fe-8e23-433b3a1942d0 where CCCC is the characteristic ID for the service SSSS and is different than 0
```

The following custom services are implemented in InfiniTime:

- Since InfiniTime 0.8:
```
* Music Service : 00000000-78fc-48fe-8e23-433b3a1942d0
```

- Since InfiniTime 0.11:
```
* Navigation Service : 00010000-78fc-48fe-8e23-433b3a1942d0
```

## BLE services
[List of standard BLE services](https://www.bluetooth.com/specifications/gatt/services/)

Expand Down
6 changes: 3 additions & 3 deletions doc/openOCD.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,17 +89,17 @@ reset
## Examples
### Flash bootloader and application
```
openocd -f ./openocd-stlink.cfg -f ./flash_bootloader_app.ocd
openocd -f ./openocd-stlink.ocd -f ./flash_bootloader_app.ocd
```

### Flash graphics flasher
```
openocd -f ./openocd-stlink.cfg -f ./flash_graphics.ocd
openocd -f ./openocd-stlink.ocd -f ./flash_graphics.ocd
```

## Connect the STLinkV2 to the PineTime
Here is an example using the pogo pins:
![SWD pinout](../images/swd_pinout.jpg)
![Pogo pins](../images/pogopins.jpg)

You can find more information about the SWD wiring [on the wiki](https://wiki.pine64.org/index.php?title=PineTime_devkit_wiring).
You can find more information about the SWD wiring [on the wiki](https://wiki.pine64.org/index.php?title=PineTime_devkit_wiring).
39 changes: 39 additions & 0 deletions docker/.gitpod.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
FROM gitpod/workspace-full

USER root
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update -qq \
&& apt-get install -y \
# x86_64 / generic packages
bash \
build-essential \
cmake \
git \
make \
python3 \
python3-pip \
tar \
unzip \
wget \
# aarch64 packages
libffi-dev \
libssl-dev \
python3-dev \
&& rm -rf /var/cache/apt/* /var/lib/apt/lists/*;

# Needs to be installed as root
RUN pip3 install adafruit-nrfutil

COPY docker/build.sh /opt/
# Lets get each in a separate docker layer for better downloads
# GCC
RUN bash -c "source /opt/build.sh; GetGcc;"
# NrfSdk
RUN bash -c "source /opt/build.sh; GetNrfSdk;"
# McuBoot
RUN bash -c "source /opt/build.sh; GetMcuBoot;"

# Link the default checkout workspace in to the default $SOURCES_DIR
RUN ln -s /workspace/Pinetime /sources

USER gitpod
Loading

0 comments on commit 76ab14f

Please sign in to comment.