TECH 으로 돌아가기
TECH HACKER NEWS 오늘 6분 읽기 39 READS

ESP32에서 Rust로 임베디드 입문하기 — 제조사가 직접 쓴 'The Rust on ESP Book'

칩 제조사가 직접 쓴 Rust 교과서

Rust로 임베디드 개발을 해보고 싶은데 어디서 시작할지 막막했던 분들에게 좋은 소식이에요. ESP32로 유명한 칩 제조사 Espressif가 직접 만드는 공식 가이드 'The Rust on ESP Book'이 있거든요. 칩 제조사가 아예 사내에 Rust 팀을 두고 공식 문서까지 관리하는 경우는 임베디드 업계에서 상당히 드문 일이라, 이 책의 존재 자체가 의미가 있어요. 게다가 책도 GitHub에 오픈소스로 공개돼 있고요.

ESP32가 뭐냐면, 와이파이와 블루투스가 기본으로 내장된 저가 마이크로컨트롤러 칩이에요. 개발 보드 하나에 몇천 원 수준이라 IoT 취미 프로젝트의 국민 칩이 됐고, 상용 제품에도 엄청나게 들어가요. 원래는 C 기반의 ESP-IDF라는 프레임워크로 개발하는 게 정석이었는데, 여기에 Rust라는 선택지가 공식적으로 추가된 거죠.

두 가지 길: std냐 no_std냐

책에서 제일 중요한 갈림길이 이건데요, ESP에서 Rust를 쓰는 방법이 두 가지예요.

첫 번째는 std 접근이에요. 밑에서 C 기반 ESP-IDF가 돌고, 그 위를 esp-idf-hal, esp-idf-svc 같은 크레이트로 감싸서 Rust 표준 라이브러리를 쓸 수 있게 해주는 방식이거든요. 이게 뭐가 좋냐면, 마이크로컨트롤러에서 Vec, String, 스레드, TCP 소켓 같은 걸 데스크톱에서 하듯 그대로 쓸 수 있어요. 와이파이나 블루투스 같은 복잡한 기능도 성숙한 ESP-IDF 구현을 빌려 쓰니 빨리 굴러가고요.

두 번째는 no_std 접근, 순수 Rust 베어메탈이에요. esp-hal이라는 순수 Rust로 짠 하드웨어 추상화 계층을 쓰는데, C 의존성이 없고 바이너리가 작아요. 베어메탈이 뭐냐면, 운영체제나 프레임워크 없이 칩 위에서 맨몸으로 도는 코드를 짜는 건데요. embedded-hal 표준 트레이트나 Embassy라는 비동기 프레임워크 같은 순수 Rust 임베디드 생태계와 그대로 연결돼요. 특히 Embassy가 물건인데, 예전에는 인터럽트를 기다리며 상태 머신을 손으로 짜야 했던 일을 async/await 문법으로 자연스럽게 표현할 수 있게 해주거든요. 책은 두 접근 모두에 대해 프로젝트 생성부터 빌드, 플래싱, 모니터링까지 따라 하기 실습을 제공해요.

Xtensa와 RISC-V, 칩마다 사정이 달라요

한 가지 알아둘 배경이 있는데요. 구형 칩(ESP32, S2, S3)은 Xtensa라는 독자 CPU 아키텍처를 써요. 이 아키텍처가 Rust 컴파일러의 백엔드인 LLVM 본가에 아직 안 들어가 있어서, espup이라는 도구로 포크된 Rust 툴체인을 따로 설치해야 하거든요. 반면 신형 칩(C3, C6, H2, P4)은 표준 RISC-V 아키텍처라 순정 Rust가 그대로 돌아가요. 입문이라면 몇천 원짜리 C3 보드로 시작하는 게 마찰이 제일 적은 이유죠. Xtensa 지원을 LLVM 본가에 올리는 작업도 진행 중이라고 하니, 이 불편함도 언젠가는 사라질 거예요.

툴링도 잘 갖춰져 있어요. cargo와 통합된 플래싱 도구 espflash, 프로젝트 템플릿 생성기 esp-generate, probe-rs와 JTAG를 통한 디버깅, 임베디드 특화 로깅인 defmt까지요. 특히 Wokwi 같은 브라우저 시뮬레이터를 지원해서, 보드를 사기 전에 하드웨어 없이 코드를 돌려볼 수도 있어요. 퇴근길에 브라우저만으로 임베디드 Rust 맛보기가 가능한 거죠.

배워둘 가치가 있냐면

임베디드는 메모리 버그가 곧 현장에서의 미스터리 오동작이 되는 동네라, Rust가 컴파일 타임에 잡아주는 안전성의 이득이 서버 개발보다 오히려 크거든요. STM32나 RP2040 쪽도 커뮤니티 기반 Rust 지원이 활발하지만, 제조사가 공식으로 밀어주면서 문서·툴링·HAL까지 한 줄로 정리된 곳은 ESP 생태계가 거의 유일해요. Rust는 아는데 임베디드가 처음인 분에게도, 임베디드는 아는데 Rust가 처음인 분에게도 이 책이 좋은 다리가 돼줄 거예요.

한 줄 정리: 몇천 원짜리 보드와 공식 가이드북만으로 시작할 수 있는, 지금 가장 마찰 적은 임베디드 Rust 입문 경로예요. 여러분은 어떻게 보세요? 임베디드에서 Rust로 갈아탈 때가 왔을까요, 아니면 아직은 C의 시대일까요?


🔗 출처: Hacker News

SOURCE · HACKER NEWS
원문 전체 보기 → https://docs.espressif.com/projects/rust/book/
SHARE
처리 중...