아두이노와 옥토블루 텐터클로 코딩 없는 IoT 디바이스 만들기
부품 및 소모품
부품
수량
비고
아두이노 메가 2560 (또는 호환 보드)
1
아두이노 우노, 나노 등 어떤 아두이노 계열도 가능
파티클 포톤 (Particle Photon)
1
옥토블루 권장 보드, 와이파이 내장
아두이노 이더넷 실드
1
유선 인터넷 연결용 (선택)
아두이노 와이파이 실드
1
비추천: 비싸고 제약 많음
ESP8266 (ESP-01 등)
1
저가 와이파이 모듈 ($5 수준), 예제 스케치 별도 포팅 필요
앱 및 온라인 서비스
옥토블루 메쉬블루 (Octoblu Meshblu) - 오픈소스 메시지 라우팅 플랫폼
프로젝트 개요
IoT 프로젝트를 시작하는 가장 쉬운 방법은 옥토블루(Octoblu) 를 활용하는 것입니다. 최근 출시된 마이크로컨트롤러 라이브러리 텐터클(The Tentacle) 덕분에, 어떤 아두이노 계열 보드든 맞춤 코드 작성 없이 몇 분 만에 옥토블루 플로우 디자이너에 연동할 수 있습니다.
공식 문서: https://tentacle.readme.io
옥토블루 플로우 디자이너에서 마이크로컨트롤러 제어 화면
1단계: 옥토블루 계정 만들기
첫 단계는 옥토블루 계정 생성입니다. 무료이며 1분 내 완료됩니다.
https://app.octoblu.com
2단계: 옥토블루에서 디바이스(Thing) 생성
메시블루(Meshblu, 옥토블루의 오픈소스 메시지 라우팅 시스템)에서 디바이스 ID를 발급받아 마이크로컨트롤러와 양방향 통신할 수 있게 합니다.
옥토블루 로그인 후 Things 섹션으로 이동
새 Thing 등록: 드롭다운에서 "Register a new thing" 선택
검색창에 "tentacle" 입력 후 텐터클 아이콘 클릭
이름 입력 후 생성
자동으로 플로우 디자이너로 리다이렉트되므로, 다시 Things 페이지로 돌아가 "Connected Things" 탭에서 방금 만든 텐터클 클릭
이 페이지를 열어 둔 채 아두이노 설정 진행
3단계: 아두이노에 텐터클 라이브러리 설치
참고: 옥토블루는 포톤을 선호하지만, 아두이노가 더 널리 쓰이므로 아두이노 기준 설명합니다. 포톤은 build.particle.io 에서 "tentacle-particle" 라이브러리로 동일하게 적용 가능.
GitHub 릴리스 페이지에서 tentacle-build-arduino.zip 다운로드 (소스 코드가 아닌 빌드된 zip 파일)
아두이노 IDE: 스케치 → 라이브러리 포함 → .ZIP 라이브러리 추가 로 설치
파일 → 예제 → Tentacle 에서 본인 보드에 맞는 예제 스케치 열기
4단계: 옥토블루 Thing UUID와 토큰을 스케치에 입력
옥토블루 Things 페이지에서 해당 디바이스 클릭 → UUID 복사 → 스케치의 uuid[] 변수에 붙여넣기
"Generate Token" 버튼 클릭 → 발급된 토큰 복사 → 스케치의 token[] 변수에 붙여넣기
와이파이 사용 시: 스케치 내 SSID와 비밀번호 설정
아두이노에 업로드
시리얼 모니터에서 연결 성공 로그 확인
업로드 후 시리얼 모니터(Tools → Serial Monitor)를 열면 연결 로그가 출력됩니다. 옥토블루 Things 페이지를 새로고침하면 핀 모드 설정, 핀 상태 브로드캐스트 주기 등 구성 옵션이 활성화된 것을 볼 수 있습니다.
완료! 이제 플로우 디자이너에서 제어 가능
축하합니다! 이제 마이크로컨트롤러를 플로우 디자이너에 드래그 앤 드롭해 IoT 세상의 어떤 것과도 연동해 제어할 수 있습니다.
제한 사항: 현재 텐터클은 아날로그 핀을 A0, A1 같은 표기로 지정할 수 없습니다. 실제 핀 번호(예: A0=16, A1=17...)로 지정해야 합니다. 향후 개선 예정입니다.
소스 코드
텐터클 라이브러리 최신 릴리스: https://github.com/octoblu/tentacle-build (Releases 탭에서 tentacle-build-arduino.zip 다운로드)