Read the statement by Michael Teeuw here.
MMM-Remote-Control
-
Hey everyone!
Even though MMM-Remote-Control is the most popular third-party MagicMirror² module (measured by GitHub stars), it looks like it never properly introduced here in the forum. Today’s v4 release seems like the perfect opportunity to change that!
What is MMM-Remote-Control?
MMM-Remote-Control lets you control your MagicMirror² from any device on your network – your phone, tablet, or computer. So you can control your mirror from your couch using your cell phone, for example.
No need to SSH into your Pi or edit config files manually anymore. With a simple web interface, you can:- Show/hide modules on the fly
- Adjust brightness and color temperature
- Update modules and MagicMirror² itself
- Install new modules directly from the interface
- Edit your config.js with a visual editor
- Restart or shut down your mirror
- Send notifications and alerts
- Control your monitor (turn on/off)
- And much more through a comprehensive REST API
How to use it?
Just follow the instructions on the GitHub page.
What’s new in v4?
This release is the biggest update in years – a complete modernization of both the user interface and the underlying code:
For Users:
- Completely redesigned interface – Modern look, smoother animations, better usability
- QR Code on your mirror – Just scan it with your phone to instantly access the remote control. No more typing IP addresses!
Under the Hood:
- Code modernized to current JavaScript standards
- Massively expanded test suite for better reliability
- Enhanced error handling throughout
- Better documentation and maintainability
Important Note: While there shouldn’t be any breaking changes, I recommend testing thoroughly after updating due to the extent of the changes.
You can find the complete changelog and installation instructions on GitHub.
I’m looking forward to your feedback! If you run into any issues or have ideas for improvements, feel free to open an issue on GitHub.
Have fun with the update!
Some Screenshots
On Mobile Device
Main Menu

Power Menu

View Menu

optional QR Code on the mirror

-
@KristjanESPERANTO Good Evening!
Nice work!
I like it but with this update it doesn’t work anymore (for me, at least).
I get an error message: “Cannot GET /remote.html”.I first tried to update with
git pull npm ci --omit=devThis runs smooth, but results in the mentioned error message (mirror restarted :-) :
pi@MagicMirrorPi5:~/MagicMirror/modules/MMM-Remote-Control $ npm ci --omit=dev > mmm-remote-control@4.0.1 postinstall > node scripts/postinstall.js modules.json already exists, skipping copy. > mmm-remote-control@4.0.1 prepare > simple-git-hooks || echo 'No problem. Skipping git hooks installation.' sh: 1: simple-git-hooks: not found No problem. Skipping git hooks installation. added 38 packages, and audited 39 packages in 9s 4 packages are looking for funding run `npm fund` for details found 0 vulnerabilitiesAfter this I’ve tried to do the manual installation via:
pi@MagicMirrorPi5:~/MagicMirror/modules/MMM-Remote-Control $ ~/MagicMirror/modules/MMM-Remote-Control/installer.shthis at least showed an error:
Installation for the MagicMirror² Remote-Control module started! Notice: This script and the installed software is provided “as is”, without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software. >>> Continue? [y/N]? y Directory /home/pi/MagicMirror/modules/MMM-Remote-Control already exists. You are currently on the master branch. >>> Do you want to switch to the develop branch? [y/N]? N >>> Do you want to update your branch? [Y/n]? Y Pulling changes... Already up to date. Checking for new dependencies to install... > mmm-remote-control@4.0.1 postinstall > node scripts/postinstall.js modules.json already exists, skipping copy. > mmm-remote-control@4.0.1 prepare > simple-git-hooks || echo 'No problem. Skipping git hooks installation.' sh: 1: simple-git-hooks: not found No problem. Skipping git hooks installation. added 38 packages, and audited 39 packages in 3s 4 packages are looking for funding run `npm fund` for details found 0 vulnerabilities Done. Update finished! node:internal/modules/cjs/loader:1544 throw err; ^ **Error [ERR_REQUIRE_ESM**]: require() of ES Module /home/pi/MagicMirror/modules/MMM-Remote-Control/node_modules/uuid/dist-node/index.js from /home/pi/MagicMirror/modules/MMM-Remote-Control/[eval] not supported. Instead change the require of index.js in /home/pi/MagicMirror/modules/MMM-Remote-Control/[eval] to a dynamic import() which is available in all CommonJS modules. at [eval]:1:13 at [eval]-wrapper:6:24 { code: 'ERR_REQUIRE_ESM' } Node.js v20.18.1 >>> Do you want to view instructions on how to configure the module? [Y/n]? n You should also set an API key in your config section! It's dangerous to go alone! Take this. apiKey: '' I made it just for you. Have fun with the module, if you have any problems, please search for help on github or in the forum: Github : https://github.com/Jopyth/MMM-Remote-Control Forum : https://forum.magicmirror.builders Do not forget to restart your MagicMirror² to activate the module! Installation finished.So my third and last try was a complete fresh installation - but again with no luck - and the same error message, which I’m not able to handle:
pi@MagicMirrorPi5:~/MagicMirror/modules $ bash -c "$(curl -s https://raw.githubusercontent.com/Jopyth/MMM-Remote-Control/master/installer.sh)" Installation for the MagicMirror² Remote-Control module started! Notice: This script and the installed software is provided “as is”, without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software. >>> Continue? [y/N]? y MagicMirror² detected in: /home/pi/MagicMirror >>> Is this correct and do you want to start installation? [y/N]? y You can use either the master or the develop branch. The develop branch contains more features, but is also more likely to cause errors or crashes. This can be changed later by executing this script again, or using the git branch command. By default the master branch will be installed. >>> Do you want to install the develop branch instead? [y/N]? n Cloning the repository on master branch... Cloning into 'MMM-Remote-Control'... remote: Enumerating objects: 2748, done. remote: Counting objects: 100% (1098/1098), done. remote: Compressing objects: 100% (317/317), done. remote: Total 2748 (delta 866), reused 932 (delta 780), pack-reused 1650 (from 3) Receiving objects: 100% (2748/2748), 2.50 MiB | 1.13 MiB/s, done. Resolving deltas: 100% (1913/1913), done. Installing dependencies... > mmm-remote-control@4.0.1 postinstall > node scripts/postinstall.js Successfully created modules.json from template. > mmm-remote-control@4.0.1 prepare > simple-git-hooks || echo 'No problem. Skipping git hooks installation.' sh: 1: simple-git-hooks: not found No problem. Skipping git hooks installation. added 38 packages, and audited 39 packages in 3s 4 packages are looking for funding run `npm fund` for details found 0 vulnerabilities Done. Installation finished. node:internal/modules/cjs/loader:1544 throw err; ^ **Error [ERR_REQUIRE_ESM]**: require() of ES Module /home/pi/MagicMirror/modules/MMM-Remote-Control/node_modules/uuid/dist-node/index.js from /home/pi/MagicMirror/modules/MMM-Remote-Control/[eval] not supported. Instead change the require of index.js in /home/pi/MagicMirror/modules/MMM-Remote-Control/[eval] to a dynamic import() which is available in all CommonJS modules. at [eval]:1:13 at [eval]-wrapper:6:24 { code: 'ERR_REQUIRE_ESM' } Node.js v20.18.1 >>> Do you want to view instructions on how to configure the module? [Y/n]? n You should also set an API key in your config section! It's dangerous to go alone! Take this. apiKey: '' I made it just for you. Have fun with the module, if you have any problems, please search for help on github or in the forum: Github : https://github.com/Jopyth/MMM-Remote-Control Forum : https://forum.magicmirror.builders Do not forget to restart your MagicMirror² to activate the module! Installation finished.Do you please have a hint for me how to solve this?
MM is running on a Pi5 / NVME.
Thanks for any advice!
Warmest regards,
Ralf -
@rkorell said in MMM-Remote-Control:
Node.js v20.18.1
@rkorell Thanks for the feedback and the good error description! I’ll optimize the error logging, but unfortunately you have to update to at least node 22. I recommend version 24.
For the current MagicMirror version, you also need at least version 22.
-
what’s with the microupdates? I’ve updated three times today. 🤣
