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

MMM-MMM-Remote-Control monitor problem



  • Hi,

    I can’t turn on my monitor after I upgraded to debian buster.
    I tried to change the node_helper.js to:

    let monitorOnCommand = (this.initialized && "monitorOnCommand" in this.thisConfig.customCommand) ?
                    this.thisConfig.customCommand.monitorOnCommand :
                    "vcgencmd display_power 1";
                let monitorOffCommand = (this.initialized && "monitorOffCommand" in this.thisConfig.customCommand) ?
                    this.thisConfig.customCommand.monitorOffCommand :
                    "vcgencmd display_power 0";
                let monitorStatusCommand = (this.initialized && "monitorStatusCommand" in this.thisConfig.customCommand) ?
                    this.thisConfig.customCommand.monitorStatusCommand :
                    "tvservice --status";
    

    But I can only turn off the monitor, not turn it on again. Is there a fix to this problem?



  • Does this work from command line (via ssh with screen off)

    vcgencmd display_power 1
    


  • For some reason it started to work.

    But I’m not sure how to do to get the monitor status to work.

    I have tried to make these changes. But it doesn’t work:

      monitorControl: function(action, opts, res) {
                let status = "unknown";
                let monitorOnCommand = (this.initialized && "monitorOnCommand" in this.thisConfig.customCommand) ?
                    this.thisConfig.customCommand.monitorOnCommand :
                    "vcgencmd display_power 1";
                let monitorOffCommand = (this.initialized && "monitorOffCommand" in this.thisConfig.customCommand) ?
                    this.thisConfig.customCommand.monitorOffCommand :
                    "vcgencmd display_power 0";
                let monitorStatusCommand = (this.initialized && "monitorStatusCommand" in this.thisConfig.customCommand) ?
                    this.thisConfig.customCommand.monitorStatusCommand :
                    "vcgencmd display_power";
                if (["MONITORTOGGLE", "MONITORSTATUS", "MONITORON"].indexOf(action) !== -1) {
                    screenStatus = exec(monitorStatusCommand, opts, (error, stdout, stderr) => {
                        if (stdout.indexOf("display_power=0") !== -1 || stdout.indexOf("0") !== -1) {
                            // Screen is OFF, turn it ON
                            status = "off";
                            if (action === "MONITORTOGGLE" || action === "MONITORON") {
                                exec(monitorOnCommand, opts, (error, stdout, stderr) => {
                                    this.checkForExecError(error, stdout, stderr, res, { monitor: "on" });
                                });
                                this.sendSocketNotification("USER_PRESENCE", true);
                                return;
                            }
                        } else if (stdout.indexOf("HDMI") !== -1 || stdout.indexOf("true") !== -1) {
                            // Screen is ON, turn it OFF
                            status = "on";
                            if (action === "MONITORTOGGLE") {
                                this.monitorControl("MONITOROFF", opts, res);
                                return;
                            }
                        }
                        this.checkForExecError(error, stdout, stderr, res, { monitor: status });
                        return;
                    });
    

Log in to reply