[APP][Pro] Mac Monitor - Monitor and control your Macs from Homey!

Hi everyone :waving_hand:

I made a Homey app for Macs, so you can keep an eye on your Mac mini, MacBook or Mac Studio from Homey and use it in your Flows. Version 1.0.0 is waiting for certification, the test version is available below.

:gear: What does it do?

Everything runs 100% locally. A small agent on the Mac reads the sensors and Homey talks to it over your own network.

Sensors

  • CPU and GPU temperature
  • CPU usage and load per core
  • Memory usage
  • Free disk space and disk usage
  • Fan speed (RPM)
  • Power draw (W)
  • Uptime and pending macOS updates
  • Thermal throttling alarm

Fan control is not supported on purpose, the app only reads the sensors.

Flow cards

  • When: CPU usage, memory, free disk space or fan speed crosses a value, a macOS update is available, the Mac restarted, went offline or came back
  • And: Mac is reachable, temperature / CPU / memory / disk / fan / power is above a value, an update is available
  • Then: sleep, wake (Wake-on-LAN), display off, lock, show a notification, run your own command, check for updates, restart, shut down

Restart and shut down are off by default. You need to allow them in the device settings and on the Mac.

Dashboard widget
One widget with a card for every Mac.

:hammer: How to setup for testing?

You need a Mac with Apple silicon (M1 or newer), macOS 14 or later and Node.js 18+ (brew install node or nodejs.org).

  1. Install the agent on your Mac. Open Terminal and run:
    curl -fsSL https://raw.githubusercontent.com/kircuvaloglu/homey-mac-monitor/main/agent/get.sh | sudo bash
    At the end it shows an access token, copy it.
  2. Install the test version of Mac Monitor on your Homey (link below).
  3. Go to Add device → Mac Monitor → Mac, pick your Mac from the list and paste the token.

For Wake-on-LAN, turn on “Wake for network access” in System Settings → Energy on the Mac.

:link: Links

:bug: Feedback & Bugs

Please test it and let me know how it works for you. If something doesn’t work, post it here or open an issue on GitHub. It helps a lot if you mention your Mac model and macOS version.

Version 1.5.0 is available in the test channel :tada:

New readings:

  • Idle time, screen lock and display on/off
  • Download and upload speed
  • Memory pressure and thermal state
  • Disk health (SMART)
  • Last Time Machine backup and external drives

New Flow cards:

  • When: the Mac has been idle for X minutes, someone starts using it again, screen locked/unlocked, display on/off, network speed above X, memory pressure or thermal state changes, disk health problem, backup finished or overdue, drive connected/disconnected
  • And: idle for X minutes, screen locked, display on, an app is running, a drive is connected, memory pressure is normal/warning/critical, last backup older than X hours
  • Then: keep the Mac awake for X minutes, allow sleep again, speak text

The CPU usage trigger now also tells you the busiest process.

Please update the agent on your Macs with the same install command, your token stays the same:
curl -fsSL https://raw.githubusercontent.com/kircuvaloglu/homey-mac-monitor/main/agent/get.sh | sudo bash

Full changelog: homey-mac-monitor/CHANGELOG.md at main · kircuvaloglu/homey-mac-monitor · GitHub

Hi everyone,

I have published a new test version, you can install it now. Here are the changes and fixes:

  • Cleaner pairing screen and widget
  • New App Store page with real photos, a shorter description and text-free widget previews
  • All the features from 1.5.0 are included

The agent on your Mac stays the same, so there is no need to reinstall it. You can install the test version from the link in the first post.

Neat I see the potentail for various fun flows for myself with this.
Thanks for making this :slight_smile:

Mac Monitor 1.6.0 — test version available

I published a new test version. It has been submitted for certification, so it will reach the App Store once the review is done. You can install it from the test channel now:

What changed:

Icons. Every capability icon, the app icon and the device icon are redrawn. Homey colours icons itself and fills the shapes it finds, and the old ones were drawn with lines, so several of them ended up as solid blocks. They are filled outlines now and show correctly everywhere.
Adding a Mac. The pairing screen stays where it is until the Mac really answers, and says what went wrong instead of moving on to an empty “no devices found” list. Discovered addresses are tried from your Homey first, and one it cannot reach is marked — handy when a Mac is on two networks.
A changed address. A Mac that is given another IP address is picked up again on its own. The known address is only replaced once it stops answering and the new one does answer.
The wrong Mac. If another Mac starts answering at a device’s address, after a hardware swap for example, the device says so instead of quietly showing the other Mac’s readings.
The agent on your Mac does not need to be updated for this release.