So I made a new module for this MMM-iCloudPhotos. That is me and Claude. It downloads any new photos from the iCloud Album you specify and deletes any photos that are no longer in the album. I am using it with MMM-ImagesPhotos but you can specify any directory to put the images in and use any display module.
Read the statement by Michael Teeuw here.
Posts
-
RE: Anyone download iCloud Photos to your Pi?
-
Anyone download iCloud Photos to your Pi?
Re: iCloud photos
I am trying to use pyicloud library but do not have it working yet. -
RE: World Cup page
@slosticlai If you want to see the brackets I made a module MMM-BracketEngine that will display any single elimination sport bracket. There is a provider for the FIFA World Cup. Other provider can be added for other tournaments.
-
Default weather ignoring fade false ?
I have two instances of weather in my config. The first for current and using my pws provider. The second for forecast using weathergov. Both display data but the forecast seems to ignore the fade: false option. Here are the module entries from my config.js.
```{
module: “weather”,
position: “top_right”,
order: “1”,
header: “Our Weather Station”,
config: {
weatherProvider: “pws”,
stationId: “KTXFARME145”,
apiKey: “xxxxx”,
type: “current”
},
disabled: false,
label: “instance 1”,
hiddenOnStartup: false,
configDeepMerge: false,
animateIn: “none”,
animateOut: “none”,
index: 0
},
{
module: “weather”,
position: “top_right”,
order: “2”,
header: “Weather Forecast”,
config: {
weatherProvider: “weathergov”,
type: “forecast”,
lat: 33.173,
lon: -96.332
},
colored: true,
fade: false,
fadePoint: “1”,
maxEntries: “7”,
maxNumberOfDays: “7”,
disabled: false,
label: “instance 2”,
hiddenOnStartup: false,
configDeepMerge: false,
animateIn: “none”,
animateOut: “none”,
index: 1
}, -
MMM-PWSWeather updated for MM v2.35.0+
I have updated the MMM-PWSWeather provider v2.0 for MM v2.35.0+. The provider pws now runs as a server-side provider API. If you are running an older version of MM you can download the initial release.
-
MMM-BracketEngine even better than MMM-FIFAWorldCup
New module MMM-BracketEngine displays a mirrored knockout tournament bracket for any sport.
I took the MMM-FIFAWorldCup module and generalized it for any Bracket style Tournament. Providers fetch data from external APIs and normalize it into a common format; the engine renders it with a CSS Grid layout. You can also use a static bracket that you edit so you can display a tournament that has no online data (chess club, little league, etc.) . Providers for FIFA World Cup and Wimbledon are included.
-
RE: MMM-PWSWeather - A module and Provider for Weather Underground
@KristjanESPERANTO Thanks I edited my post. Also it is now in the 3rd Party Modules page.
-
RE: Upgrade
@sdetweil Just and FYI, I just tried a fresh install and got the same issue with node.
marksimon@digiframe:~ $ git clone https://github.com/MagicMirrorOrg/MagicMirror.git
Cloning into ‘MagicMirror’…
remote: Enumerating objects: 31023, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 31023 (delta 2), reused 2 (delta 2), pack-reused 31018 (from 2)
Receiving objects: 100% (31023/31023), 26.41 MiB | 2.15 MiB/s, done.
Resolving deltas: 100% (19515/19515), done.
marksimon@digiframe:~ $ cd MagicMirror/
marksimon@digiframe:~/MagicMirror $ node --run install-mm
npm error code EBADENGINE
npm error engine Unsupported engine
npm error engine Not compatible with your version of node/npm: eslint-plugin-package-json@1.5.0
npm error notsup Not compatible with your version of node/npm: eslint-plugin-package-json@1.5.0
npm error notsup Required: {“node”:“^22.22.2 || >=24.15.0”}
npm error notsup Actual: {“npm”:“10.9.4”,“node”:“v22.21.1”}Then I tried using the script and it installed node v22.22.2 and looks like it is working.
marksimon@digiframe:~/MagicMirror $ bash -c “$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/master/upgrade-script.sh)” force
update log will be in /home/marksimon/MagicMirror/installers/upgrade.log
doing test run = false
Node currently installed. Checking version number.
Minimum Node version: v22.22.2
Installed Node version: v22.21.1
installing correct version of node and npm, please wait
Check current Node installation …
Node currently installed. Checking version number.
Minimum Node version: v22.21.1
Installed Node version: v22.22.2 -
MMM-PWSWeather - A module and Provider for Weather Underground
MMM-PWSWeather is a module that displays real-time weather data from your Personal Weather Station at Weather Underground.
The provider can be used by the default weather module and other weather modules that support the weatherProvider configuration option. -
RE: FIFA World Cup Bracket on your mirror - LIVE data
I just posted an update on GitHub that adds the Finals and 3rd Place boxes to the grid.
-
FIFA World Cup Bracket on your mirror - LIVE data
This may be a little late but that’s what I get when you only use the free AI subscription. This module will put the FIFA World Cup Bracket on your Magic Mirror. Looks nice so far.
https://github.com/msimon360/MMM-FIFAWorldCup -
RE: Modular configuration generation
@sdetweil This is great. I have been working on something similar but I didn’t need to. I wish I could find cool things like this already exist for Magic Mirror easier.
-
World Cup page
Re: Fifa World Cup overview
I started looking into ways to display the 2026 World Cup and found this to work great. I used {MMM-WebView} (https://github.com/Iketaki/MMM-WebView ) and loaded native-stats.org [World Cup page](link url) (https://native-stats.org/competition/WC/) page. -
RE: New Module MMM-PWSWeather
@sdetweil I have a weather provider working now. When I try to use $SECRET_PWS_API_KEY in my config.js it doesn’t work. I export the var in my .bashrc and I am using pm2 to start mm.
-
RE: New Module MMM-PWSWeather
@sdetweil This is great. Is it only for weather? It would be cool if all modules could be like this. You could define data providers and then data displays. Maybe in the modules directory or another directory define a pair with a unique name to work like a module does now. That way you could define providerA with displayA as module1 and providerB with displayA as module2. This would end copying modules and renaming them do display different data in the same way.
-
RE: New Module MMM-PWSWeather
@sdetweil I didn’t know about themes for weather. I will separate my module into a provider and a theme. I use pages with my mirror and want to display both weather from the default provider and from my personal weather station. How best to go about this?
-
New Module MMM-PWSWeather
I have published a new module to GitHub MMM-PWSWeather](https://github.com/msimon360/MMM-PWSWeather) to display Weather Data from WeatherUnderground. You can use this to display your own personal weather station or with a subscription any available station. This is my first module, I don’t know how to get it added to the 3rd-Party-Modules page.
-
RE: MMM-BackgroundSlideShow cutting off top of pics
@sdetweil I didn’t get that by pages you ment the module pages in place of Carousel. I tried your pages module and it is displaying only the first photo. Here is my new config.js section.
module: “MMM-ImagesPhotos”,
position: “fullscreen_below”,
config: {
opacity: 0.9,
animationSpeed: 5000,
updateInterval: 15000,
backgroundColor: ‘grey’, // not used if fill is true
fill: true, // fill around image with blurred copy of image
blur: 10, // only used if fill is true
sequential: false // process the image list randomly
}
},
{
module: “MMM-pages”,
config: {
rotationTime: 1000 * 10, // rotate every 20 seconds
modules: [
[“clock”], // page 1
[“MMM-ImagesPhotos”], // page 2
],
fixed: [ // modules that are always shown
“MMM-page-indicator”
],
hiddenPages: { // modules that are only shown on specific pages
“screenSaver”: [
“clock”,
“MMM-SomeBackgroundImageModule”
],
“admin”: [
“MMM-ShowMeSystemStatsModule”,
“MMM-AnOnScreenMenuModule”
]
}
}
}, -
RE: MMM-BackgroundSlideShow cutting off top of pics
@sdetweil Thanks for the quick reply.
Here are the ImagesPhotos and Carousel sections of my config.js. Running this I just get a blank screen instead of the photos. I do get photos if I use top_center without Carousel.{ module: "MMM-ImagesPhotos", position: "fullscreen_below", config: { opacity: 0.9, animationSpeed: 5000, updateInterval: 15000, backgroundColor: 'grey', // not used if fill is true fill: true, // fill around image with blurred copy of image blur: 10, // only used if fill is true sequential: false // process the image list randomly } }, { module: "MMM-Carousel", config: { transitionInterval: 10000, showPageIndicators: true, showPageControls: false, ignoreModules: ["alert", "updatenotification"], mode: "slides", slides: [ ["clock", "weather", "calendar"], ["MMM-ImagesPhotos"] ], } },