How to sync iCal calendar subscriptions to MobileMe and the iPhone
iCal allows you to subscribe to shared calendars, like holidays and sports schedules, but these calendar subscriptions don’t sync to MobileMe and the iPhone. This tutorial explains how you can overcome this limitation with a little help from BusySync.
Subscribing to calendars in iCal
iCal allows you to subscribe to calendars by selecting Find Shared Calendars from the Calendar menu.
This directs you to Apple’s web-site where you can choose from a wide variety of calendars to subscribe to.
When you subscribe to one of these calendars, you’re actually subscribing to a read-only “.ics” file on a WebDAV server.
Once subscribed to a WebDAV calendar, it shows up in iCal under the Subscriptions heading.
Subscriptions don’t sync to MobileMe and the iPhone
Unfortunately, iCal subscriptions do not sync to MobileMe. And, if you’re syncing your iPhone wirelessly through MobileMe, the subscriptions will not sync to your iPhone. iCal will only sync local calendars listed under the Calendars header, and will not sync any of the calendars listed under the Subscriptions header.
You can work around this limitation with BusySync. Following are step-by-step instructions on how to do it.
BusySync Publish and Subscribe
BusySync is a background app that allows you to sync iCal calendars with Google Calendar, and sync calendars with others on your LAN. It uses a publish and subscribe model similar to iCal, with a few key differences:
- Calendar subscriptions can be read-write, as well as read-only.
- BusySync calendar subscriptions appear as local calendars, not subscriptions.
Since BusySync calendar subscriptions are considered local calendars, iCal will sync them to MobileMe and the iPhone. So, the trick is to setup all of your WebDAV calendar subscriptions through BusySync.
Following are instructions on how to use BusySync to sync WebDAV calendars through Google Calendar. Similar instructions for using BusySync to sync WebDAV calendars over your LAN or with another user account on your Mac are at the end.
Subscribing to WebDAV calendars on Google Calendar
First, you need to subscribe to the WebDAV calendar on Google Calendar by entering the calendar URL. If you’re already subscribed to that calendar in iCal, right-click on the calendar name and choose Copy URL to Clipboard. Then delete the calendar from iCal.
Next, on Google Calendar, in the Other calendars section, click the Add link and choose Add by URL.
Then paste the URL in the Public Calendar Address field and click Add.
The calendar subscription will show up in the list of Other calendars in Google Calendar.
Once the calendar is subscribed to on Google Calendar, you can now sync it to iCal with BusySync.
Open the BusySync prefpane, and select the Google tab. A list of calendars that exist in iCal will appear on the left, and a list of calendars that exist on Google Calendar will appear on the right. Check the US Holidays calendar on the right to subscribe to it.
A few moments later, the calendar will appear in iCal under the Calendars header, as if it were a local read-write calendar.
And this calendar will sync to MobileMe and the iPhone.
If you don’t use Google Calendar, you can achieve the same results with BusySync on your LAN, or with another user account on the same Mac, as follows.
Subscribing to WebDAV calendars over the LAN
For this example, we have two users -- Mary and Fred. Mary is syncing with MobileMe, and Fred is not. Therefore, Fred will subscribe to the WebDAV calendars in iCal, and republish them on the LAN with BusySync. Mary will then subscribe to Fred’s calendars with BusySync, where they will show up as local calendars. Note: Fred and Mary can be on separate computers on the LAN, or separate user accounts on the same Mac. The process is the same in both scenarios.
In iCal, Fred subscribes to the US Holidays WebDAV calendar and it shows up under the Subscriptions header.
Next, Fred publishes this calendar over the LAN with BusySync by opening the BusySync prefpane, selecting the Publish tab, and clicking the US Holidays calendar.
Then, Mary subscribes to this calendar by opening the BusySync prefpane, selecting the Subscribe tab and clicking Fred’s US Holidays calendar.
A few moments later, the calendar will appear in Mary’s iCal under the Calendars header, as if it were a local read-write calendar.
And this calendar will sync to MobileMe and the iPhone.
This solutions works also for the birthday calendar?
Posted by: Gabriele | September 30, 2008 at 12:21 AM
It does not work as well with the Birthdays calendar since you can't subscribe to the Birthdays calendar directly on Google Calendar. You could subscribe to someone else's Birthdays calendar over the LAN with BusySync, and sync it to MobileMe, but then you'd be syncing someone else's Birthdays calendar to MobileMe, rather than your own.
Posted by: John | September 30, 2008 at 08:31 AM
great tip John! I absolutely love BusySync. It is 100% reliable and because of that, I was less accepting of the whole MobileMe mess. While it seems Apple has ironed out most of the issues, I can't help but wonder what secret mojo the developers over at BusySync have. Great utility, would not hesitate to recommend
Posted by: Chris | October 04, 2008 at 10:05 AM
I'm bummed about the Birthday thing too. You'd think that Apple would have put in a provision for this 'special case'. I ended up getting an iPhone app called FastContacts which has an 'Events this Month' view that includes Birthdays and Anniversaries, but I still wish it'd just work with the Calendar.
Posted by: Thom | October 04, 2008 at 02:01 PM
Would this also work with todo's?
That would be great because I could use a task-app on my iPhone that syncs with Toodledo or Remember The milk, and have that sync with iCal (through Google Calendar). I can sort of do that now, but ofcourse I can not edit the todo's in iCal and new ones don't show up on the iPhone.
Could this possibly make all this work both ways?
Posted by: sredlums | October 05, 2008 at 11:31 PM
Very nice indeed. I've been using Spanning Sync for a while, but all the positive comments and recommendations about BusySync are making me try it out :)
@sredlums: the best solution I've found for syncing to-do's is to use Things on the iPhone and OS X: it has an iCal Sync feature on the OS X version which uses the system-wide to-do service, so you edit a to-do in Things and it shows up in iCal, and vice versa (and since the iPhone version now syncs with the desktop app, you get your to-dos in multiple locations automatically on both devices).
See: http://culturedcode.com/things/blog/2008/05/things-092-brings-support-for-leopards-system-wide-to-do-service.html
Posted by: Dan Rubin | October 06, 2008 at 12:11 PM
BusySync is fantastic. I've been using it with my band so we all share calendars. It works flawlessly and we're all very happy with it.
Posted by: Cris | October 06, 2008 at 12:21 PM
Another benefit: this seems to fix the problem whereby the calendar colors in iCal were not correctly reflected on the iPhone. I did this just to get the subscriptions (Tripit, particularly) but the colors is a great bonus!
Posted by: JS-DC | October 08, 2008 at 08:37 AM
I believe I have followed the instructions above for MobileMe/iPhone syncing to the letter. My shared calendar on Google shown up under my main calendar section in iCal, but it is not displaying on MobileMe. What might I be missing? Is there a significant time delay here? Thanks.
Posted by: JR Rozko | October 28, 2008 at 09:06 AM
How would this work with iCal Server running in Leopard Server? Our situation is that my boss needs his assistant to be able to modify his calendar. He has a laptop and an iPhone that we're trying to keep in sync. She works on the LAN from her iMac.
Would BusySync allow us to share a calendar from iCal Server between the two of them?
Thanks...looks promising.
Posted by: Mikes | October 29, 2008 at 07:28 PM
Thank you. This is great and worked well.
Posted by: Darla | October 30, 2008 at 05:36 PM
iCalBirthdays 1.6 is a workflow workaround available for download on the Apple.com site. It helps get your Address Book birthdays into a local calendar so it can post on an iPhone & MobileMe.
Posted by: Paul | November 12, 2008 at 08:25 AM
It looks great, but does it work with published handmade iCal calendars? I want my wife to subscribe to my agenda and be able to see my meetings on her iPhone.
Posted by: Hans Vandeweghe | November 15, 2008 at 09:26 AM
I'm also interested to know if/how to get this to work with iCal server calendars.
Posted by: Ari Newman | November 25, 2008 at 09:35 AM
Will BusySync take a Google Calendar (one that is primarily maintained there) and sync it appropriately to iCal, and thus MM and iPhone? This is the last link that is preventing me from fully signing up for MM during my trial period. Have to be able to sync calendars for the family.
I can see that publishing in iCal works, but am disappointed that there is no support at this time for subscribing to other calendars within the tool itself. If BusySync will do this for me, I'd be happy to fully use it. Tired of wasting time trying to keep various calendars in sync since I'm not fully using MM yet...
Posted by: rawdata | December 07, 2008 at 07:43 PM
rawdata, BusySync will absolutely do that. It will allow you to sync iCal with Google Calendar, and from there the calendars will sync to MobileMe and the iPhone.
Posted by: John | December 07, 2008 at 08:36 PM
I've followed these directions, but have apparently done something wrong.
Calendars that I had subscribed to in iCal - then deleted - still appear in the BusySync preferences panel.
So, for example, on the Google tab I've got "US Calendar" appearing on the left side (publish to Google) and a copy appearing on the right (subscribe to Google calendars) with the redundant name/path: US Calendar -> US Calendar (2).
Any idea what I might have done wrong?
Posted by: FHB | January 09, 2009 at 06:45 PM
I just found a workaround for that problem (after trying weird stunts with Google Calendar for some hours). It's a little shareware tool that just does the job. Here's my blog entry:
http://flop.me/syncing-ical-birthday-calendar
Enjoy!
Posted by: der_flop | January 17, 2009 at 05:02 AM