그동안 계속해서 실패하던 파이선으로 만든 디지털 시계를 라즈베리파이 부팅이후 자동으로 실행하고자 했던 부분이 마침내 성공했다.  인터넷으로 실행가능하다는 별별 내용을 적용해 보았지만 안되더니 한 블로그에서 본 내용을 적용했더니 바로 적용이 되었으나, 다음 부팅시 로그인을 요구하는 창이 무한반복해서 나타나는 버그가 있었다.

그래서 결국, 쉘 명령어로 부팅할 때, 시작되는 방식으로 변경하게 되었다.

1. 쉘 명령어 라인을 새로 만든다.
    sudo nano run_autostart.sh

2. 다음과 같이 명령어 라인을 입력하고 저장한다.
    #!/bin/bash
    echo "run_autostart.sh"

    sudo python /home/pi/******.py

3. 권한 정보를 변경합니다.
    sudo chmod +x run_autostart.sh

4. 테스트 실행을 해본다. 이상 없으면 다음단계..
    sh run_autostart.sh

5. 실제 부팅할때 실행하는 autostart 파일을 수정합니다.
    sudo nano /etc/xdg/lxsession/LXDE-pi/autostart

6. 마지막 줄에 다음과 같이 입력하고 저장한다.
    lxterminal -e ~/run_autostart.sh

7. reboot 하여 확인한다. 

 

[아래 방식은 실행은 되지만 무한 로그인을 요구하는 버그가 있습니다.]

profile  파일은 라즈베리파일이 부팅될때 반드시 실행되는 파일이란다. 이 파일을 열어서 파이썬 실행을 요청하면 된다.

sudo nano ~/.profile   

.profile 파일의 맨 끝줄에 다음의 내용을 추가하고 저장하면 가능해진다.

#시작과 동시에 python 파일을 실행하기
export PATH=~/.local/bin:%PATH
(sleep 10 && /usr/bin/python /home/pi/*******.py) &

이렇게 저장하고 나온뒤에 

source ~/.profile  을 실행하고 reboot 하면 적용된다.

Posted by 천칭
,

거의 10년가까이 된 스크린 터치가 지원되는 라즈베리파이용 5인치 LCD 모니터가 있다.

잘 사용하지도 않지만 이제는 여러개가 돌아다니는 라즈베리파이3B도 남아돌아서 사용처를 찾기도 어렵다.

이런 상황에서 이 둘을 합쳐 사무실에서 간단한 디지털 시계와 날씨를 표시하는 시계정도로 사용하고자 하였다. 그러나 라즈베리파이의 OS는 공식적으로 저 모니터 해상도를 지원하지 않는다. 간단한 설정으로는 저 해상도를 인식하지 않는다. 특히, 라즈비안의 최근버전인 Bookworm부터는 /boot/config.txt를 수정하는 방식을 제공하지 않는다.

그래서 제조사에서 제공하는 별도의 드라이버를 설치해야 한다.

$sudo rm -rf LCD-show
$git clone https://github.com/goodtft/LCD-show.git
$chmod -R 755 LCD-show
$cd LCD-show/
$sudo ./LCD5-show

Posted by 천칭
,