waydabber / m1ddc

This little tool controls external displays (connected via USB-C/DisplayPort Alt Mode) using DDC/CI on Apple Silicon Macs. Useful to embed in various scripts.

Repository from Github https://github.comwaydabber/m1ddcRepository from Github https://github.comwaydabber/m1ddc

[Feature request] Ability to turn on/off a display

pavelrad opened this issue · comments

It is possible in Lunar to send a "turn off" signal to a display. Would be great to have the same one in m1ddc, together with "turn on", which I hope should work at least on my Dell U2515H, as it correctly reports its settings via DDC when being turned off.

Are you sure it is possible in Lunar? Power control via DDC is possible but rarely implemented correctly and most of the time you can't turn the display back afterwards.

If you mean Lunar's blackout feature, it is not actually turning the display off, just hides it behind a mirror and turns brightness down as much as possible.

I mean turning off using DDC, which works just as expected on my monitor: it turns off like the power button was pressed.

I saw a comment in Lunar on this feature, which says that it might not work, and it's impossible to turn on after that. But I still believe that turning on might work, because as i stated in the first comment, my monitor responds to DDC commands when it turned off. Looks like it is actually in some standby mode. When I disconnect it from the power source, m1ddc is not able to get any response from it and prints some corresponding error.

Do you still see the display in the display layout? If so, then indeed it must be in some kind of low power mode but show itself as connected.

You can easily add it to m1ddc, it should work like the mute command (just duplicate everything that is mute related but give it a new name like standby and of course change the control code. If it works, you can add a PR.

but... power control is highly manufacturer specific so I am not sure if it is a good idea to make it generally available. :)

Wow! It is already here but just not reflected in the help. standby worked for me as expected. I can turn on the display with m1ddc set s 1 and turn it off with m1ddc set s 5 commands. Thank you for your help! 🙇

Oh yes, forgot about that lol. :) Now that you mention it, indeed I did experiment with this. 🤣