elsa in mac

Duet 2 보드 펌웨어 업데이트 후 부팅이 되지 않은 경우 이전 버전으로 복구하는 방법 (Terminal 방법) 본문

3D 프린터/Duet3D - Duet 2 컨트롤러

Duet 2 보드 펌웨어 업데이트 후 부팅이 되지 않은 경우 이전 버전으로 복구하는 방법 (Terminal 방법)

elsa in mac 2022. 10. 9. 13:01

Duet 2 WiFi  보드를 사용하면서, Firmware Update와 관련된 문제를 겪게되는 경우가 있지요.

최신 버전 Firmware가 올라왔지만, 미처 확인되지 않은 버그가 있어, Update를 한 후에 Booting이 되지 않거나, WiFi로 연결이 되지 않는 상황에 닥칠 수 있습니다. 

이 경우, 최근에 사용하던 Firmware로 복구를 해야 할 경우가 있다.  Duet2 보드의 Firmware 복구와 관련된 해결 방법은 이전 Posting에서 다룬적이 있습니다. 

하지만, 적어도 Mac을 사용하는 사용자라면, Big Sur 이 후 부터는 BOSSA GUI 앱이 동작하지 않습니다. 해당 앱 실행과 연관된 Library를 읽어 올 수 없기 때문입니다. 

이럴 경우, Terminal에서 해결을 할 수 있습니다. 

우선, macOS에 brew를 설치해야 합니다.  Homebrew 홈페이지에 가면, 아래와 같이 설치 할 수 있는 방법을 안내하고 있습니다. 

위의 스샷처럼 명령어를 Copy 한 후, Terminal 을 열고, 붙여넣은 후 실행해 주면 됩니다. 

Homebrew의 설치가 완료되면, 아래와 같은 명령을 수행하여 BOSSA를 설치해 줍니다. 

brew install bossa

설치는 GUI 앱과 bossac, bossash 이렇게 3개의 앱을 설치하게 됩니다. 앞서 언급한대로, GUI앱을 사용할 수 없으니, 이는 무시하고, terminal 에서 bossac를 사용하여 Firmware를 복구해야 합니다. 

Firmware 복구와 관련된 일반적인 절차를 요약하면 아래와 같습니다. 

1. Duet2 보드의 전원(12V 또는 24V)를 OFF 합니다. 
2. Duet2 보드에서 SDCard를 제거 합니다. 
3. Duet2 보드의 Flash 제거 Jumper를 설치해 줍니다. 아래 그림과 같이 SAM 칩 옆에 위치한 2pin Jumper (녹색 화살표) 입니다.

4. USB-Serial cable을 연결하여 전원을 넣어 줍니다. 
5. 10초간 유지
6. USB-Serial cable을 해제한 후, 2pin Jumper를 제거 합니다.
7. 다시 USB-Serial cable을 연결하여 전원을 넣어 줍니다.
8. terminal 에서 USB-Serial port를 확인해 줍니다 .확인하는 명령은 ls /dev/tty.* 입니다.

 위의 예를 보면, /dev/tty.usbmodem14642401 임을 알 수 있습니다. 

9. terminal 에서 bossac를 실행해 줍니다. 확인된 개발자 버전이 아니라는 경고창이 뜨면 시스템환경설정 > 보안 및 개인 정보 보호 창으로 가서 연결 허용을 해 줍니다.  (이것은 한번만 해주면 됩니다.)
10. 다시 terminal에서 기존에 잘 동작하던 Firmware가 있는 위치로 이동을 합니다. 
11. bossac를 다음과 같이 실행해 줍니다. 

bossac -p /dev/tty.usbmodem14644401 -e -w -v -b Duet2CombinedFirmware.bin

-p : Serial Port 이름
-e : erase
-w : write
-v : verify
-b : boot from flash flag

아래는 위의 명령을 실행했을 때의 화면 스샷 입니다. 

12. USB-Serial cable을 제거 합니다. 
13. SDCard를 다시 Duet2 보드에 넣고, 메인 전원(12V or 24V)를 On 해 줍니다. 
14. 웹 브라우저를 통해 Duet2에 연결한 후, 정상 동작을 확인합니다. 

 

 

만일 Firmware는 정상적으로 동작하지만, WIFI Server 쪽에 문제가 발생하여 WIFI 접속이 되지 않는 경우라면.. 아래를 참고한다. 

우선, SD Card에 업데이트하고자 하는 DUETWIFIServer.bin 파일을 firmware 폴더 밑에 넣는다. 그리고 DuetWebControl-SD는 압축을 해제한 후, SD Card의 www 밑에 위치 시킨다. 

다음, Serial Terminal로 DUET2와 컴퓨터를 연결한 후, 아래의 명령으로 firmware들을 업데이트 할 수 있다. 

M997 Sx

위의 명령에서 S0는 MainFiwmare를 다시 업데이트 하는 명령을 수행한다.  S1는 /firmware/DUETWIFIServer.bin 파일을 이용하여, WIFIServer쪽 firmware를 업데이트 하게 된다. 

정상동작 여부는 m122 로 확인할 수 있다. 

공유하기 링크
Comments