ISL(4)

πŸ’– isl(4) β€” the Intersil(TM) I2C ISL29018 sensor driver, bestie edition πŸ’–

okay so you wanna read your laptop's ambient light sensor and proximity vibes straight from the kernel? say less. this is the isl man page, section 4 (that's kernel interfaces, iykyk), and it's giving light sensor main character energy ✨


✨ NAME ✨

isl β€” the Intersil(TM) I2C ISL29018 sensor driver πŸ¦‹


✨ SYNOPSIS ✨

so to compile this driver into the kernel, you literally just drop these lines into the kernel configuration file:

device isl
device ig4
device iicbus

or, if you'd rather load it as a module at boot time (which is lowkey the move), you put this line in loader.conf(5):

isl_load="YES"
ig4_load="YES"

on a lot of Chromebook models this driver can be automatically configured with the help of the chromebook_platform(4) driver πŸ’… alternatively, you can configure the isl driver manually in /boot/device.hints, like:

hint.isl.0.at="iicbus0"
hint.isl.0.addr="0x88"
hint.isl.1.at="iicbus1"
hint.isl.1.addr="0x88"

✨ DESCRIPTION ✨

the isl driver gives you access to sensor data from the Intersil(TM) I2C ISL29018 Digital Ambient Light Sensor and Proximity Sensor with Interrupt Function. πŸŽ€ the functionality is basic, and it's provided through the sysctl(8) interface.

on a system using device.hints(5), these values are configurable for isl:

  • hint.isl.%d.at β€” the target iicbus(4).
  • hint.isl.%d.addr β€” the isl i2c address on the iicbus(4).

✨ SYSCTL VARIABLES ✨

these sysctl(8) variables are available, and yes you're gonna want all of them:

  • dev.isl.X.als β€” current ALS (Ambient Light Sensor) readout. πŸ‘‘
  • dev.isl.X.ir β€” current IR (InfraRed) sensor readout.
  • dev.isl.X.prox β€” current proximity sensor readout.
  • dev.isl.X.resolution β€” current sensor resolution.
  • dev.isl.X.range β€” current sensor range.

✨ EXAMPLES ✨

🌸 Ambient light sensor read out

$ sysctl dev.isl.0.als
dev.isl.0.als: 64

literally one command and you know how bright it is. ate. πŸ”₯

🌸 Automatically adjust brightness

heads up bestie: this requires the port graphics/intel-backlight, and it only works with laptops using a supported Intel(R) GPU. no cap.
$ pkg install intel-backlight
$ sh /usr/local/share/examples/intel-backlight/isl_backlight.sh

✨ SEE ALSO ✨

chromebook_platform(4), ig4(4), iicbus(4)


✨ AUTHORS ✨

the isl driver was written by Michael Gmelin <freebsd@grem.de>.

this manual page was written by Michael Gmelin <freebsd@grem.de>.


✨ BUGS ✨

😭 the isl driver detects the device based from the I2C address. this might have unforeseen consequences if the initialization sequence is sent to an unknown device at that address. fr fr, be careful.

and that's the whole page, bestie 🫢 this one came from Debian, dated December 18, 2018 β€” go forth and vibe check your ambient light πŸ’œβœ¨

πŸ“¦ where this page comes from