본문 바로가기

ESP32

zclaw 888KiB ESP32 기반 AI 에이전트

반응형

zclaw: 888KB 펌웨어에 AI 비서를 집어넣다 — 제약이 만든 임베디드 AI의 새로운 패러다임

 

AI 비서라고 하면 클라우드 서버 클러스터나 최소한 스마트폰급 하드웨어를 떠올린다. 그런데 누군가가 5달러짜리 마이크로컨트롤러에 AI 비서를 올렸다. 펌웨어 전체 — OS, Wi-Fi 스택, TLS 암호화, 인증서 번들까지 포함해서 — 888KB 이하. zclaw는 ESP32에서 동작하는 C로 작성된 AI 개인 비서다. 스케줄링, GPIO 제어, 영구 메모리, 자연어 기반 도구 조합까지 지원한다. 앱 로직 자체는 고작 26KB에 불과하다. 이 프로젝트가 흥미로운 이유는 단순히 "작게 만들었다"가 아니라, 임베디드 AI 에이전트의 아키텍처를 근본적으로 다시 생각하게 만들기 때문이다.

 

 

 

888KB라는 숫자가 말해주는 것

 

zclaw의 펌웨어 크기 제약은 마케팅용 슬로건이 아니다. ESP32-S3 기본 빌드의 실제 크기 분석을 보면 이 숫자의 의미가 선명해진다.

 

zclaw 앱 로직(libmain.a)은 26,430바이트, 약 25.8KB로 전체의 3.1%에 불과하다. 나머지 97%는 인프라다. Wi-Fi와 네트워킹 스택이 366.5KB(43.7%)로 가장 큰 비중을 차지하고, TLS/암호화 스택이 122.8KB(14.7%), 인증서 번들과 앱 메타데이터가 90.5KB(10.8%), ESP-IDF/FreeRTOS 런타임과 드라이버가 232.3KB(27.7%)를 먹는다. 최종 바이너리(zclaw.bin)는 865,888바이트, 약 845.6KB로 888KB 한도 안에 들어온다.

 

여기서 읽어야 할 포인트는 두 가지다. 첫째, 진짜 AI 비서 로직을 26KB로 구현했다는 것. 둘째, 임베디드 시스템에서 "지능"을 구현하는 데 필요한 비용의 대부분은 네트워킹과 보안이라는 사실이다. Wi-Fi + TLS만 합쳐도 전체의 58%를 넘긴다. 이건 IoT 디바이스에 AI를 탑재하려는 모든 프로젝트가 직면하는 현실이기도 하다.

 

씬 클라이언트 패턴: 추론은 클라우드에, 행동은 디바이스에

 

zclaw의 아키텍처를 한마디로 요약하면 "LLM 씬 클라이언트(thin client)"다. 디바이스 자체에서 모델을 돌리는 게 아니라, Anthropic Claude, OpenAI, OpenRouter 같은 클라우드 LLM 프로바이더에 API 호출을 보내고, 그 응답을 로컬에서 실행한다. 이 접근법이 현명한 이유가 있다.

 

요즘 엣지 AI 진영에서는 TinyML이나 경량 모델을 디바이스에서 직접 실행하는 방향에 집중하고 있다. ESP32-S3에서 TensorFlow Lite Micro를 돌려 음성 인식이나 제스처 감지 정도는 가능하다. 하지만 자연어 이해와 복잡한 추론이 필요한 "비서" 수준의 기능은 현재 마이크로컨트롤러의 메모리와 연산 능력으로는 불가능하다. zclaw는 이 현실을 직시하고, 디바이스는 센서/액추에이터 제어와 스케줄링이라는 자기 역할에 집중하게 하고, 지능은 클라우드에 위임한다.

 

트레이드오프는 명확하다. 네트워크 연결이 끊기면 AI 기능을 쓸 수 없다. 매 요청마다 API 호출 비용이 발생한다. 응답 지연도 Wi-Fi + 인터넷 왕복 시간만큼 늘어난다. zclaw가 릴레이 경로와 시리얼 직접 연결 두 가지 모드의 레이턴시 벤치마크 스크립트를 제공하는 이유가 여기에 있다. 하지만 반대로, 클라우드의 최신 모델을 즉시 활용할 수 있고, 디바이스 펌웨어를 업데이트하지 않아도 AI 능력이 계속 향상된다는 장점이 있다.

 

자연어 도구 조합이라는 설계 철학

 

zclaw의 가장 흥미로운 기능은 "자연어를 통한 커스텀 도구 조합(custom tool composition through natural language)"이다. 내장 도구와 사용자 정의 도구를 자연어 명령으로 결합할 수 있다는 뜻이다. 이건 본질적으로 LLM의 함수 호출(function calling) 패턴을 마이크로컨트롤러 위에 구현한 것이다.

 

구체적으로 GPIO 읽기/쓰기, 타임존 인식 스케줄링(매일 반복, 주기적, 일회성), 재부팅 후에도 유지되는 영구 메모리를 기본 도구로 제공하고, 사용자가 새로운 도구를 추가해 조합할 수 있다. "매일 오전 7시에 온도 센서를 읽고, 30도가 넘으면 팬 릴레이를 켜줘"라는 자연어 명령이 스케줄러 + GPIO 읽기 + 조건 판단 + GPIO 쓰기로 분해되어 실행되는 구조다.

 

GPIO 제어에 가드레일(guardrails)을 두어 의도치 않은 하드웨어 상태 변경을 방지한다는 점도 눈에 띈다. 임베디드 시스템에서 AI 에이전트가 물리적 하드웨어를 직접 제어한다는 건, 소프트웨어 버그가 현실 세계의 물리적 결과로 이어진다는 의미다. LLM의 할루시네이션이 릴레이를 잘못 켜는 상황을 생각하면, 이런 안전장치는 필수다.

 

보안: 5달러 디바이스에서도 타협하지 않는 것

 

888KB 한도 안에서 TLS/암호화 스택에 122.8KB, 인증서 번들에 90.5KB를 할당했다. 전체의 25%가 보안이다. API 키와 Wi-Fi 비밀번호는 NVS(Non-Volatile Storage, ESP32의 플래시 기반 키-값 저장소) 파티션에 보관되며, --flash-mode secure 옵션으로 암호화 모드 플래싱도 지원한다.

 

이건 IoT 보안이라는 업계의 오래된 아킬레스건을 정면으로 다루는 것이다. 수많은 IoT 디바이스가 평문으로 자격 증명을 저장하거나 TLS 없이 통신하는 현실에서, 극도로 제약된 환경에서도 보안을 기본값으로 가져간다는 설계 의지가 드러난다. 물론 펌웨어 크기의 4분의 1을 보안에 쓴다는 건 나머지 기능에 쓸 수 있는 공간이 그만큼 줄어든다는 뜻이기도 하다.

 

더 큰 그림: 임베디드 AI 에이전트의 시대

 

zclaw를 단독으로 보면 재미있는 사이드 프로젝트다. 하지만 업계 맥락에서 보면 하나의 흐름을 상징한다.

 

AWS IoT, Google Cloud IoT, Azure IoT Hub 같은 플랫폼들은 클라우드 쪽에서 IoT를 AI와 연결하는 접근법을 취해왔다. 디바이스는 데이터를 올리고, 클라우드에서 분석하고, 명령을 내려보내는 구조다. zclaw는 반대 방향에서 접근한다. 디바이스 자체가 에이전트가 되어, 자연어를 이해하고, 도구를 조합하고, 스스로 스케줄링한다. 클라우드 LLM은 이 에이전트의 "두뇌"로 작동하지만, 의사결정과 실행의 주체는 디바이스다.

 

이런 패턴이 확산되면, 라즈베리파이나 ESP32 한 대에 개인화된 AI 에이전트를 올려 스마트홈, 농업 자동화, 소규모 산업 제어 같은 영역에서 쓸 수 있다. 월 수십 달러의 클라우드 IoT 플랫폼 구독료 대신, 5달러짜리 보드 하나와 LLM API 종량제 비용으로 동작하는 자율 시스템이 가능해진다. ESP32-C3, ESP32-S3, ESP32-C6를 테스트 완료했고, 입문용으로는 Seeed XIAO ESP32-C3(약 5달러)을 추천하고 있다.

 

MIT 라이선스로 공개되어 있어 상업적 활용에도 제약이 없다. 프로젝트 자체가 "Fun to use, fun to hack on"을 표방하는 만큼, 극단적 제약 조건 아래서 C로 임베디드 AI 에이전트를 설계하는 방법을 공부하기에도 좋은 레퍼런스다. 26KB의 앱 로직으로 이만큼을 해낸다는 사실 자체가, 소프트웨어 엔지니어링에서 제약이 창의성을 이끈다는 오래된 교훈을 다시 한번 증명한다. 

 

기사 원문 링크 

 

 

 

 

반응형

캐어랩 고객 지원

취업, 창업의 막막함, 외주 관리, 제품 부재!

당신의 고민은 무엇입니까? 현실과 동떨어진 교육, 실패만 반복하는 외주 계약, 아이디어는 있지만 구현할 기술이 없는 막막함.

우리는 알고 있습니다. 문제의 원인은 '명확한 학습, 실전 경험과 신뢰할 수 있는 기술력의 부재'에서 시작됩니다.

이제 고민을 멈추고, 캐어랩을 만나세요!

코딩(펌웨어), 전자부품과 디지털 회로설계, PCB 설계 제작, 고객(시장/수출) 발굴과 마케팅 전략으로 당신을 지원합니다.

제품 설계의 고수는 성공이 만든 게 아니라 실패가 만듭니다. 아이디어를 양산 가능한 제품으로!

귀사의 제품을 만드세요. 교육과 개발 실적으로 신뢰할 수 있는 파트너를 확보하세요.

지난 30년 여정, 캐어랩이 얻은 모든 것을 함께 나누고 싶습니다.

카카오 채널 추가하기

카톡 채팅방에서 무엇이든 물어보세요

당신의 성공을 위해 캐어랩과 함께 하세요.

캐어랩 온라인 채널 바로가기

캐어랩