У меня Ubuntu 13.04 работает на Surface Pro.
Одно из USB-устройств (ID 045e: 0794) зарегистрировало ряд скрытых сенсорных устройств:
При загрузке hid-sensor-als устройство iio доступно в / sys / bus / iio / devices / iio: device0, а также создается / dev / iio: device0.
Новые устройства iio также создаются при загрузке hid-sensor-accel-3d и hid-sensor-gyro-3d.
Теперь мой вопрос: как я могу получить и прочитать данные с этих датчиков?
Я выполнил то же упражнение для Yoga 2 Pro под Fedora 20. Проблема в том, что драйверы сенсоров концентратора сенсоров не предоставляют необработанный интерфейс, поэтому вы должны использовать буферизованный интерфейс, который нелегко настроить. В дополнение к этому, драйверы могут неправильно инициализировать некоторые датчики, чтобы они зависали.
Существует программа под названием generic_buffer, упоминаемая в презентации, упомянутой выше. Тем не менее, есть много проблем с этой программой, по крайней мере, самые легкодоступные версии.
У меня есть исправленная версия generic_buffer в https://github.com/pfps/yoga-laptop под датчиками. У меня также есть программа, которая контролирует акселерометр и соответственно поворачивает экран. Не стесняйтесь использовать и злоупотреблять ими, и, если можете, улучшайте их.
Быстрый Google, я нашел это: https://archive.fosdem.org/2012/schedule/event/693/127_iio-a-new-subsystem.pdf
страниц 22-24: Пользовательский API, имеет некоторые команды оболочки для доступа к файлам устройства в /sys.
В дереве ядра linux также есть некоторая информация «Documentation / ABI / testing / sysfs-bus-iio».
Я не эксперт, но, может быть, это поможет вам разобраться?