MMM-Remote-Control: MONITORTOGGLE does not turn on the monitor

Hi @ezeholz many thanks for this great module and for your support.

You probably already know that in the new version (2.2.2) the MONITORTOGGLE command cannot turn on the monitor (but can turn it off). I can switch the monitor on and off with MONITORON and MONITOROFF commands. The MONITORSTATUS command always indicates the monitor is on even if it is off: {"success":true,"monitor":"on"}

http://mm_ip:8080/api/monitor/on: {"success":true,"monitor":"on"} http://mm_ip:8080/api/monitor/off: {"success":true,"monitor":"off"} http://mm_ip:8080/api/monitor/status: {"success":true,"monitor":"on"} - It’s always on http://mm_ip:8080/api/monitor/toggle: {"success":true,"monitor":"off"} - It’s always off

I run the tvservice status when the monitor is off and on: pi@raspberryMM:~/MagicMirror $ tvservice -s state 0x2 [TV is off]

pi@raspberryMM:~/MagicMirror $ tvservice -s state 0xa [HDMI DMT (28) RGB full 16:10], 1280x800 @ 60.00Hz, progressive

I notice only that in tvservice output [TV is off] the ‘off’ word is all lowercase but in line 635 of node_helper.js the ‘o’ is uppercase: let offArr = ["false","TV is Off","standby"];

I think the problem is correctly recognizing the monitor status but I don’t know how to fix.

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 18

Commits related to this issue

Most upvoted comments

Hi ezeholz, here the status with vcgencmd. Monitor off:

pi@raspberryMM:~ $ vcgencmd display_power 0
display_power=0
pi@raspberryMM:~ $ vcgencmd display_power -1
display_power=0

Monitor on:

pi@raspberryMM:~ $ vcgencmd display_power 1
display_power=1
pi@raspberryMM:~ $ vcgencmd display_power -1
display_power=1

Also using custom command here with a raspberry together with homeassistant command line switch and this bug broke the integration as it always said the TV is on. Manually did the fix from the referenced commit and it works now. When is this moving to release? Guess many people might have that problem.

btw custom status command for me is/was echo 'pow 0.0.0.0' | cec-client -s -d 1 | awk 'NR==2 {if ($0 ~ /status: standby/) {print "false"} else {print "true"}}'