# Apple Health + Apple Watch Sync (Intervals.icu \<--\> Apple Watch) via BreakAway: Indoor Training

**URL:** <https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358>\
**Category:** External Projects\
**Created:** [29 September 2023 14:20 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358 "2023-09-29T14:20:23Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [29 September 2023 14:20 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/1 "2023-09-29T14:20:23Z")

</div>

Just finished coding this and preliminary testing seems to be working fine to query data from Apple Health and then Sync to selected destinations (Currently only Intervals.icu as Garmin is still broken)

(I don’t really use Apple Health so I’ve been populating it with dummy data and testing the sync)

You can do Bulk Sync (Past Data) or auto-sync each time BreakAway sync with intervals.icu for “Week In Review”

 ![Simulator Screenshot - iPhone 11 - 2023-09-29 at 22.14.18](https://forum.intervals.icu/uploads/default/original/3X/2/c/2c4e0676bc8c1a62e27d79dfbece4b13c24d9ef1.jpeg) ![Simulator Screenshot - iPhone 11 - 2023-09-29 at 22.14.23](https://forum.intervals.icu/uploads/default/original/3X/f/7/f72782dd373881f3edb9ebc1421fca05e4f48f75.png)

Since HRV4Training also supports updating into Apple Health, you can also get it synced as well. (But limited to HRVSDNN only)

Apple App Store Link → [‎BreakAway: Indoor Training App - App Store](https://apple.co/3uWdtxh)

I’ve written a more extensive blog post about it. You can find that here.

> **[BreakAway: Indoor Training App Now Supports Apple Health Sync (BETA)](https://breakaway701849232.wordpress.com/2023/10/06/breakaway-indoor-training-app-now-supports-apple-health-sync-beta/)**
>
> We’re excited to introduce a brand new feature that takes your BreakAway: Indoor Training app experience to the next level! With this update, we’re making it easier than ever to connect…

@Fabriziover perhaps you could test it out w/ your new scale?

Tx

---

<div class="post-metadata">

**Author:** ![Fabriziover](https://forum.intervals.icu/user_avatar/forum.intervals.icu/fabriziover/32/31058_2.png) [@Fabriziover](https://forum.intervals.icu/u/Fabriziover)\
**Post date:** [3 October 2023 15:55 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/2 "2023-10-03T15:55:46Z")

</div>

> [@app4g](#):
>
> perhaps you could test it out w/ your new scale?
> 
> Tx

Thank You very much,  
I’ve already downloaded the beta version, and I’m almost ready to test the synchronization.  
I’m just having trouble with the time available…  
As soon as I have more time I’ll try to do everything and I’ll update you.

---

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [3 October 2023 16:00 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/3 "2023-10-03T16:00:14Z")

</div>

if you have trouble, please use the “LOGCLOUD” setting to get some data.  
TX

---

<div class="post-metadata">

**Author:** ![Fabriziover](https://forum.intervals.icu/user_avatar/forum.intervals.icu/fabriziover/32/31058_2.png) [@Fabriziover](https://forum.intervals.icu/u/Fabriziover)\
**Post date:** [3 October 2023 16:02 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/4 "2023-10-03T16:02:21Z")

</div>

Yes, of course.

---

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [5 October 2023 00:09 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/5 "2023-10-05T00:09:05Z")

</div>

Good News. I’ve managed to track down a situation where users were getting 422 errors from the Sync. Essentially this error is happening due to A (or a few) fields that is chosen to be synced from Apple Health → Intervals.icu but is not present / chosen within intervals.icu list of wellness fields.

This will now show up as an alert indicating which field is missing.

 ![IMG_7780](https://forum.intervals.icu/uploads/default/original/3X/f/c/fc65295f14266f6092eca3888be19e6a7822cc05.jpeg)

eg: Steps field was not selected as one of the fields within intervals.icu

 ![image](https://forum.intervals.icu/uploads/default/original/3X/9/2/9234a6bd7085313a85f3a49cbc5ec76703236836.jpeg)

option:

1. Remove the Field from BreakAway sync Items
2. Add the field within Intervals.icu Wellness

Tx to the BETA tester who reported this.

---

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [5 October 2023 13:14 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/6 "2023-10-05T13:14:25Z")

</div>

Sleep is now added as another parameter that can be synced to intervals.icu  
We will use the “actual” sleep time

```auto
>= iOS16 will be totalSleep = "inBed" - "awake" time
< iOS16 will be totalSleep = time asleep

```

Caveat, if you are a user that has multiple sleep apps all writing to Apple Health App, this may present a challenge as they may have overlapping data. If you find that the total sleep numbers is incorrect, please do contact me so I can see how to sort it out.

edit: based on the Apple docs and what other apps are doing, the moving forward recommendation is to pick one app which would be your default app and have that write the sleep data to Apple Health, remove the rest. This is because Apple currently does not provide the “source priority” hence we can’t filter it).

Tx

---

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [9 October 2023 23:00 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/7 "2023-10-09T23:00:29Z")

</div>

Feature is now available to all users. Apple approved this release.  
get it here → [‎BreakAway: Indoor Training on the App&nbsp;Store](https://apple.co/3uWdtxh)  
Tx

---

<div class="post-metadata">

**Author:** ![R\_M](https://forum.intervals.icu/user_avatar/forum.intervals.icu/r_m/32/27909_2.png) [@R\_M](https://forum.intervals.icu/u/R_M)\
**Post date:** [12 October 2023 06:48 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/8 "2023-10-12T06:48:08Z")

</div>

Hi, any news on the Android side? Any development plans?

Very interested!

Thanks!

---

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [12 October 2023 07:02 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/9 "2023-10-12T07:02:03Z")

</div>

hi. thanks and sorry… I think. I’ve all but completely abandoned this idea for android…

I went the Native Code part in the beginning rather than using a cross platform language. In hindsight, maybe that wasn’t the best idea to start with. Having said that, this made sure that my iPad Mini 2013 still runs smooth w/ it tho. (yeah, I’m using my 10yr old device as my main development device.)

🙏

---

<div class="post-metadata">

**Author:** ![R\_M](https://forum.intervals.icu/user_avatar/forum.intervals.icu/r_m/32/27909_2.png) [@R\_M](https://forum.intervals.icu/u/R_M)\
**Post date:** [12 October 2023 07:14 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/10 "2023-10-12T07:14:39Z")

</div>

Understood… Let’s see what the future brings… 😉  
Ciao!

---

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [16 October 2023 00:21 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/11 "2023-10-16T00:21:20Z")

</div>

> [@app4g](#):
>
> This will now show up as an alert indicating which field is missing.
> 
> ![IMG_7780](https://forum.intervals.icu/uploads/default/original/3X/f/c/fc65295f14266f6092eca3888be19e6a7822cc05.jpeg)

Since this post, it looks like @david has done some magic up in Intervals.icu’s end. If the Field is Legit (meaning, it’s a valid field within Intervals.icu eg: "Steps vs “Ssteps”), even tho it’s not a pre-selected field by the user, intervals.icu will still accept the updated value. It will just not be shown/show up in Intervals.icu calendar / Wellness update prompt)

---

<div class="post-metadata">

**Author:** ![mingjunliu](https://forum.intervals.icu/user_avatar/forum.intervals.icu/mingjunliu/32/27934_2.png) [@mingjunliu](https://forum.intervals.icu/u/mingjunliu)\
**Post date:** [28 October 2023 04:26 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/12 "2023-10-28T04:26:37Z")

</div>

![image](https://forum.intervals.icu/uploads/default/original/3X/7/a/7a97c94f189ec2d967efaff413183be352e4e591.png)  
It’s a weird sleep hour; it looks like double the time.

---

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [28 October 2023 04:47 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/13 "2023-10-28T04:47:44Z")

</div>

Can you please check how many sources of data (show all data and sources) you have in Apple Health? Example here, I have 2 (i only downloaded Sleepzy for testing. I’m not using it daily. Daily it’s Garmin)

 ![Screenshot 2023-10-28 at 12.44.02 PM](https://forum.intervals.icu/uploads/default/original/3X/a/b/ab1114d0886b97cc0eb0dd620faf35a981bc449c.jpeg)

Here you see the Garmin data.

 ![Screenshot 2023-10-28 at 12.44.14 PM](https://forum.intervals.icu/uploads/default/original/3X/3/7/3709ce09ce37a83854e575a03de9ee8b8c5d976a.jpeg)

Sleep Time = Time In Bed - Time Awake  
7h50m(inBed) - 6m(Awake) = 7h44m

 ![Screenshot 2023-10-28 at 12.44.33 PM](https://forum.intervals.icu/uploads/default/original/3X/9/7/979a790eaf27380381fd4381ca0adee0087d577c.png)

It’s recommended to only have 1 primary sleep data and remove the others.

if you are willing, it would also be helpful to get some logs for me, this way I can see what is happening.

How to get logs.

1. Go to SETTINGS tab
2. scroll to the bottom, at the developer option, put in “LOGCLOUD” w/o quotes
3. do the sync, then it will generate a log file called “logcloud.txt” in the HISTORY TAB.
4. tap on it and send it to me via the email in “Help & Support”

TX!

---

<div class="post-metadata">

**Author:** ![mingjunliu](https://forum.intervals.icu/user_avatar/forum.intervals.icu/mingjunliu/32/27934_2.png) [@mingjunliu](https://forum.intervals.icu/u/mingjunliu)\
**Post date:** [28 October 2023 19:24 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/14 "2023-10-28T19:24:02Z")

</div>

Thanks for your response!  
The problem is, just like you mentioned, I have two data sources. My iPhone will log the time in bed automatically, and it seems like IOS will ignore the extra data but the intervals.icu not.  
Thank you!

---

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [28 October 2023 22:13 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/15 "2023-10-28T22:13:56Z")

</div>

it’s not that intervals.icu will ignore. it’s actually what Apple Health provides and unfortunately, Apple doesn’t provide a way to filter out the data prior to sending it. (for Sleep it doesn’t but for other things like step it will)

Are you using any other app (like sleepzy) or an Apple Watch or the data is coming from your iPhone itself?

I just experimented and I found that as soon as I enabled Apple “Sleep schedules” then I would have the iPhone as one of the sleep data sources.

my personal opinion, after reading about how the iPhone collects sleep data, I think I will turn it off. It just tracks when I dont’ touch/pickup the phone as when I am asleep.

---

<div class="post-metadata">

**Author:** ![mingjunliu](https://forum.intervals.icu/user_avatar/forum.intervals.icu/mingjunliu/32/27934_2.png) [@mingjunliu](https://forum.intervals.icu/u/mingjunliu)\
**Post date:** [28 October 2023 22:37 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/16 "2023-10-28T22:37:39Z")

</div>

Yeah, you are right; at the time of the previous reply, I figured out how to turn it off. I forgot to mention that point, lol.  
Thank you!

---

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [28 October 2023 22:39 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/17 "2023-10-28T22:39:12Z")

</div>

so now it works correct? YOu could do a sync again and check it out. (Intervals.icu will use the newer data anyways and no duplicates)

Tx

---

<div class="post-metadata">

**Author:** ![mingjunliu](https://forum.intervals.icu/user_avatar/forum.intervals.icu/mingjunliu/32/27934_2.png) [@mingjunliu](https://forum.intervals.icu/u/mingjunliu)\
**Post date:** [29 October 2023 00:15 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/18 "2023-10-29T00:15:43Z")

</div>

Yeah, now it is correct 😀

---

<div class="post-metadata">

**Author:** ![LSchaeff](https://forum.intervals.icu/user_avatar/forum.intervals.icu/lschaeff/32/25896_2.png) [@LSchaeff](https://forum.intervals.icu/u/LSchaeff)\
**Post date:** [29 June 2024 16:33 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/19 "2024-06-29T16:33:59Z")

</div>

Tried to use this app today. As soon as I turn on the intervals sync the app sits for about 5 seconds then crashes. Confirmed turning off sync to intervals solves the crash. Any thoughts?

---

<div class="post-metadata">

**Author:** ![app4g](https://forum.intervals.icu/user_avatar/forum.intervals.icu/app4g/32/41800_2.png) [@app4g](https://forum.intervals.icu/u/app4g)\
**Post date:** [29 June 2024 21:38 UTC](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358/20 "2024-06-29T21:38:57Z")

</div>

Just checked Apple Crash Reports and there’s nothing there. ☹  
So I’ll need your help to figure out what is causing the crash. The 5s is the app doing it’s initial sync w/ intervals.icu

let’s see if this will be able to capture the crash:

1. Go to SETTINGS tab
2. scroll to the bottom, at the developer option, put in “LOGCLOUD” w/o quotes
3. do the sync, then it will generate a log file called “logcloud.txt” in the HISTORY TAB.
4. tap on it and send it to me via the email in “Help & Support” (app.4g at gmail dot com)

it will also help if you enable sending crash reports to developers. 🙏

 ![Screenshot 2024-06-30 at 5.35.15 AM](https://forum.intervals.icu/uploads/default/original/3X/e/0/e05d3e9a4b2ef270b7cb3495dc141c0f6a4de3c0.jpeg)

(within the same screen - if you tap on “Analytics Data” then search for TacxBle-xxxx, that’s the crash report. You could also send that to me and I’ll find out what’s happening and I’ll fix it.

ps: Its possible there’s something on your calendar that the app can’t handle gracefully, if you move the workouts to another week temporarily, will the crash go away?

[Next page](https://forum.intervals.icu/t/apple-health-apple-watch-sync-intervals-icu-apple-watch-via-breakaway-indoor-training/50358.md?page=2)
