MAX7219 는 8*8 LED로 구성된 매트릭스 표시 드라이버입니다. 

라즈베리파이와 SPI통신을 통해 제어가 가능합니다.


가격은 8천원 정도 하는데, 알리 같은데서 사면 더 저렴하게 구할 수 있습니다. 대신 오래 기다려야합니다..

 

 

 



디지털 표시기를 라즈베리파이와 연동하기 위해 기본적인 셋업을 해보았습니다.

 

우선 라즈베리파이와 MAX7219 핀은 아래 처럼 연결합니다.

 

 

 


그리고 라이브러리 설정을 합니다.

 

Python코드로 Luma.LED_Matrix를 이용하면 쉽게 설정이 가능합니다.


기본적인 설정에 관한 설명은 아래 링크에 잘 되어있었으나 실제 설정 중에 몇가지 문제가 발생하여 정리해두고자 합니다.


https://luma-led-matrix.readthedocs.io/en/latest/install.html


 

 

처음 라즈베리파이를 설정하고 난뒤 상태의 기준으로 했으며, Python3명령어로 셋팅을 했습니다.



우선 SPI 설정을 해두어야합니다.

아래 명령어로 spi 설정이 enable되었는지 확인합니다.

아무런 결과가 없다면 설정이 안된 것입니다.

 

 


 

아래 명령어로 라즈베리파이 설정화면으로 가서 5 Interfacing Options를 선택하고 P4 SPI를 Enable합니다.

sudo rasp-config

 

 

 

 

 


그리고 파이를 껐다가 켭니다!

 

 

 

이제 다시 lsmod | grep -i spi 해보면 뭔가 나오는 것을 확인 할 수 있습니다..

 




 


 

그리고... 필요한 라이브러리들을 설치합니다.



$sudo apt-get install build-essential python3-dev python3-pip libfreetype6-dev libjpeg-dev libopenjp2-7 libtiff5 git

공식페이지에서 빠져있는 libopenjp2-7 libtiff5 git 도 추가로 설치합니다. 안그러면 오류납니다...




그런 다음 파이썬 이미지라이브러리를 설치합니다. 역시 안그러면 오류납니다...


$pip3 install pillow





이후, luma.led_matrix 라이브러리를 설치합니다.


  $sudo -H pip3 install --upgrade luma.led_matrix

 

 

 

이제 라이브러리 설치는 모두 끝났습니다.

 

샘플 코드를 받아서 한번 실행 보도록 하겠습니다.

 

하면 luma.lend_matrix가 생기며, 그곳에 소스가 복사됩니다.

그리고 복사한 디렉토리내 examples에 샘플 소스가 있습니다.

 

python3 matrix_demo.py -n 4 --block-orientation=90

-n은 꽂혀진 매트릭스 판때기의 갯수고, --block-orientation은 글자 방향입니다.

 

정리해보니 간단한데.. 이번에도 삽질을 많이 했었네요.

 

 

 

유료툴이긴 하지만 꽤 유용해서 포스팅을 남깁니다.


윈도우에서 리눅스 파일 시스템을 읽고 쓰기를 할 수 있는 툴이 있었네요.


https://www.paragon-software.com/business/extfs-for-windows/


라즈베리파이에 이미지를 굽고, sshd가 바로 구동 될 수 있도록 하기 위해서는


/etc/rc.local 파일을 수정해야합니다.


systemctl start ssh (추가)


그런데 이 작업은 라즈베리파이에 키보드를 연결하고, 모니터 연결해서 직접 수정하는 수밖에 없는데요, 이미지를 바로 수정하는 방법을 없을까 찾아보다가 알게된 툴입니다.



가격은 2만1천원입니다만,


설치시 트라이얼로 10일간 임시 사용을 할 수 있습니다.








이렇게 탐색기로 바로 접근이 가능합니다. (수정도 가능하구요. ext2/ext3/ext4 가 가능하다고 하네요.)



좀 더 찾아보니, HFS+ 파일시스템을 윈도우에서, macOS에서 NTFS를 사용할 수 있는 제품도 있고, 이 기능들을 통합한 제품도 판매를 하는 군요.


이름하여, 교차 플랫폼 팩,

https://www.paragon-software.com/ko/home/file-system-link-suite/



참 재미있고도 유용한 툴입니다.




icbanq에서 3주전에 주문했으나, 비슷한 다른 제품을 받고 교환 받는데 3주나 걸려서 주말에 만져보게되었습니다.

(재고가 없어 해외로 재신청해서 받는데 꽤나 올래걸렸군요.)

 

 

esp8266 은 마이크로 컨트롤러와 wifi가 같이 결합된 칩으로, 라즈베리파이보다 전력소모가 작아, 배터리로 동작하기가 유용하다는 장점이 있죠.

 

개발 방식은  C를 이용하거나, (펌웨어를 다시 올리는 방식..), 파이썬, 루아, 자바스크립트등으로 인터프리터 방식으로 동작하는 것도 가능했습니다.

그래서 제일 괜찮아 보이는 방식인 파이썬을 이용하게 되었습니다.

 

인터넷을 검색하니, 나온지 꽤 시간이 지난 칩이고 해서 자료가 많았습니다.

기본적으로는 드라이버 설치하고 연결해서, 플래시 롬 내용을 지우고, micro python으로 펌웨어로 다시 설치하고,.. 여기까지가 기본이었고.

그 다음부터는 개발할 python스크립트를 개발해서 올리면 되더군요.

 

 

우선 테스트 샘플 파일로 웹서버를 구동해보았습니다.

 

 

잘 되는군요!

 

 

* 개발 환경 구축 : https://developer.ibm.com/kr/cloud/2018/01/06/esp8266-iot-micropython-start/

* CP210x USB Driver : https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers

* mycro python docs : https://docs.micropython.org/en/latest/esp8266/tutorial/intro.html

* mycropython esp8266 firmware : http://micropython.org/download#esp8266

* esplorer download : https://esp8266.ru/esplorer/#download

* 테스트 샘플 파일 : https://www.pi4iot.com/doku.php?id=sbc:esp8266

* Azure IOT 와 esp8266 https://docs.microsoft.com/ko-kr/azure/iot-hub/iot-hub-arduino-huzzah-esp8266-get-started

+ Recent posts