|
1 | 1 | # iHIIT
|
2 | 2 |
|
3 |
| -High Intensity Interval Training (or any other repetition based) App for your Garmin device. |
| 3 | +High Intensity Interval Training (HIIT or any other repetition based) App for your Garmin device. This app was written originally for my Forerunner 235 and it is intented to maintain compatibility with all those older devices which do not have the HIIT activity type and therefore can not be syncronized with Garmin's built-in HIIT workouts. This app is and will always remain free. |
4 | 4 |
|
5 | 5 | ## How to obtain it?
|
6 | 6 |
|
7 |
| -You can install the app on your device through the IQ app store. This is a [direct link](https://apps.garmin.com/en-US/apps/bc02f0f2-9d7d-4476-8aaf-ef99f2e78c33) to the app page. |
| 7 | +You can install the app on your device through the Connect IQ app. Just search for "iHIIT" and look for the below icon. This is a [direct link](https://apps.garmin.com/en-US/apps/bc02f0f2-9d7d-4476-8aaf-ef99f2e78c33) to the app page. |
| 8 | + |
| 9 | + |
| 10 | + |
| 11 | +## What devices are compatible? |
| 12 | + |
| 13 | +Please use the [Compatible Devices](https://apps.garmin.com/apps/bc02f0f2-9d7d-4476-8aaf-ef99f2e78c33?tid=1) page and check if your device is listed there. You can also take a look at this [device list](./docs/devices.md) which is used as a checklist to add new devices to the application. |
8 | 14 |
|
9 | 15 | ## How does it work?
|
10 | 16 |
|
11 |
| -You can configure up to 5 workouts. Each workout can contain up to 12 exercises with a set exercise duration and a rest duration. Additionally, you can configure how many times the workout will repeat the exercises (repetitions) and the time to pause between repetitions. |
| 17 | +You can configure up to 5 workouts. Each workout can contain up to 20 exercises with a set exercise duration and a rest duration. Additionally, you can configure how many times the workout will repeat the set of exercises (repetitions) and the time to pause between repetitions. |
12 | 18 |
|
13 |
| -When you start the app on your watch it will propose you the configured workouts. You can scroll through the exercises with the up/down buttons and select one with the activity button. Once selected, iHIIT will lead you through your configured exercises alternating between exercise and rest periods. |
| 19 | +When you start the app on your watch it will propose you the configured workouts. You can scroll through the exercises with the up/down buttons and select one with the activity button. |
14 | 20 |
|
15 |
| -## How to configure iHIIT? |
| 21 | + |
16 | 22 |
|
17 |
| -The easiest way to configure iHIIT is through the use the Garmin ConnctIQ application installed on your mobile phone. Alternatively, you can use the GarminExpress application installed on your PC. |
| 23 | +The exercise select screen, as shown on the screenshot above, shows you the name of the workout together with the details of that workout configured by you: |
18 | 24 |
|
19 |
| -**On Garmin ConnctIQ:** |
20 |
| -Open "My Device Apps" and Select the `iHIIT` application from the list of apps installed on your device. Hit the `Settings` button to open the configuration window. Enter/change your configuration and click `Save`. Your configuration will be immediately transferred to your device. |
| 25 | +- `Exercises: [# of Repetitions] X [# of Exercises]` - Shows how many exercises you will be doing through how many repetitions. |
| 26 | +- `W: [Exercise duration] | [Rest duration] | [Pause duration]` - The duration in seconds of each exercise, the rest between them and the length of the pause between two consecutive repetitions. |
| 27 | +- `Duration: [Workout duration]` - Displays the overall duration of the workout. |
21 | 28 |
|
22 |
| -**On GarminExpress:** |
23 |
| -Select the `iHIIT` application from the list of IQ Apps installed on your device. Hit the `...` button next to the name of of the application to open the configuration window. Enter/change your configuration and click `Save`. Your configuration will be immediately transferred to your device. |
| 29 | +Once the workout is selected, iHIIT will lead you through your configured exercises alternating between exercise and rest periods. The app uses the KISS (Keep It Simple, Stupid!) principle for the interface purposefully. When you are doing high intensity workout you do not have the time to look at your watch. So do not expect fancy graphs showing HR histograms. You will encounter 3 screens: Work, rest, and pause. |
24 | 30 |
|
25 |
| -For each workout you can configure the following: |
| 31 | +The `Work` screen displays only the name of the exercise you are doing and a big countdown number in the center showing how many seconds you have remaning. |
26 | 32 |
|
27 |
| -- Title |
28 |
| -- Enabled (Yes/No) |
29 |
| -- Exercise duration (seconds) |
30 |
| -- Rest between exercises (seconds) |
31 |
| -- Number of repetitions (number of times the set of exercises will be repeated) |
32 |
| -- Rest between repetitions (seconds) |
33 |
| -- Name of the exercises (1-12) |
| 33 | + |
34 | 34 |
|
35 |
| -Exercises must be consecutive. The first blank exercise title will indicate the end of the workout. |
| 35 | +The `Rest` screen displays: |
36 | 36 |
|
37 |
| -## Bugs? Enhancements? Contributions |
| 37 | +- `Next Up` - the name of the next exercise that is coming up |
| 38 | +- the countdown showing how many seconds remain to rest |
| 39 | +- `R: [Current repetition] / [Total number of repetitions]` |
| 40 | +- `E: [Current exercise] / [Total number of exercises]` |
| 41 | + |
| 42 | + |
38 | 43 |
|
39 |
| -Please use github for [Issues & Enhancement requests](https://github.com/adamjakab/iHIIT/issues). |
| 44 | +The `Pause` screen shown between consecutive repetitions displays the number of repetitions completed out of the total number of repetitions as well as the countdown of the time remaining until the start of the next repetition. |
40 | 45 |
|
41 |
| -[Contributions](https://github.com/adamjakab/iHIIT) are absolutely welcome! |
| 46 | + |
42 | 47 |
|
43 |
| -If you haven't got a github account write a review or use the 'Contact Developer' link on the right under 'Additional information'. |
| 48 | +Additionally, all of the above screens will display the current heart rate below the heart icon on the top of the screen. |
44 | 49 |
|
45 |
| -## Development |
| 50 | +A beep and a vibration will let you know when you are changing from work to rest and vice versa. This can now be configured to be swithed on/off in the application settings. |
46 | 51 |
|
47 |
| -- Follow the SDK setup guide [here](https://developer.garmin.com/connect-iq/sdk/) |
48 |
| -- install Java JRE/JDK: |
| 52 | +At any moment during a running workout you can press the `activity` or the `back` button to bring up the options menu that will allow you to `Save`, `Discard` or `Resume` the workout. Whilst the menu is shown your workout will remain paused. |
49 | 53 |
|
50 |
| -```bash |
51 |
| - sudo apt install openjdk-18-jre-headless default-jre |
52 |
| - sudo apt install openjdk-18-jdk --fix-missing |
53 |
| -``` |
| 54 | + |
54 | 55 |
|
55 |
| -- Set `Monkey C: Type Check Level` to `Off` if you get type check errors. (it's better to fix them ;) |
56 |
| -- Use _Ctrl + Shift + P_ to invoke `Monkey C` commands. |
| 56 | +## How to configure iHIIT? |
57 | 57 |
|
58 |
| -Note: Note that saving settings inside groups does not work! There is a bug: |
59 |
| -My tests show that it works the first time in ConnectIQ app but not after. |
60 |
| -https://www.google.com/url?sa=t&source=web&rct=j&opi=89978449&url=https://forums.garmin.com/developer/connect-iq/f/discussion/289743/settings-in-groups-are-not-persisted&ved=2ahUKEwiKu4vc_POGAxXM-AIHHV6OCHQQFnoECB0QAQ&usg=AOvVaw2vo5c1OfK5KCKtMFwv4f1C |
| 58 | +The easiest way to configure iHIIT is through the use the Garmin ConnctIQ application installed on your mobile phone. Alternatively, you can use the GarminExpress application installed on your PC. |
61 | 59 |
|
62 |
| -List of resources: |
| 60 | +**On Garmin ConnctIQ:** |
| 61 | +Open "My Device Apps" and Select the `iHIIT` application from the list of apps installed on your device. Hit the `Settings` button to open the configuration window. Enter/change your configuration and click `Save`. Your configuration will be immediately transferred to your device. |
63 | 62 |
|
64 |
| -- https://developer.garmin.com/connect-iq/api-docs/Toybox/Lang.html |
65 |
| -- https://developer.garmin.com/connect-iq/core-topics/persisting-data/ |
| 63 | +**On GarminExpress:** |
| 64 | +Select the `iHIIT` application from the list of IQ Apps installed on your device. Hit the `...` button next to the name of of the application to open the configuration window. Enter/change your configuration and click `Save`. Your configuration will be immediately transferred to your device. |
66 | 65 |
|
67 |
| -## Device list and notes |
| 66 | +Independently from how you are configuring the application you will be able to set the following options: |
68 | 67 |
|
69 |
| -This [device list](./docs/devices.md) is intended for development checklist purposes. |
| 68 | + |
70 | 69 |
|
71 |
| -## Contributions |
| 70 | +### Application configuration options |
72 | 71 |
|
73 |
| -Always welcome! |
| 72 | +- Use sound: When enabled the app will use sound to warn you 3 seconds before time is up (both in `Work` and in `Rest` phase). |
| 73 | +- Use vibration: When enabled the app will use vibration to warn you 3 seconds before time is up (both in `Work` and in `Rest` phase). |
| 74 | + |
| 75 | +### Workout configuration options |
| 76 | + |
| 77 | +For each workout you can configure the following options: |
| 78 | + |
| 79 | +- `Title` - The title of the workout that will show up on the workout selection screen. |
| 80 | +- `Enabled` - Only enabled workouts will be shown on the workout selection screen. |
| 81 | +- `Exercise duration(s)` - The duration in seconds of each exercise. |
| 82 | +- `Rest duration(s)` - the duration in seconds of the rest period between exercises. |
| 83 | +- `Repetitions(s)` - The number of times the set of exercises will be repeated during the workout. |
| 84 | +- `Pause between repetitions(s)` - The pause in seconds you will have between the end of one and the beginning of another repetition. |
| 85 | +- `Exercise 1 - 20` - The names of the exercises configured for this workout. Please note that the naming of the exercises must be consecutive. The first blank exercise title will indicate the end of the workout. |
| 86 | + |
| 87 | +## Bugs? Enhancements? Contributions |
74 | 88 |
|
75 |
| -## Testing |
| 89 | +Please use github for [Issues & enhancement requests](https://github.com/adamjakab/iHIIT/issues). |
76 | 90 |
|
77 |
| -```bash |
78 |
| -docker pull ghcr.io/adamjakab/connectiq-builder:latest |
79 |
| -docker run --rm -v /mnt/Code/Garmin/iHIIT:/iHIIT -w /iHIIT ghcr.io/adamjakab/connectiq-builder:latest /scripts/test.sh --type-check-level=2 |
80 |
| -``` |
| 91 | +Contributions are always welcome! |
0 commit comments