ibouPCB 에 필요한 입력은 이미 가지고 계신 것뿐입니다. 아두이노 스케치(.ino), 또는 예제 하나. 회로도를 그리거나 부품을 검색해서 배치하는 단계는 없습니다. 이 가이드는 가입 후 첫 검증 리포트를 받기까지의 네 단계를 따라갑니다.
1. 스케치 올리기
새 프로젝트를 만들고 .ino / .cpp / platformio.ini 를 올립니다. 파서가 코드에서 다음을 읽어냅니다.
| 코드에서 읽는 것 | 추론하는 것 |
|---|---|
| #define TRIG_PIN 9, const int LED = 13 | 핀 할당 (논리 이름 → 물리 핀) |
| pinMode / digitalWrite / analogRead | 핀 방향 · 신호 종류 (digital / analog / PWM) |
| Wire.beginTransmission(0x27) | I²C 사용 + 슬레이브 주소 |
| SPI.begin(), SS 핀 사용 | SPI 사용 + CS 핀 |
| analogWrite(5, x), attachInterrupt(...) | PWM · 외부 인터럽트 핀 요구 |
| #include <DallasTemperature.h> | 부품 추론 — DS18B20 온도 센서 |
| #include <Adafruit_SSD1306.h> | SSD1306 OLED (I²C 또는 SPI) |
| board = uno (platformio.ini) | 타겟 보드 |
코드로는 잡히지 않는 모듈이 있습니다. PIR 센서, LDR, 단순 스위치, 모터처럼 라이브러리 없이 digitalRead / analogRead 만 쓰는 부품입니다. 이런 것은 모듈 체크리스트에서 카탈로그를 골라 추가합니다. 개발보드 1개 + 모듈 N개가 프로젝트의 설계 의도(Design Intent)가 됩니다.
2. 추론 결과 확인
업로드 직후 화면에 핀 목록(논리 이름, 물리 핀, 방향, 근거가 된 코드 줄), 감지된 버스(I²C 주소 포함), 부품 후보(카탈로그 ID, 신뢰도)가 나옵니다. 신뢰도가 낮은 항목은 노란색으로 표시되니 그 부분만 확인해 주세요. 여기서 확정된 핀 목록이 프로젝트의 핀맵 계약(Pin Contract)이 됩니다 — 레벨이 바뀌어도 유지되는 약속입니다.
3. L0 시뮬레이터 실행
▶ 실행을 누르면 서버가 arduino-cli 로 컴파일하고, 결과 바이너리를 브라우저가 실행합니다. Arduino Uno 는 avr8js, Raspberry Pi Pico 는 rp2040js 가 브라우저 안에서 돌고, ESP32 는 서버의 Espressif QEMU 가 돌립니다. 핀 상태, 시리얼 모니터, 실시간 페이싱이 화면에 보입니다.
- 코드에서 찾은 센서는 가상 장치로 자동 부착됩니다 — DS18B20(1-Wire), DHT22, HC-SR04, BME280 / BMP280 / MPU6050 / DS3231(I²C 레지스터 응답).
- 시뮬레이션 통과가 로직 게이트를 여는 조건이지만, 브라우저가 게이트를 직접 세팅하지는 않습니다. 서버가 스케치에서 기대 핀 방향을 다시 도출해 브라우저의 증거와 대조한 뒤에만 통과로 기록합니다.
- 시뮬레이터가 못 잡는 것이 있습니다 — 전원 노이즈, 접지 바운스, EMI, 센서 타이밍 편차, 부품 공차. 그래서 로직 게이트는 세 게이트 중 하나일 뿐입니다.
4. 첫 기판으로
"기판 만들기" 를 누르고 타겟을 고릅니다. 개발보드를 그대로 얹는 L2 Shield / HAT, 또는 ESP32-WROOM · Pico 같은 모듈을 직접 실장하는 L3 입니다. 그다음 8단계 검증(P1 스키마 → P2 카탈로그 접지 → P3 골든 패턴 → P4 ERC → P5 핀 계약 → P6 합의 → P7 KiCad DRC → P8 시뮬 회귀)이 돌고, 결과 화면에 세 게이트가 따로 표시됩니다.
✅ 로직 검증 통과 시뮬레이션에서 의도대로 동작
✅ 전기 검증 통과 ERC 0건 / DRC 0건
⚠️ 실물 검증 미완료 실제 보드에서의 확인이 여전히 필요합니다로직과 전기가 모두 초록이면 Gerber · BOM 다운로드가 열립니다. 실물 검증은 절대 자동으로 초록이 되지 않습니다. 보드가 도착해서 직접 확인한 뒤 사용자가 체크합니다.
다음 읽을 것
- 4레벨 연속체 — 왜 프로젝트를 옮기지 않는가
- 8단계 검증 — 각 단계가 무엇을 막는가
- 자동 삽입 회로 — 내 코드에 없던 부품이 왜 생겼나