Contribute
Register

Controlling Your Monitor with OSX: DDC Panel

SJ_UnderWater

Moderator
Joined
Dec 3, 2010
Messages
707
Motherboard
Gigabyte GA-H55M-S2V
CPU
Intel i3-530
Graphics
HIS HD 6570
Mac
iMac
Classic Mac
Mobile Phone
Android
I've been trying to find a decent solution for DP/HDMI audio volume control in OSX, and while I understand Apple's reluctance to add another volume level to the "chain", my monitor has awful controls, and the difference between 0.8% and 0% is pretty high. To this end, I looked for and found a rough DDC/CI implementation for OSX, and supplemented it with the VESA specification. Working to clean it up, I made a small app to play with the values, and "unmute" now works in the newest version. My eventual goal is a system daemon `ddcd` which loads at boot, traps the volume keystrokes from my Apple keyboard and sends the appropriate DDC/CI command to my monitor.
The app is no longer "severe": failures will disable the current controller; if you think the failure is wrong, try pressing the refresh button to reset the state of the controller. The X button will factory reset the monitor. The smaller attachment is the source.

WARNING: Experimental NVidia support

Version 1.6
 

Attachments

SJ_UnderWater

Moderator
Joined
Dec 3, 2010
Messages
707
Motherboard
Gigabyte GA-H55M-S2V
CPU
Intel i3-530
Graphics
HIS HD 6570
Mac
iMac
Classic Mac
Mobile Phone
Android
moved to Graphics
 

beelzebozo

Super Moderator
Joined
Mar 31, 2010
Messages
3,769
Motherboard
Main Build: ASUS z170-Deluxe
CPU
i7 - 6700K
Graphics
GTX 1080
Mac
MacBook Pro
Classic Mac
Power Mac
Mobile Phone
iOS
I've been trying to find a decent solution for DP/HDMI audio volume control in OSX, and while I understand Apple's reluctance to add another volume level to the "chain", my monitor has awful controls, and the difference between 0.8% and 0% is pretty high. To this end, I looked for and found a rough DDC/CI implementation for OSX, and supplemented it with the VESA specification. Working to clean it up, I made a small app to play with the values, and while I can't "unmute" my monitor with the current controls, it's something. My eventual goal is a system daemon `ddcd` which loads at boot, traps the volume keystrokes from my Apple keyboard and sends the appropriate DDC/CI command to my monitor.
Be aware that the app is "severe", in that it will throw an exception if there is any trouble talking to the monitor. The smaller attachment is the source.
:thumbup:
 

SJ_UnderWater

Moderator
Joined
Dec 3, 2010
Messages
707
Motherboard
Gigabyte GA-H55M-S2V
CPU
Intel i3-530
Graphics
HIS HD 6570
Mac
iMac
Classic Mac
Mobile Phone
Android
Updated to v1.2
  • EDID parsing, fetches monitor name and serial #
  • Basic protections added to EDID test
  • App positioned for EDID v1.3 only, 1.4 (DisplayPort) to be added later
  • Better detection of request failure
  • App icon based on VESA logo
 
Joined
Jun 19, 2012
Messages
19
Motherboard
GA-Z68MA-D2H-B3
CPU
i5-3570k
Graphics
HD4000
Mac
iMac, MacBook Pro
Classic Mac
Mobile Phone
Android
This looks great! I noticed that you mention DP/HDMI but will this work with DVI? I don't know if its possible but I would love to be able to control the brightness (read backlight control) of my monitor through software. However, if I can't do that through the controls of my monitor then I probably can't do it with this. Sorry, /ramble
 
Joined
Jul 27, 2010
Messages
65
Motherboard
MacBookPro8,1
CPU
Intel Core i5-2415M
Graphics
Intel HD Graphics 3000
Mac
MacBook Pro
Classic Mac
PowerBook
Mobile Phone
iOS
Hey seems great, but could you make it targeted to OS X Lion or Snow Leopard and later for those of use whom have not bought Mountain Lion yet? :D
 

SJ_UnderWater

Moderator
Joined
Dec 3, 2010
Messages
707
Motherboard
Gigabyte GA-H55M-S2V
CPU
Intel i3-530
Graphics
HIS HD 6570
Mac
iMac
Classic Mac
Mobile Phone
Android
DVI is 1.3, so it should be fine, but the only real test is to try it.
The app compiles for Lion, but has not been tested, the source is available above.
Do not attempt to run it on a Mac, especially portables.
 

SJ_UnderWater

Moderator
Joined
Dec 3, 2010
Messages
707
Motherboard
Gigabyte GA-H55M-S2V
CPU
Intel i3-530
Graphics
HIS HD 6570
Mac
iMac
Classic Mac
Mobile Phone
Android
the existing implementation I realized only works well with v1.3, so I added the safeguard. You could remove it and get most of the controls, but reading a changed value back in throws an error, and the monitor will likely stop responding to DDC/CI requests until restarted. Being version-aware was the easiest way of making the app safe for now, though I put additional specification links in the source. I haven't gotten around to reading them yet to make the necessary changes.
 
Top