我有一个带有内置传感器的平板电脑,它允许我基于iio-sensors-proxy. 但是,屏幕方向已关闭,我需要修复它。
在它的 GitHub 页面(https://github.com/systemd/systemd/blob/master/hwdb/60-sensor.hwdb)上解释了如何改变这种行为:创建一个文件/etc/udev/hwdb.d/61-sensor-local.hwdb并写入它
sensor:modalias:<parent device modalias>:dmi:<dmi string>
Run Code Online (Sandbox Code Playgroud)
和
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, 1, 0; 0, 0, 1
Run Code Online (Sandbox Code Playgroud)
(这个矩阵必须被改变)。
sensor:modalias:acpi:KIOX000A*:dmi:*:svnEVE*:pnEveV:*
ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
Run Code Online (Sandbox Code Playgroud)
到目前为止我发现了什么:
这给了我设备名称:
udevadm info --export-db | grep iio
P: /devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-KIOX000A:00/iio:device0
N: iio:device0
E: DEVNAME=/dev/iio:device0
E: DEVPATH=/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-KIOX000A:00/iio:device0
E: DEVTYPE=iio_device
E: IIO_SENSOR_PROXY_TYPE=iio-buffer-accel
E: SUBSYSTEM=iio
E: SYSTEMD_WANTS=iio-sensor-proxy.service
Run Code Online (Sandbox Code Playgroud)
这为我提供了有关该设备的更多信息:
udevadm info -n "/dev/iio:device0"
P: /devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-KIOX000A:00/iio:device0
N: iio:device0
E: DEVNAME=/dev/iio:device0
E: DEVPATH=/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-KIOX000A:00/iio:device0
E: DEVTYPE=iio_device
E: IIO_SENSOR_PROXY_TYPE=iio-buffer-accel
E: …Run Code Online (Sandbox Code Playgroud)