본문 바로가기

기타

Lichee Nano 사용기

6달러정도의 가격에 SD카드사이즈의 리눅스 개발 모듈을 구매할 수 있다는 사실을 확인하고

타오바오에서 5인치 터치 LCD와 microSD 형태의 WIFI모듈과 함께 Lichee Nano 를 구매하였다.

물건을 받고 LCD를 연결하고 전원을 연결하여 부팅을 시도하였지만 실패

자료를 찾아보니 해당 모듈은 16MB SPI flash 메모리를 이용하여 부팅할 수 도있고

SD카드를 이용해서 부팅할 수 도있고

네트워크를 이용해서 부팅할 수 도있고

sunxi-fel 이라는 툴을 이용해 USB케이블을 이용하여 내장32MB 램에 직접 프로그램을 올려 부팅 할 수도 있다.

SD카드를 이용하여 부팅을 하면 부팅속도가 빠르고, 큰용량의 OS이미지를 사용할 수 있다는 이점이 있지만,

같이 구매한 WIFI모듈을 사용할 수 없다는 큰단점이 있다.

그래서 https://dl.sipeed.com/LICHEE/Nano/Image 에서 제공되는 spi flash 메모리용 이미지를

windows 용 sunxi-fel 툴을 이용하여 기록하고 부팅을 시도했는데 왜인지 부팅이 되지 않았다.

whycan.cn/p_52742.html#p52742 에서 제공하는 플래시메모리용 이미지로도 시도했지만 부팅이 되지 않았다.

 

unrecognized JEDEC id bytes: 0b, 40, 18 Failed to initialize SPI flash at 0:0 (error -2) =>

이러한 에러 메세지가 나오며 안되는데 이유는..

lichee nano image

 FLASH MEMORY 칩이 위 사진에보이는 25Q128FVSG 에서 XTX 사의 xt25f128b 로 변경 되었기 때문이다.

25Q128FVSG가 단종된것이 원인인것 같은데 부품을 바꾸었으면 공식 doc에서 대응방법을 알려줬으면 좋겠지만

그런건 없다.

이를 대응하기 위해선 U-BOOT를 수정해야하고 리눅스 커널 역시 수정해야한다.

U-BOOT 만 수정할 경우 아래 에러 메세지가 나온다.

m25p80 unrecognized JEDEC id bytes: 0b, 40, 18

그냥 리눅스를 켜보고자 하는거라면 github.com/thirtythreeforty/businesscard-linux 해당 소스코드를 적용하면된다.

 

thirtythreeforty/businesscard-linux

A Buildroot distribution small enough to run on my business card - thirtythreeforty/businesscard-linux

github.com

같은 메인 프로세서를 사용하며 xt25f128b도 지원하도록 패치되었다.

하지만 LCD나 터치패드등의 기능을 사용하기 위해서는 리눅스코드를 수정하고 직접 빌드해야하는데 수정까지는 어떻게 하더라도, make config 에서 문제가 있는지 부팅이 되지않는다.

여러기능들이 포함된 펌웨어에서 리버스 엔지니어링을 통해서 JEDEC id 만 교체해서 부팅을 시도해봤지만

U-BOOT 까지는 변경이되고 커널까지는 진입을 하지만 커널 코드는 압축이 되어 있어 JEDEC id 를 수정할 수 없다.

내 선택은 단종된 25Q128FVSG 플래시 메모리를 구매하여 교체하는것이다.

배송이 완료되면 테스트 해 볼 예정

잘되면 나같은 어려움을 격는 분들을 위해 나눔을 하고자 한다.