/docker-connectiq

Garmin Tools - Connect IQ SDK and Eclipse IDE plugins as a Docker container

Primary LanguageDockerfileMIT LicenseMIT

docker-connectiq

GitHub Build Docker Hub Docker Hub Docker Hub

Installation of Garmin Tools Connect IQ SDK and Eclipse IDE plugins as a Docker container.

Docker image is available through docker hub as kalemena/connectiq

Usage

Docker Image pull / build / run

$ make pull
or
$ make build
or
$ make console
💡

Command lines run.sh, make console, or make eclipse will map current folder into /workspace of the container instance.
For persistence reasons, any file or created project should be done in /workspace folder.

Generate a certificate

$ make console
$$ cd /workspace
$$ ./generate-certificate.sh

Building app in Console

$ make console
$$ cd /opt/ciq/samples/Drawable/
$$ monkeyc -d vivoactive3 -f ./monkey.jungle -o drawable.prg -y ~/eclipse-workspace/developer_key.der
$$ connectiq &
$$ monkeydo drawable.prg vivoactive3
Result of above commands

Sample app Drawable

Building app in Eclipse IDE

$ make eclipse
Menu File ⇒ Import ⇒ Existing Projects into Workspace

eclipse import project

Imported Project

eclipse Drawable project

Launch Configuration

eclipse launch config

Result of above commands

Sample app Drawable

Authoring app in Eclipse IDE

$ make eclipse
  • In Eclipse, Menu File ⇒ New ⇒ Project ⇒ Connect IQ Project

  • Make sure to create project under /workspace/…​ hierarchy

  • Then select Widget and Next

  • Then for example, Vivoactive 3 as target

  • Then for example, Sensor or Sensor History as features

  • Once project is loaded, you can run like previous example to see the monkey default app display

Upload to Watch

  • On Ubuntu OS

  • Connect the watch using original cable

  • Wait for about 30s

  • Watch screen should show it is mounted and charging

  • In File explorer, see GARMIN device and browse to GARMIN/APPS

  • Copy PRG file built into this folder

  • Unmount GARMIN icon on watch

  • Watch should be showing Verifying Connect IQ Apps

  • Swipe up or down, the app should be visible

Integrations