helloSystem / helloSystem/ISO

Control external displays (e.g., brightness) with DDC/CI

Open
#273 3 comments 0 reactions 0 assignees View on GitHub
freebsd help wanted
Dominant language
Shell
Stars
847
Forks
66
PR merge metrics
No merged PRs in 30d

Description

helloSystem should get the ability to control external displays (e.g., change the brightness).

Need to find out the state of the __Display Data Channel/Command Interface__ (DDC/CI) on FreeBSD.
https://www.reddit.com/r/freebsd/comments/ke51oq/controlling_displays_with_ddcci/ is wondering the same thing.

Wikipedia:
> DDC/CI (Command Interface) standard was introduced in August 1998. It specifies a means for a computer to send commands to the monitor, as well as receive sensor data from the monitor, over a bidirectional link. Specific commands to control monitors are defined in a separate Monitor Control Command Set (MCCS) standard version 1.0, released in September 1998.
> (...)
> Despite its **ubiquity in post-2016 displays**, DDC/CI is not generally used by the operating system by default for brightness control on external displays.[9] Additional software can be used to send commands to the display, but the degree of system integration vary.

https://www.ddcutil.com/release_notes/ says:

> Some configure options have been added, primarily in support of an as yet incomplete FreeBSD implementation. (Development is suspended **until FreeBSD's video drivers expose the I2C bus**.)

@rockowitz, the developer of `ddcutil`, has loaded the i2c drivers `iicbus.ko`, `iic.ko`, and video driver `nvidia.ko`, but the devices `/dev/iicN` do not exist (which I can confirm). Are we missing something or is additional development within FreeBSD necessary to access the i2c bus that is used for display communication?

https://forums.freebsd.org/threads/accessing-i2c-devices-from-userspace.77145/

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.