MagicMirror² v2.12.0 is available! For more information about this release, check out this topic.

Sync private iCloud calendar with MagicMirror

  • @Beh I followed your instruction step-by step but I can’t find the .vdirsyncer/config. I get the same error as @bgz. Do you know the solution to this problem? I tried creating the vdirsyncer folder but i got the message “Access denied”.

  • @Sammie1232 Seems like the folder and/or the file do not exist. Please create them if they are not there.

    The folder needs to be owned by the current user. On a Raspi, this command would look like this: chown -R pi:pi /home/pi/.vdirsyncer

  • You can make a iCloud Family Calendr ‘public’ by following the next steps:

    On an iPhone

    • Go to Calendar app
    • At the bottom you see ‘calendar’
      click on it
    • click on the ‘i’ behind the family calendar
      go to the bottom and make sure ‘public calendar’ is selected
    • select option ‘share’ and then select copy
      Now you have the public url and can use

    On a Mac

    • open calendar app
    • select the family calendar on the left
    • right click on the ‘wifi’ symbol
    • select settings for sharing
    • select public calendar and you can copy the url

  • @htilburgs This is exactly what I‘m trying to prevent/workaround with this tutorial.
    Using a public calendar URL allows anyone to see your calendars without any authentication at all. This way your calendars are open and accessible by anyone who knows the URL. (URLs can be crawled by machines ;))

    This here is just a secure method to sync your calendars.

    If you don‘t care about having your personal life available to anyone or anything, it‘s your business.

  • @Beh thanks for this. everything is working fine for me just a small error I wanted to ask about in my /home/pi/.pm2/logs/MagicMirror-error.log, it complains the following:

    ERROR! Could not find main module js file for calendars

    Its not a show stopper but because the calendars folder is created in the modules folder this is why it is asking for a js file.

  • Hey, I hope someone can help.

    Everything is running fine, except my reminders.

    No matter I put item_types = [“VEVENT”] or item_types = [“VEVENT”, “VTODO”] in the config, it discovers everytime a collection named tasks “Erinnerungen” (which is reminders in german) but the tasks.ics is completely empty…

    Does anybody have a running configuration for icloud reminders?

    Since MMM-iCloud-Client seems not working anymore I’m also interested in fetching iCloud Birthdays.

  • This post is deleted!

  • Having an issue with daylight savings. Could this be vidirsyncer?

  • So i’m not sure if anyone is still watching this thread but I’ve been banging my head against the wall trying to sync. The tutorial is awesome and clearly there was a ton of work put in, so I don’t ask questions lightly.

    I followed the directions to the letter but i can’t seem to control the sync. one time it took 2.5 mins and the next time it took 9 mins.

    here is my timer…
    GNU nano 2.7.4 File: /etc/systemd/user/vdirsyncer.timer

    Description=Synchronize vdirs



    that’s the only thing i have changed. it’s like i can’t get the sync to activate.
    I have maybe 5 different modules running but nothing crazy (weather, clock, jeopardy, etc)

    if i manually vdirsyncer sync and then reload the mirror AWESOME, no problems. just cant get the damn timer to work

    any help or suggestions would be greatly appreciated…I’m still new to all this so thanks

  • @mdefrancesco Sorry for the late reply.

    Hmm… that’ weird. Did you get it working by now?

    If not:
    Did you use the --user flag when activating the timer? And what does systemctl --user status vdirsyncer.timer say?
    And did you try different times in the timer file? I could imagine that setting everything to 1 minute could cause problems…

Log in to reply