OctoPrint (옥토프린트)는 라즈베리파이 혹은 비슷한 오렌지 파이같은 싱글보드 PC에 설치하는 일종의 리눅스 OS입니다.
라즈비안에서도 바로 설치가능하다는걸 보면 OctoPi 라즈베리 버전은 아마도 리눅스 데비안 계열이 아닐까 싶은데..
일반적인 데스크탑 환경은 빠져 있으며 단순히 웹에서 접속해서 바로 옥토프린트 웹 환경이 사용이 가능하도록 만들어져있습니다.
외부 사용을 위한 DDNS 사용이 필요하니 DDNS 설정은 필수일 것으로 보입니다.
위 옥토프린트 OS를 설치하는 이유는 다음과 같습니다.
일단 3D프린터를 구매하게 되면 다양한 출력 파일을 사용할 수 있지만 기본적으로 엔더의 경우 SD카드에 출력물의 모델 파일인 *.gcode 라는 파일을 넣어야합니다.
그리고 그걸 프린터의 메뉴에서 SD카드로 접근 한 뒤 오프라인으로 선택하면 해당 파일의 출력이 진행되는 구조입니다.
제 경우 베란다에 프린터가 설치되어 있기 때문에 작은방의 메인 PC에서 출력을 시도 한다면 모델을 슬라이스 하고 베란다의 프린터에서 SD 카드를 뽑아다가 양쪽을 왔다갔다 하면서 세팅하고 출력을 진행하게됩니다.
이렇게 SD카드에 파일을 복사하기 위해 물리적으로 이동해야하는 부분이 굉장히 귀찮은 작업이 됩니다.
만약 옥토프린트를 설치하게 된다면 웹 화면에서 gcode를 드래그 앤 드랍 해주고 나서 단순히 온도설정 누르고 프린트 버튼만 누르면 되는 간단한 작업이 됩니다.
공유기에서 DDNS와 포트포워딩을 설정하면 외부에서도 출력을 시작하거나 카메라를 연결해 모니터링도 가능하기 때문에 굉장한 편리함을 제공해줍니다.
마치 무슨 토렌트 리모트 다운로드 마냥 프린트 관리가 더욱 편리하게 만들어 주니 구축만 가능하다면 필수 기능이라고 할 수도 있겠습니다.
현재 옥토 프린트로 만들어 사용 가능한 기기로는 라즈베리 파이 3B+와 4를 가지고 있습니다.
사실상 대부분 놀고 있는 애매한 포지션인 라즈베리 3B+는 성능을 떠나서 슈패미 J 버전 RetroFlag 케이스에 레트로 게임기로 제작해서 완성해 놓은 상태입니다.
아무래도 굳이 뜯어서 프린터로 보내기엔 너무 아깝다(!?)라는 생각이 들었습니다.
옥토프린트를 설치하기 위한 최적의 환경은 3B+라는게 정설이긴 하나 결국 다 뜯어 놓고 놀고 있던 라즈베리 4를 사용했네요.
이렇게 쿨링준비도 완벽하게 되어있는 라즈베리파이 4 코디 케이스 버전이 옥토프린트로 참전합니다.
별도 팬이 필요 없이 케이스만으로도 칩셋의 발열을 잘 대응하고 있는 일체형 케이스입니다.
나스에서 메인 포탈쯤으로 사용하고있는 프론트엔드인 헤임달의 모습입니다.
옥토프린트의 웹 API 지원이 잘되어 있다보니 토렌트용 트랜스미션처럼,
프린터의 남은 출력시간과 퍼센트를 보여주는 모습이 아주 인상적이었습니다.
위 네이버 블로그에서 지구인님이 잘 설명해 두셔서 네이버블로그를 참고하여 설치를 진행했습니다.
1. 옥토 프린트 사이트에서 라즈베리용 옥토파이 이미지 다운로드
먼저 옥토프린트를 다운로드 받기 위해 공식 사이트로 이동합니다.
메인화면의 다운로드 버튼을 눌러줍니다.
다운로드 화면으로 오게되면 역시 덕후들의 애장품이자 인기가 자자한 옥토파이가 보입니다.
옥토프린트의 라즈베리파이 전용 이미지니 위 파일을 다운로드 하도록 하겠습니다.
다운로드가 완료되면 위처럼 압축을 풀어줍니다.
리눅스 데비안 버스터 버전 기반으로 만들어져 있고 용량은 2.68기가쯤 됩니다.
2. OctoPi(옥토파이) SD카드에 굽기
일단 SD카드에 이미지를 굽기위해 Win32 Disk Imager를 사용하겠습니다.
요즘 핫한 balenaEtcher 를 사용하셔도 무관합니다만, 별도 검증이나 체크 과정이 없는만큼 빠르게 구울수 있는 위 Win32 Disk Image을 이용했습니다.
간단하게 SD카드를 PC와 연결해주고 이미지를 구워줍니다.
꽤나 시간이 걸리는 작업이니 TV를 본다거나 잠시 자리를 비우셔도 좋습니다.
이미지가 모두 구워지면 라즈베리파이에 넣고 부팅을 시켜줍니다.
리눅스로 CLI 환경으로 부팅되면 기본 아이디는 pi
비밀번호는 raspberry
입니다.
sudo raspi-config
먼저 부팅이 되고나면 raspi-config
명령어로 라즈베리파이 설정메뉴를 먼저 설정해줍니다.
라즈베리에서는 무선으로 와이파이를 사용할것이니 네트워크 옵션부터 손보도록 하겠습니다.
두번째 항목인 와이파이 메뉴로 이동합니다.
와이파이 연결은 현재 사용하는 와이파이 SID(와이파이 이름)을 입력하고 비밀번호를 넣는 것으로 설정이 완료됩니다.
다음은 라즈베리파이의 국민 옵션인 SD카드 용량 최적화입니다.
이미지를 구울 당시 원본 이미지 만큼의 용량만 설정하고 있기 때문에 반드시 설정이 필요한 옵션입니다.
64기가 SD카드를 한계까지 사용가능하도록 Expend 해주는 옵션이 위 어드밴스옵션 항목 안에 있습니다.
첫번째 항목인 Expend Filesystem ... 을 눌러주세요.
SD카드 최적화가 시작됩니다.
루트 파티션의 사이즈가 리사이징 되었으니 재부팅후부터 적용된다고 나옵니다.
일단 기본적인 작업은 완료한 셈입니다.
이번엔 컨트롤 C를 두번 눌러서 raspi-config을 종료합니다.
sudo apt update
sudo apt upgrade
다음은 sudo apt update를 통해 패키지 리스트를 갱신합니다.
그리고 모두 완료되면 sudo apt upgrade를 통해 패키지들을 모두 업데이트 해줍니다.
이렇게 되면 라즈베리파이에서의 작업은 모두 끝났습니다.
sudo ifconfig
위 명령어로 현재 라즈베리 파이의 아이피를 확인하고 해당 아이피를 크롬등의 브라우저에서 접속합니다.
위처럼 인쇄하는 모습을 실시간으로 보여주며 추가로 카메라를 설치하면 유튜브에서 볼 수 있었던 기가막힌 타임랩스를 촬영가능합니다.
아마도 Z축과 Y축이 특정시점으로 도착할때 끊어서 촬영하는 방식인듯 한데 말로 설명할 수가 없어 영상을 첨부합니다.
위처럼 멋진 영상을 만들수 있습니다.
일단 1.2 버전의 라즈베리 호환 카메라는 있는데 아직 고정을 위한 마땅한 케이스를 찾지못해 설치를 못하고 있습니다.
다음번엔 꼭 타임랩스를 찍어보고 싶은데 적당한 모델을 출력해보아야겠네요.
도움이 되시길 바랍니다.
감사합니다.