Raspberry Pi: SenseHat не может инициализировать датчики из веб-приложения - PullRequest
0 голосов
/ 28 апреля 2020

Здравствуйте, спасибо, что прочитали мой самый первый вопрос!

Я пытаюсь интегрировать данные датчика платы Sense HAT (ранее ASTRO PI) в веб-страницу, которую я размещаю на Raspberry Pi 4 с NGINX + uWSGI + Flask. У меня были некоторые проблемы, так как пользователь www-data не мог получить доступ, например, к устройству / dev / fb1. Наверное, я исправил некоторые из этих проблем, добавив www-data к pi , input , gpio и video группы пользователей, но в журнале uWSGI я по-прежнему получаю исключение, когда пытаюсь получить доступ / инициализировать влажность, температуру или давление SenseHAT:

[2020-04-28 11:15:55,904] ERROR in app: Exception on /system [GET]
Traceback (most recent call last):
  File "./web_base.py", line 35, in system
    temp_humidity = round(sense.get_temperature_from_humidity(),1)
  File "/usr/lib/python3/dist-packages/sense_hat/sense_hat.py", line 582, in get_temperature_from_humidity
    self._init_humidity()  # Ensure humidity sensor is initialised
  File "/usr/lib/python3/dist-packages/sense_hat/sense_hat.py", line 549, in _init_humidity
    raise OSError('Humidity Init Failed')
OSError: Humidity Init Failed

Когда я запускаю его как пользователя по умолчанию в Thonny, он работает, поэтому я думаю, что я все еще скучаю по какой-то группе для моего www-data пользователя.

Я использую объект CPUTempera из gpiozero , также для чтения процессора температура, и это работает, только датчики от sense_hat не в состоянии инициализировать.

Кто-нибудь есть какие-либо идеи, что я пропускаю, или дать мне подсказку, где искать, чтобы найти решение?

Большое спасибо.

HvFf

...