- 2025년에 괜찮은 스마트워치를 만들려면 먼저 목표 경험을 정하고, 이를 MCU·디스플레이·배터리·소프트웨어 제약 안에서 맞춰야 함
- 칩 선택은 단순 성능 비교가 아니라 소프트웨어 호환성, 전력 소비, 부품 단가가 동시에 걸린 제품 설계 결정임
- Core 2 Duo는 익숙한 Nordic nRF52840으로 빠른 PebbleOS 포팅을 노렸지만, Core Time 2는 더 큰 컬러 디스플레이 때문에 더 많은 RAM과 처리 성능이 필요했음
- SiFli SF32LB52x 계열은 512KB 이상 SRAM, 16MB PSRAM, MIP 디스플레이 주변장치, 약 50µA BLE 연결 전력, 2달러 미만 가격, 오픈소스 SDK를 제공함
- Core Time 2에는 SF32LB527의 1.8V 변형인 SF32LB52J가 쓰일 예정이며, 오픈소스 PebbleOS를 유지하면서 전력·비용·디스플레이 요구를 맞추는 선택임
스마트워치 설계는 제약을 맞추는 일
- 스마트워치는 크게 세 부분으로 나뉨
- 실제 시계인 워치 하드웨어
- 펌웨어 또는 운영체제로 불리는 워치 소프트웨어
- 알림 전송, 워치페이스 다운로드 등을 맡는 iOS·Android 모바일 동반 앱
- 스마트워치는 하나의 형태가 모두에게 맞는 기기가 아니며, PebbleOS의 오픈소스화가 각자 필요에 맞는 스마트워치 제작으로 이어지기를 기대함
- 소비자 전자제품 설계는 목표 경험을 정한 뒤, 이를 구현 가능한 사양과 부품으로 분해하는 과정임
- 예: “항상 켜져 있고 햇빛 아래서 읽히며 30일 지속되는 스마트워치”
- 사양 예: e-paper 디스플레이, Bluetooth LE, 방수, 150달러 소매가
- 부품 예: Sharp Memory LCD, 150mAh 리튬폴리머 배터리, FreeRTOS
워치 하드웨어를 이루는 다섯 시스템
- 워치 하드웨어는 다섯 가지 핵심 시스템으로 나뉨
- Bluetooth 라디오를 보통 포함하는 마이크로컨트롤러 칩
- 디스플레이
- 택트 스위치, 터치, 마이크, 가속도계, 스피커 같은 센서와 출력 장치
- 칩, 수동소자, PCB, 배터리 같은 기타 전자부품
- 케이스, 유리, 버튼, 스트랩, 충전 케이블 같은 기구 구조
- 센서, 배터리, 스트랩, 케이스, 마이크 등 뒤의 세 시스템은 요즘 다양한 가격대의 좋은 선택지가 많아 비교적 고르기 쉬움
- 스마트워치 설계에서 가장 까다로운 부품 결정은 MCU/Bluetooth 라디오와 디스플레이 선택임
Pebble 시절 MCU와 Bluetooth 제약
- 첫 Pebble 시절에는 STM32F2 MCU를 사용함
- Pebble 이전 제품인 inPulse는 8KB RAM의 LPC2103을 썼음
- 과거 Pebble MCU 사양은 64~144MHz, 128~256KB RAM 수준이었음
- 당시 MCU에는 Bluetooth 라디오가 통합되지 않아 TI CC2564 같은 별도 칩을 함께 붙여야 했음
- MCU는 CPU, RAM, 보통의 플래시 저장소, 입출력 주변장치, 때로는 라디오까지 하나의 작은 집적회로에 담은 스마트워치의 핵심 칩임
MCU 선택이 제품 전체를 흔드는 이유
- MCU는 스마트워치의 가장 빡빡한 조건인 소프트웨어 호환성, 전력 소비, 비용의 중심에 있음
- 임베디드 소프트웨어는 컴퓨터 운영체제보다 더 파편화되어 있고, 하드웨어 요구사항에 강하게 묶임
- Linux는 하드디스크 공간 제약이 작아 17,000개가 넘는 디바이스 드라이버를 포함할 수 있음
- PebbleOS는 사실상 STM 계열 MCU만 지원하도록 하드코딩되어 있었음
- 다른 브랜드 MCU로 바꾸려면 I2C, SPI, DMA 같은 주변장치 드라이버를 새로 쓰고, 다른 SDK를 채택하며, 경우에 따라 빌드 시스템도 바꿔야 함
- 이런 변경은 위험한 작업은 아니지만 구현과 테스트 시간이 필요함
- 일부 MCU는 FreeRTOS를 쉽게 지원하지 않음
- 수십만~수백만 대 규모로 생산하지 않으면 소프트웨어 엔지니어링 비용을 대량 판매로 분산하기 어렵고, 시계 한 대당 총비용에 큰 영향을 줌
- 스마트워치는 24시간 내내 Bluetooth로 휴대폰에 연결되어야 하므로, 연결 상태의 평균 전력 소비가 디스플레이와 함께 가장 큰 전력 소모 요인이 됨
Core 2 Duo와 Core Time 2의 칩 후보
- Core 2 Duo에는 Nordic nRF52840을 쓰기로 결정함
- 오래된 칩이지만 이미 익숙했고 PebbleOS를 비교적 빠르게 올릴 수 있다고 판단함
- 처음에는 Nordic SoftDevice BLE 스택을 쓸 계획이었지만, 이후 오픈소스 BLE 스택인 nimBLE로 전환함
- Core Time 2에는 nRF52840보다 더 많은 RAM과 처리 성능이 필요했음
- 더 큰 컬러 디스플레이가 더 많은 RAM을 요구함
- 새 기능을 위한 여유도 원했음
- Nordic을 계속 쓰고 싶었지만 BLE MCU 로드맵이 요구에 잘 맞지 않았음
- nRF54L15는 RAM이 256KB뿐이고 최근에야 양산에 들어가 사용 후기가 많지 않았음
- 1MB RAM의 54H 시리즈는 가격이 4~5달러 이상으로 두 배 수준이며, 512KB RAM 선택지가 없었음
- Core Time 2의 64색 MIP 디스플레이에는 특수 인터페이스가 필요했고, 2015년식 Pebble은 이를 위해 별도 FPGA를 사용했음
SiFli SF32LB52J를 고른 이유
- Apollo, BES, Dialog 등 여러 후보를 살펴봤지만 요구에 정확히 맞는 칩을 찾기 어려웠음
- 큰 걸림돌 중 하나는 오픈소스 SDK 부재였음
- BES의 한 칩은 좋아 보였지만 SDK와 예제 코드가 공개되어 있지 않았고, 모든 것이 NDA 뒤에 있었음
- PebbleOS가 오픈소스여야 하므로 이 방식은 맞지 않았음
- SiFli는 스마트워치의 주 칩으로 쓰이도록 만든 Bluetooth 칩을 제공함
- Redmi, Oppo, Noise 등 여러 브랜드의 수천만 대 스마트워치에 이미 사용되고 있음
- 가장 작은 칩인 SF32LB52x도 512KB 이상 SRAM과 16MB PSRAM을 제공함
- 전용 MIP 주변장치가 있어 별도 FPGA나 Epson 같은 비싼 전용 디스플레이 인터페이스 칩이 필요 없음
- BLE 연결 상태 전력 소비는 약 50µA이며 가격은 2달러 미만임
- 필요하면 1~2MB SRAM 옵션의 다른 SiFli 칩으로 전환할 수도 있음
- SiFli SDK는 GitHub의 OpenSiFli에 오픈소스로 공개되어 있으며, SiFli는 PebbleOS 포팅 지원도 제안함
- Core Time 2에는 SF32LB527의 1.8V 변형인 SF32LB52J가 사용될 예정임
관련 SiFli 링크
- SF32LB52x reference guide: SF32LB52x 참조 가이드
- OpenSiFli: SiFli 오픈소스 SDK GitHub
- Buy Devkit on Taobao: Taobao 개발 키트 구매 링크, Aliexpress는 추후 제공 예정