'2019/11'에 해당되는 글 1건

digispark는 소형 아두이노가 있습니다. 아두이노를 사용하고 아두이노와 호환되지만 사실 아두이노와는 구조가 다르죠.

 

하지만 크기가 워낙 작아서 쓸모가 많고 전력소비가 적은 ATTY85를 사용해서 전력이 부족한 배터리 환경에서도 사용이 가능하다는 잇점이 있습니다.

 

문제는.. AdaFruit사의 정품은 가격이 좀 쎈편입니다. 2만원 남짓..?

 

대신 중국에서 이를 복제한(복제해도 아두이노 라이센스상 문제는 없습니다.)제품이 배송비 포함 1달러 조금 넘게 팔리고 있습니다. 문제는 이거... 호환성이 극악합니다.

 

알고봤더니 Digispark가 사용하는 부트로더의 버전이 낮은 것이 원인이었습니다.

 

1.6버전을 사용한다고 떠있는데 그마저도 중국에서 수정을 좀 한 것으로 보입니다.

 

Digispark의 부트로더는 Micronucleus라는 것으로 1.x버전으로 1.11까지 나왔고 2.x는 지금도 활발히 개발중입니다. 제가 사용한 보드는 1.6버전의 부트로더를 쓰고 있으므로 2.x를 쓰면 벽돌이 될 확률이 높습니다. 그러므로 1.11버전을 사용하는 것이 좋습니다.

 

Digispark의 버전을 확인 하는 방법은 아두이노IDE에서 Digispark관련 패키지를 설치한 후에 그곳에 있는 툴을 이용해서 확인 하면 됩니다.

 

우선 아두이노IDE를 설치하고(IDE의 설치 방법은 생략합니다. 워낙 쉽기때문에...) 파일-환경설정으로 들어갑니다.

 

그리고 추가적인 보드매니저URL에 다음과 같이 적습니다.

 

http://digistump.com/package_digistump_index.json

 

그 다음 확인을 누른 후

 

툴-보드-보드매니저

여기서 Digistump AVR Boards를 설치합니다

난 이미 설치가 되어 있어서 INSTALLED라고 떠있는 것 뿐이다

그러면 리눅스라면 ~/.arduino15/packages/digistump/tools/micronucleus/ 여기서 폴더 하나만 더 들어가면 micronucleus라는 프로그램이 있고 해당 프로그램을 터미널로 실행 하는 것만으로도 확인이 가능합니다

 

그런데 제가 구입한 보드는 어찌된 영문인지 리눅스용 프로그램에서는 인식이 되지 않고 윈도우에서만 인식이 되었습니다. 그래서 어쩔 수 없이 윈도우 가상머신을 설치 후에 https://github.com/digistump/DigistumpArduino/releases/download/1.6.7/Digistump.Drivers.zip 

위 드라이버를 설치해서 윈도우에서 잡아주는 방법만이 가능했습니다. 대체 중국에서 무슨 짓을 했는지 궁금하군요.

 

어쨌건 드라이버를 설치하고 가상머신에서 USB연결을 이용해서 윈도우에 인식시키니 드디어 장치가 인식 됩니다.

대신 윈도우에서 부트로더를 업그레이드하면 이후에는 리눅스에서도 아무 문제없이 사용이 가능해집니다. 이 참에 윈도우 가상머신을 하나 구비해두시는 것을 추천합니다. 저는 네트워크를 끊어놓은 XP 가상머신 시스템을 하나 구비했습니다.

 

어쨌건 윈도우에서 드라이버가 설치되었다면 보드 인식이 되었을 겁니다. 그리고 드라이버 설치 폴더를 뒤져보면 Micronucleus.exe라는 프로그램이 있을 겁니다. 이것을 이용해서 부트로더를 업그레이드 하게 됩니다. 단, 명령어를 쓰기 때문에 기본 cd명령어 정도는 알고 계셔야 합니다.

 

1. 우선 Digispark장치를 뽑습니다.

 

2. 윈도우에서 CMD.exe를 열고 드라이버 설치 폴더로 들어갑니다. (cd 어쩌고)

 

3. 그리고 https://github.com/micronucleus/micronucleus/blob/v1.11/upgrade/releases/micronucleus-1.11-upgrade.hex 여기서 RAW버튼을 눌러서 hex파일을 다운로드 받아서 Microclues.exe파일이 있는 곳에 복사합니다.

 

Micronucleus.exe --run "micronuclues-1.11-upgrade.hex"

 

이렇게 명령어를 치면 장치를 연결해달라는 말이 뜹니다. 이 5초 안에 장치를 연결하고 USB장치를 잡아야 합니다. 하지만 5초란 시간은 생각보다 넉넉합니다.

 

그러면...

부트로더 업그레이드가 완료 됩니다.

 

이제 리눅스에서 시도해보면 문제없이 구동되는 것을 알 수 있습니다!

,