Android PCBA는 Android 기반 제품 내부에서 메인 컴퓨터 역할을 하는 조립 보드다. 보드에는 일반적으로 ARM SoC, DDR 메모리, eMMC 저장 장치, PMIC, 네트워크 회로와 디스플레이 인터페이스가 실장된다. 적합한 Android 이미지를 기록하면 산업용 HMI, 출입 통제 단말기, 키오스크, 스마트 가전 또는 의료용 디스플레이의 제어 플랫폼으로 사용할 수 있다.
여기까지만 보면 일반 PCBA와 큰 차이가 없어 보인다. 실제 개발에서는 차이가 분명하다. Android PCBA는 납땜이 끝났다고 완성되는 보드가 아니다. 부트로더가 DDR을 초기화하고, Linux 커널이 주변 장치를 인식하고, Android가 올바른 HAL과 드라이버를 불러와야 비로소 제품에서 사용할 수 있다.

조립 상태와 동작 상태 사이에는 생각보다 많은 작업이 남아 있다.
PCBA는 부품 실장과 납땜이 끝난 인쇄회로기판을 뜻한다. 이 용어만으로는 펌웨어 기록, 기능 시험 또는 소프트웨어 수정이 포함됐는지 알 수 없다.
Android PCBA도 마찬가지다. 어떤 공급업체는 Android를 실행할 수 있도록 설계된 조립 보드만 제공한다. eMMC는 비어 있고 고객이 직접 이미지를 기록해야 할 수 있다. 다른 공급업체는 BSP 수정, 디스플레이 드라이버, Android 시스템 이미지와 양산 시험까지 제공한다.
두 업체의 견적에는 큰 차이가 생길 수밖에 없다. 그러나 문서에 모두 “Android PCBA”라고 적혀 있으면 구매자는 그 차이를 놓치기 쉽다.
따라서 견적을 받을 때는 제품 이름보다 납품 상태를 먼저 정의해야 한다. 조립만 완료된 보드인지, 프로그램이 기록된 보드인지, 실제 LCD와 주변 장치를 연결해 시험한 보드인지 명확히 적는 편이 좋다.
새로운 보드 프로젝트에서는 SoC 모델부터 고르는 경우가 많다. CPU 코어 수와 최대 클럭은 비교하기 쉽기 때문이다. 하지만 Android 제품의 일정에 더 큰 영향을 주는 것은 디스플레이, 하우징, 소프트웨어 지원과 인터페이스 구성일 때가 많다.
예를 들어 “10.1인치, 1280×800 LCD”라는 정보만으로는 회로 설계를 시작하기 어렵다. 실제 패널이 LVDS, MIPI DSI 또는 eDP 중 어느 인터페이스를 사용하는지 알아야 한다. 전원 순서, 커넥터 핀 배치, 백라이트 전류와 터치 컨트롤러도 확인해야 한다.
하우징도 보드에 직접 영향을 준다. 평가 보드에서 편리한 USB Type-A 커넥터가 얇은 케이스 안에는 들어가지 않을 수 있다. Ethernet 커넥터가 장착 기둥과 부딪히거나 케이블을 꽂을 공간이 부족할 수도 있다.
제품 요구 사항이 먼저 정리되어야 SoC, 메모리와 인터페이스를 현실적으로 선택할 수 있다.
| 구성 요소 | 역할 | 설계 단계에서 확인할 내용 |
|---|---|---|
| Application SoC | Android, 그래픽과 고객 애플리케이션 실행 | BSP, Android 버전, 성능과 장기 공급 |
| DDR | 운영체제와 애플리케이션의 실행 메모리 | 종류, 용량, 배선 조건과 검증된 부품 |
| eMMC | 부트로더, Android, 앱과 데이터를 저장 | 용량, 내구성, 파티션과 기록 방법 |
| PMIC | SoC와 메모리에 필요한 전원 생성 | 전원 순서, 피크 전류, 절전과 발열 |
| 디스플레이 회로 | LCD 또는 외부 모니터 출력 | 인터페이스, 해상도, 타이밍과 드라이버 |
| 터치 인터페이스 | 사용자 입력 처리 | 컨트롤러, I²C 또는 USB, 좌표와 인터럽트 |
| 네트워크 | Ethernet, Wi-Fi와 Bluetooth 연결 | PHY, 안테나, 인증과 드라이버 |
| 외부 I/O | UART, GPIO, SPI, I²C, CAN 또는 RS-485 | 전압 레벨, 트랜시버, 절연과 보호 |
이 표의 항목은 서로 독립적이지 않다. 디스플레이 해상도가 높아지면 메모리 사용량과 GPU 부하가 증가한다. A/B 업데이트를 사용하면 더 큰 eMMC가 필요하다. 하우징이 작아지면 커넥터와 안테나 위치뿐 아니라 방열 방식도 바뀐다.
Android 프로젝트에서 빠른 SoC가 항상 좋은 선택은 아니다. 목표 Android 버전에 맞는 BSP가 없거나 GPU와 영상 드라이버가 불완전하면 하드웨어 성능을 제대로 사용할 수 없다.
BSP에는 보통 부트로더, Linux 커널, 장치 트리, HAL, 공급업체 라이브러리와 Android 시스템 이미지가 포함된다. 평가 보드용 이미지가 존재한다는 사실만으로 맞춤형 보드 지원이 보장되는 것은 아니다.
맞춤형 Android PCBA는 평가 보드와 다른 DDR, eMMC, PMIC, Wi-Fi 모듈 또는 LCD를 사용할 수 있다. 이 차이는 부트로더 설정, 장치 트리와 커널 드라이버에 반영되어야 한다.
SoC를 확정하기 전에 공급업체가 제공하는 소프트웨어를 실제로 빌드해 보는 편이 좋다. 화면 출력, Ethernet, Wi-Fi, USB와 절전 기능도 평가 보드에서 미리 확인할 수 있다.
데이터시트의 “Android 지원”이라는 한 줄보다 실제 소스 코드와 동작하는 드라이버가 더 중요하다.
Android는 운영체제만 실행해도 상당한 메모리를 사용한다. 여기에 고객 앱, 그래픽 버퍼, 카메라, 데이터베이스와 네트워크 서비스가 추가된다. 개발 초기의 간단한 앱이 잘 실행된다고 해서 양산 버전에도 같은 DDR 용량이 충분한 것은 아니다.
DDR는 PCB 레이아웃에도 민감하다. SoC 가까이에 배치하고 제조사가 제시한 임피던스, 토폴로지와 길이 매칭 조건을 따라야 한다. 배선 여유가 부족하면 상온에서는 부팅하지만 고온이나 저온에서 불안정한 보드가 나올 수 있다.
eMMC 용량은 현재 Android 이미지 크기만 보고 정하면 안 된다. 로그, 캐시, 고객 데이터, 복구 이미지와 OTA 패키지가 추가 공간을 사용한다.
A/B 업데이트는 설치 중 전원이 끊겨도 이전 시스템으로 돌아갈 수 있다는 장점이 있다. 대신 두 개의 시스템 영역이 필요하므로 저장 용량이 증가한다. eMMC에 어느 정도 여유 공간을 남기는 것은 쓰기 성능과 수명에도 도움이 된다.
디스플레이 bring-up은 Android PCBA 개발에서 일정이 자주 지연되는 부분이다. 같은 크기와 해상도의 LCD도 타이밍, 전원 순서와 터치 컨트롤러가 다를 수 있다.
첫 화면이 표시되면 기본 인터페이스와 드라이버가 동작한다는 사실은 알 수 있다. 하지만 밝기 조절, 화면 회전, 색상 순서, 터치 좌표와 절전 복귀는 별도로 시험해야 한다.
전원을 켰을 때는 정상인데 Android가 절전 상태에서 깨어난 후 화면이 검게 남는 경우도 있다. 백라이트만 켜지고 영상 데이터가 나오지 않거나, 화면은 복귀했지만 터치가 동작하지 않을 수도 있다.
따라서 “LCD 지원”이라는 항목에는 실제 패널의 부품 번호가 필요하다. 공급업체가 비슷한 평가용 패널로만 시험했다면 양산 LCD에서 추가 수정이 발생할 가능성이 있다.
Android SoC의 전류는 CPU와 GPU 부하에 따라 빠르게 변한다. 평균 소비전력만 기준으로 전원 회로를 선택하면 부팅 순간이나 높은 부하에서 코어 전압이 떨어질 수 있다.
PMIC는 여러 전압 레일을 정해진 순서로 올려야 한다. 디커플링 커패시터의 값뿐 아니라 SoC 전원 핀까지의 거리와 전류 경로도 중요하다.
발열은 개방된 평가 보드보다 최종 제품에서 더 심하다. 밝은 LCD, Wi-Fi 송신, eMMC 쓰기와 CPU 부하가 한꺼번에 발생할 수 있기 때문이다.
특히 밀폐된 플라스틱 하우징에서는 열이 빠져나가기 어렵다. 프로세서가 온도 제한에 도달하면 클럭을 낮추거나 시스템이 재부팅될 수 있다. 겉으로는 앱 문제처럼 보이지만 실제 원인은 열 설계일 수 있다.
시험은 실제 앱, 화면 밝기, 네트워크 부하와 예상 주변 온도를 반영해야 한다.
Android PCBA는 솔더 페이스트 인쇄, 부품 실장, 리플로우와 검사를 거쳐 생산된다. 큰 커넥터나 삽입 부품은 별도 공정에서 납땜할 수 있다.
AOI는 누락되거나 방향이 틀린 부품, 눈에 보이는 납땜 문제를 찾는다. 그러나 SoC, DDR와 eMMC는 BGA 또는 바닥면 단자 패키지를 사용하는 경우가 많다. 이 부품의 납땜 상태는 위에서 보이지 않으므로 X-ray가 필요하다.
AOI와 X-ray를 모두 통과해도 Android 부팅은 실패할 수 있다. 잘못된 저항 값, 손상된 IC, 불안정한 DDR 또는 잘못 기록된 펌웨어는 기능 시험에서 발견된다.
실제 양산 시험에서는 Android를 부팅하고 제품에서 사용하는 기능을 확인해야 한다. HMI라면 LCD, 터치, Ethernet, Wi-Fi, 오디오와 필요한 USB 포트를 시험한다. 산업용 제어 보드라면 UART, RS-485, CAN 또는 GPIO도 확인해야 한다.
전류와 부팅 시간을 기록하면 불량을 더 빨리 찾을 수 있다. 정상 범위를 벗어난 전류는 단락, 손상된 부품 또는 조립 오류의 신호일 수 있다.
Android 이미지 제공이라는 표현은 범위가 넓다. 단순히 평가 보드용 기본 이미지를 전달하는 것인지, 고객 보드에 맞게 수정하고 시험하는 것인지 확인해야 한다.
제품에 따라 부팅 로고, 화면 방향, 키오스크 모드, 앱 자동 실행과 시스템 버튼 제한이 필요할 수 있다. GPIO나 UART를 고객 앱에서 사용해야 한다면 HAL, 시스템 서비스 또는 별도 API 개발이 필요할 수 있다.
OTA 업데이트도 초기에 구조를 정해야 한다. 패키지 서명, 복구 방법, 저장 공간과 업데이트 중 전원 차단에 대한 대응이 필요하다.
Secure Boot나 장치별 키 기록이 필요하다면 양산 프로그래밍 공정과 함께 설계해야 한다. 개발이 끝난 뒤 보안 기능만 추가하려 하면 부팅 구조와 서비스 방법을 다시 검토해야 할 수 있다.
Android PCBA 견적에는 최소한 다음 항목이 포함되어야 한다.
마지막으로 납품 상태를 한 문장으로 적는 편이 좋다.
보드는 조립을 완료하고 승인된 Android 이미지를 기록한 뒤, 지정된 LCD, 터치 패널, Ethernet과 UART를 연결해 기능 시험을 통과한 상태로 납품한다.
이 문장이 있으면 “조립 완료”와 “제품에 바로 사용할 수 있는 상태”를 혼동할 가능성이 크게 줄어든다.
표준 Android SBC는 초기 개발에 유리하다. 이미 제작된 보드에서 Android와 고객 앱을 빠르게 시험할 수 있고, 생산 수량이 적다면 그대로 사용하는 편이 경제적일 수 있다.
맞춤형 Android PCBA는 특정한 외형, 낮은 높이, 특수 커넥터 위치 또는 산업용 인터페이스가 필요할 때 적합하다. 사용하지 않는 기능을 제거하면 최종 조립과 케이블 구성을 단순화할 수도 있다.
대신 맞춤 설계에는 회로, PCB 레이아웃, BSP 수정, 시제품과 검증 비용이 들어간다. 선택 기준은 보드 가격 하나가 아니라 생산 수량, 제품 수명, 기구 제약과 개발 일정이어야 한다.
현실적인 방법은 표준 SBC에서 앱과 주요 기능을 먼저 검증하면서 맞춤 보드 요구 사항을 정리하는 것이다. 다만 평가 보드의 GPIO 번호나 커넥터 구성에 앱이 지나치게 의존하지 않도록 주의해야 한다.
Android PCBA는 Android를 실행할 수 있는 부품을 모아 놓은 보드가 아니다. SoC, DDR, eMMC, 전원, 디스플레이와 외부 인터페이스가 BSP와 함께 안정적으로 동작해야 하는 완성형 플랫폼에 가깝다.
좋은 보드는 벤치에서 한 번 부팅되는 보드가 아니다. 최종 하우징 안에서 반복해서 부팅되고, 선택한 LCD와 주변 장치를 지원하며, 예상 온도 범위에서 동작하고, 양산 공정에서 같은 기준으로 시험할 수 있어야 한다.
견적을 승인하기 전에 공급업체가 말하는 Android PCBA가 조립 보드인지, 프로그램이 기록된 보드인지, 실제 주변 장치로 검증된 플랫폼인지 확인해야 한다. 이 질문을 초기에 해결하면 하드웨어는 완성됐지만 제품에는 아직 사용할 수 없는 보드를 받는 일을 피할 수 있다.