сенсори та linux (продовження)

| комп'ютери, linux, bash

невеликий проміжний підсумок експериментів з сенсорами на aspire r13: linux (в моєму випадку arch під капотом manjaro) від початку має необхідні драйвери для підсистеми industrial i/o та дає доступ до їх відгуків через дерево підтек і текстових файлів:

/sys/bus/iio/devices/
└ iio:device0/ # магнетометр
└ ...
└ iio:device1/ # датчик нахилу?
└ ...
└ iio:device2/ # датчик кутової швидкості?
└ ...
└ iio:device3/ # акселерометр
├ in_accel_x_raw # вісь x: кут нахилу в площині екрана
├ in_accel_y_raw # вісь y: кут нахилу екрану на себе/від себе
├ in_accel_z_raw # ?
└ ...
└ iio:device4/ # ?
└ ...
└ iio:device5/ # сенсор освітлення
├ in_illuminance_raw # рівень освітленості (підозрюю, що в десятих люкса)
└ ...

при цьому сам manjaro ніяк ці дані не використовує: вочевидячки, дистрибутив просто не призначений для пристроїв-трансформерів чи планшетів.

тож я накидав невеликий (і дуже чорновий) скрипт оболонки, котрий інтерпретує дані від акселерометра і сенсора освітлення (можливо, поки що не дуже коректно) і дозволяє погратися з ними — себто, покрутити ноутбуком на всі боки й спостерігати, як міняються показники:



що далі? зібрати докупи три різних скрипти, що вже маю:
  • універсальний повертач екрану/тактильного екрану
  • перемикач режиму (пейзаж/портрет)
  • скрипт інтерпретування сенсорів…
…у один автоматичний перемикач режиму ноутбук/планшет залежно від нахилу. отже, як каже один добрий сусіда наприкінці кожного допису — не перемикайтеся =)

поновлення (2018-12-22): халепа! під час завантаження сенсори монтуються до тек device0...device5 суб'єктивно випадковим чином… себто  після перезавантаження акселерометр опинився в теці device5 замість device3… себто треба шукати спосіб динамічно визначати, куди який сенсор змонтовано.