n8n 컨퍼런스에서 받은 Cardputer ADV, 서랍에 넣기 전에 해볼 것들
이 글과 연결된 글 보기
드래그로 이동 · 휠/두 손가락으로 확대 · 방향키로 글 선택 · 0으로 맞춤. 실선: 본문 링크, 점선: 시리즈·주제의 대표 연결.표시된 글 8편 목록
n8n 첫 공식 컨퍼런스 In The Loop 2026(베를린, 10월 13~14일)에서 참가자들은 손바닥만 한 키보드 달린 컴퓨터를 하나씩 받았습니다. M5Stack의 Cardputer ADV입니다. 이 글은 이 기기가 무엇인지, 어떻게 켜고 쓰는지, 행사가 끝난 뒤에는 어디에 쓸 수 있는지를 직접 꽂아 보면서 정리한 기록입니다.
이 글은 이런 분께 필요합니다
- 컨퍼런스나 밋업에서 Cardputer(또는 비슷한 ESP32 기기)를 받았는데 뭘 해야 할지 모르는 분
- ESP32 보드를 처음 만져 보는데, 맥에서 연결이 제대로 됐는지부터 확인하고 싶은 분
- 행사용 굿즈로 하드웨어를 나눠줄지 고민하는 행사 기획자
준비물은 Cardputer ADV 본체, 데이터 전송이 되는 USB-C 케이블, 맥(이 글은 macOS 기준) 정도입니다. 충전 전용 케이블로는 컴퓨터가 기기를 못 알아봅니다.
Cardputer ADV는 어떤 기기인가요
Cardputer는 "카드 크기 컴퓨터(Card + Computer)"라는 뜻입니다. 중국 선전의 개발 보드 회사 M5Stack이 만든 제품이고, ADV는 2025년 하반기에 나온 개선판입니다. 안에는 와이파이와 블루투스가 되는 마이크로컨트롤러 ESP32-S3가 들어 있습니다. 스마트폰처럼 운영체제가 도는 컴퓨터가 아니라, 펌웨어 하나를 올려서 그 프로그램만 돌리는 기기라고 생각하면 됩니다.
| 항목 | 사양 |
|---|---|
| 칩 | ESP32-S3FN8 (듀얼코어 240MHz), 플래시 8MB |
| 화면 | 1.14인치 LCD, 240 x 135 |
| 입력 | 56키 키보드 (4줄 x 14키) |
| 소리 | ES8311 오디오 코덱, MEMS 마이크, 1W 스피커, 3.5mm 이어폰 단자 |
| 센서 | BMI270 6축 모션 센서, 적외선(IR) 송신기 |
| 확장 | microSD 슬롯, Grove 포트, 뒷면 2.54mm 14핀 확장 헤더 |
| 배터리 | 1500mAh 리튬이온 |
| 크기·무게 | 84 x 54 x 19.6mm, 81g |
| 가격 | 공식 스토어 약 30달러 |
사양은 M5Stack 공식 스토어 기준입니다. 이전 모델(Cardputer v1.1)과 비교하면 오디오 칩이 바뀌고, 모션 센서와 이어폰 단자, 뒷면 확장 헤더, 스트랩 구멍이 새로 생겼습니다.
Step 1. 컴퓨터에 꽂아서 정체 확인하기
USB-C 케이블로 맥에 연결하고 옆면 스위치를 켭니다. 그다음 터미널에서 USB 장치 정보를 봅니다.
ioreg -p IOUSB -l -w0 | grep -E '"(USB Product Name|USB Vendor Name|idVendor|idProduct|kUSBSerialNumberString)"'
제 기기에서는 이렇게 나왔습니다(다른 USB 장치 줄은 뺐습니다).
"idProduct" = 4097
"USB Product Name" = "USB JTAG_serial debug unit"
"kUSBSerialNumberString" = "70:AF:09:DF:3A:14"
"USB Vendor Name" = "Espressif"
"idVendor" = 12346
숫자가 십진수로 나와서 헷갈리는데, 16진수로 바꾸면 이렇습니다.
idVendor 12346=0x303A: ESP32 칩을 만든 Espressif의 USB 제조사 번호입니다. 기기 브랜드는 M5Stack이지만 USB에는 칩 제조사 이름이 뜹니다.idProduct 4097=0x1001: ESP32-S3 칩에 내장된 USB 포트(USB Serial/JTAG)가 쓰는 번호입니다. 별도 USB 변환 칩 없이 칩이 직접 USB로 말한다는 뜻입니다.- 시리얼 번호
70:AF:09:...: 이 칩의 MAC 주소입니다. 기기마다 다릅니다.
포트 이름은 이렇게 확인합니다.
ls /dev/cu.*
/dev/cu.Bluetooth-Incoming-Port
/dev/cu.debug-console
/dev/cu.usbmodem1101
cu.usbmodem으로 시작하는 것이 Cardputer입니다. 나머지 둘은 맥에 원래 있는 포트라서 나중에 펌웨어를 올릴 때 고르면 안 됩니다(무선 이어폰을 쓰고 있다면 그 이름의 포트도 하나 더 보일 수 있습니다).
Step 2. 지금 기기가 무슨 일을 하고 있는지 로그로 보기
ESP32 펌웨어는 보통 USB 시리얼로 로그를 내보냅니다. 맥에서는 cat으로 잠깐 읽어볼 수 있습니다. 6초만 읽고 멈추는 명령입니다.
cat /dev/cu.usbmodem1101 & sleep 6; kill $!
제 기기는 서울 사무실에서 이런 로그를 계속 찍고 있었습니다.
[sdk] joining 'memento.mori'
[sdk] wifi disconnected, reason 201
[sdk] wifi disconnected, reason 201
reason 201은 ESP32 와이파이 오류 코드로 "접속하려는 와이파이를 찾지 못함(NO_AP_FOUND)"이라는 뜻입니다. 행사장에서 미리 저장해 둔 와이파이에 자동으로 붙도록 만들어진 펌웨어라서, 베를린을 떠난 뒤에도 그 네트워크를 계속 찾고 있는 상태입니다. 다음 단계에서 집이나 사무실 와이파이로 바꿔 줍니다.
Step 3. 기본 조작과 와이파이 바꾸기
행사에서 받은 기기에는 n8n 앰배서더들이 만든 앱 로더(Cardputer Loader 0.5.5)가 들어 있습니다. 조작법은 Cardputer Flasher 가이드에 정리돼 있습니다. 이 사이트는 n8n이나 M5Stack의 공식 사이트가 아니라, n8n 앰배서더 Lars Emil Christensen이 행사용으로 만든 개인 도메인의 웹 설치 페이지입니다. 행사장에서 이 주소를 안내했습니다.
- 방향키(
;,./)로 메뉴를 움직이고ok로 앱을 엽니다. - 뒷면 버튼(BtnG0)을 누르면 어디서든 첫 메뉴로 돌아옵니다. 앱이 멈춰도 이 버튼은 먹힙니다. 하나만 기억한다면 이것입니다.
esc도 대부분 뒤로 가기지만, 앱 안에서는 다른 용도로 쓰일 수 있습니다.
와이파이는 이렇게 바꿉니다.
- 메뉴 맨 아래 WiFi settings를 엽니다. 6초쯤 주변 네트워크를 검색합니다.
- 방향키로 네트워크를 고르고
ok, 비밀번호를 입력하고 다시ok를 누릅니다. - 다시 검색하려면
r, 숨김 네트워크는 목록 맨 아래 Other network에서 이름부터 입력합니다. - 오른쪽 위 와이파이 아이콘이 검은색이면 연결된 것이고, 회색에 분홍 사선이면 연결이 안 된 것입니다.
Step 4. 행사용 앱 3개 써 보기
로더에는 앱이 세 개 들어 있습니다. 모두 n8n 앰배서더들이 이 행사를 위해 만든 것입니다.
Node Quest: n8n을 가르치는 RPG
Greg Evseev가 만든 작은 RPG입니다. 마을을 돌아다니며 사람들에게 말을 걸면 n8n 관련 퀴즈 3문제를 내고, 다 맞히면 경험치를 줍니다. 튜토리얼 1개와 본편 10개, 합쳐서 11개 레벨에 일거리 50개, 문제 190개가 들어 있습니다. 오프라인으로 끝까지 할 수 있고, 와이파이는 리더보드에 점수를 올릴 때만 씁니다.
;,./: 위, 왼쪽, 아래, 오른쪽 이동ok: 옆 사람과 대화, 마지막 페이지에서 퀴즈 시작1~4: 답 고르기esc: 월드맵
n8n 강의에서 "트리거가 뭐예요?" 같은 기초 개념을 복습시키는 용도로도 충분히 쓸 만합니다.
Icebreaker: 사람을 만나면 펭귄이 자라는 게임
Fahmi Fahreza와 Dominik Vogt가 만든 네트워킹 게임입니다. 한 사람이 C를 눌러 4글자 코드를 띄우고, 다른 사람이 E를 눌러 그 코드를 입력하면 둘 다 MATCHED! 화면이 뜨고 펭귄이 한 단계 자랍니다. 그다음 두 기기에 같은 아이스브레이킹 질문이 나옵니다. 코드는 60초 동안 한 번만 쓸 수 있어서 실제로 마주 보고 있어야 합니다.
이 앱은 와이파이로 행사 서버와 동기화합니다. 행사가 끝난 지금도 서버가 살아 있는지는 확인하지 못했습니다.
BT mouse, keyboard and clicker: 행사 뒤에 제일 쓸모 있는 앱
Lars Emil Christensen이 만든 앱으로, Cardputer를 블루투스 마우스, 키보드, 발표용 클리커로 바꿔 줍니다. 상대 컴퓨터에는 아무것도 설치하지 않아도 됩니다.
- 앱을 열고 컴퓨터의 블루투스 설정에서 화면에 뜬 이름(
Cardputer+ 4글자)을 고릅니다. esc를 누를 때마다 마우스, 키보드, 클리커 모드가 돌아갑니다.- 클리커 모드에서는 키보드 왼쪽 절반 아무 키나 누르면 이전 슬라이드, 오른쪽 절반은 다음 슬라이드입니다. PowerPoint, Keynote, Google Slides, PDF 뷰어에서 동작합니다.
- 마우스 모드는 기기를 기울여서 포인터를 움직입니다. 쓰기 전에 잡는 자세 그대로 두고 아무 키나 눌러 보정하고, 포인터가 혼자 흘러가면
c로 다시 보정합니다.
블루투스와 와이파이가 무선 칩 하나를 같이 쓰기 때문에, 이 앱을 켜 두는 동안에는 와이파이가 꺼집니다.
Step 5. 펌웨어를 바꾸거나 행사 버전으로 되돌리기
Cardputer는 펌웨어를 통째로 바꿔 끼우는 방식이라, 다른 프로그램을 올리면 행사용 로더는 지워집니다. 대신 행사 로더는 웹에서 언제든 다시 설치할 수 있으니 부담 없이 실험해도 됩니다.

행사 로더 다시 설치하기:
- Chrome이나 Edge로 cardputer.larsemil.ai에 들어갑니다. 브라우저에서 USB 시리얼을 쓰는 Web Serial 기능이 필요해서 Safari는 안 됩니다.
- 옆면 스위치를 끈 상태로 USB-C 케이블을 꽂습니다. 펌웨어는 USB 전원으로 씁니다.
- Install을 누르고, 포트 선택 창에서
USB JTAG/serial debug unit (cu.usbmodem...)을 고릅니다. Step 1에서 본cu.Bluetooth-Incoming-Port,cu.debug-console은 고르면 안 됩니다. - 1분쯤 기다렸다가 스위치를 다시 켭니다. 쓰는 중에는 케이블을 뽑지 않습니다.
페이지 코드를 열어 보면 동작 방식이 단순합니다. 포트 선택 창에는 Espressif 제조사 번호(0x303A)를 가진 장치만 보이게 걸러 두고, 펌웨어 파일은 제작자의 GitHub 저장소에서 받아 0번 주소부터 통째로 덮어씁니다. 저장소에는 완성된 펌웨어 파일만 있고 소스 코드와 라이선스는 공개돼 있지 않아서, 로더를 고쳐 쓰기보다는 원래 상태로 되돌리는 용도로 생각하는 편이 맞습니다.
다른 펌웨어를 올리는 길은 M5Stack 공식 문서 기준으로 네 가지입니다(Cardputer-Adv 문서).
| 방법 | 이런 분께 | 비고 |
|---|---|---|
| UiFlow2 | 코딩이 처음인 분 | 블록 코딩과 MicroPython, 웹 브라우저에서 작성 |
| Arduino IDE | 아두이노를 써 본 분 | M5Cardputer 라이브러리 사용 |
| PlatformIO | VS Code로 개발하는 분 | 공식 문서에 설정 예시 있음 |
| ESP-IDF | 칩 기능을 깊게 쓰고 싶은 분 | 공장 출하 펌웨어 소스가 공개돼 있음 |
여러 펌웨어를 번갈아 쓰고 싶다면 SD 카드에서 펌웨어를 골라 실행하는 M5 Launcher를 먼저 올리는 방법도 있습니다. Flasher 페이지에서 행사 로더를 .bin 파일로도 받을 수 있어서, Launcher의 메뉴 중 하나로 넣어둘 수 있습니다.
Step 6. 행사가 끝난 뒤 쓸 곳 정하기
결국 이런 기기는 "어디에 쓸지"가 정해져야 서랍에서 나옵니다. 제가 바로 쓸 수 있다고 본 곳은 이렇습니다.
- 강의용 클리커: Step 4의 클리커 모드 그대로입니다. 키보드 반쪽 어디를 눌러도 되니 화면을 안 보고 넘기기 편합니다.
- n8n 웹훅 버튼: 와이파이에 붙은 ESP32는 HTTP 요청을 보낼 수 있으니, 키 하나를 누르면 n8n 웹훅을 부르는 펌웨어를 만들 수 있습니다. "출근 기록", "회의 시작 알림"처럼 버튼 하나로 끝나는 워크플로에 잘 맞습니다. 만드는 법은 따로 검증해서 정리하겠습니다.
- 센서 허브: Grove 포트에 온습도, 미세먼지 센서를 꽂고 n8n으로 값을 보내면 작은 IoT 프로젝트가 됩니다. ESP32와 n8n을 엮는 구조는 ESP32와 n8n으로 만드는 IoT 자동화 포트폴리오에 정리해 두었습니다.
짧은 소감: 왜 해외 컨퍼런스는 하드웨어를 나눠줄까
해외 개발자 컨퍼런스에서는 이런 기기를 꽤 자주 받습니다. 제가 기억하는 건 GitHub Universe의 명찰입니다. 2023년에는 Pimoroni와 만든 RP2040 기반 전자잉크 명찰을 줬고, 2024년에는 칩을 RP2350으로 바꾼 버전을 줬습니다. 둘 다 이름표이면서 MicroPython으로 프로그램을 짤 수 있는 보드였습니다. 그런데 국내 컨퍼런스에서는 이런 걸 받아 본 기억이 거의 없습니다.
이유를 생각해 보면 두 가지가 겹쳐 보입니다.
- 비용: Cardputer ADV는 소매가로 30달러 안팎이고, In The Loop는 최대 1,200명 규모였습니다. 단순 계산으로 수천만 원대입니다. 여기에 와이파이와 블루투스가 들어간 기기를 수백 대 들여와 나눠주려면 국내 전파 인증(KC 적합성평가)이나 면제 절차도 따져야 합니다.
- 쓸모: 더 큰 이유는 이쪽이라고 봅니다. 기기만 나눠주면 대부분은 집에 가서 서랍에 들어갑니다.
이번 n8n 행사가 달랐던 점은 기기보다 소프트웨어였습니다. 앰배서더 네 명이 행사용 로더와 앱 세 개를 만들어서, 행사장에서는 Node Quest로 제품을 배우고 Icebreaker로 사람을 만나고, 끝나고 나서는 발표 클리커로 쓸 수 있게 했습니다. 하드웨어 굿즈의 핵심은 기기 값보다 "행사 안에서 이걸 꺼내 쓸 이유"를 같이 설계해 주는 데 있다고 생각합니다. 국내 행사도 비싼 기기 대신 이미 가진 폰이나 명찰에 그런 이유 하나를 붙이는 것부터 시작해 볼 수 있지 않을까 싶습니다.
문제 해결
| 증상 | 원인과 해결 |
|---|---|
ls /dev/cu.*에 usbmodem이 안 보임 | 충전 전용 케이블일 가능성이 큽니다. 데이터 케이블로 바꾸고 허브 없이 맥에 직접 꽂습니다. |
로그에 reason 201이 반복됨 | 저장된 와이파이를 못 찾는 상태입니다. Step 3대로 WiFi settings에서 지금 있는 곳의 와이파이를 고릅니다. |
| Flasher에서 기기를 못 찾거나 중간에 멈춤 | 옆면 스위치를 끈 상태에서 다시 시도합니다. 그래도 안 보이면 Install 아래 "Show all ports"를 누릅니다. |
| 펌웨어를 올렸는데 화면이 꺼져 있음 | 옆면 스위치를 켰는지, 케이블이 데이터 케이블인지 확인합니다. |
| 앱이 멈춤 | 뒷면 버튼(BtnG0)을 누르면 메뉴로 돌아옵니다. |
| 블루투스 재연결이 안 됨 | 펌웨어를 다시 올린 뒤에는 컴퓨터 블루투스 목록에서 Cardputer를 지우고 다시 페어링합니다. |
| 마우스 포인터가 혼자 움직임 | 기기를 가만히 든 채 c를 눌러 다시 보정합니다. |
