1. 발생 환경
-
OS: Ubuntu 22.04 (Jammy, ARM 포트 환경
-
사용 목적: 비(非)라즈베리 보드(Topst보드)에서 Adafruit CircuitPython DHT + Blinka (libgpiod 직접 지정 방식) 으로 DHT22 센서를 구동하는 것
-
설치 명령
sudo apt install -y python3-pip python3-libgpiod libgpiod2 gpiod
2. 증상
-
apt실행 시 다음과 같은 메시지 발생xserver-common : Depends: x11-xkb-utils but it is not going to be installed E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution). -
이로 인해
libgpiod2및python3-libgpiod설치가 차단되고 있음. -
강제로 제거할 경우, 그래픽 출력 등 영향이 있을 것 같음
4. 최종 목표 (예시 코드 첨부)
최종 목표는 라즈베리파이가 아닌 보드에서 Adafruit CircuitPython DHT + Blinka를 libgpiod 직접 지정 방식으로 활용하는 것입니다.
아래는 해당 환경에서 정상 동작을 기대하는 예제 코드입니다.
import time
import adafruit_dht
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
# gpioinfo 로 확인한 DATA 라인 번호 (예: BCM4라면 보통 4)
LINE = 4
dht = adafruit_dht.DHT22(Pin(LINE), use_pulseio=False)
while True:
try:
t = dht.temperature
h = dht.humidity
if t is not None and h is not None:
print(f"T={t:.1f}°C H={h:.1f}%")
else:
print("읽기 실패, 재시도")
except RuntimeError:
# DHT22 특성상 간헐 실패는 정상
pass
time.sleep(1)