- 고등학교 3학년 학생이 6개월간 직접 제작한 노트북
- 4K AMOLED 디스플레이, Cherry MX 기계식 키보드, Minecraft 4K 플레이, +7B LLMs 실행, 웹 서핑, 약 7시간 배터리 수명. 모든 것이 오픈 소스임.
- 최신 상용 얇고 가벼운 노트북이 가진 다양한 기술 스펙(화면, 오디오, 성능, 빌드, 촉감, 터치 상호작용, 효율, 크기 등)을 최대한 구현하고자 함
- 동시에 가능한 한 많은 것을 처음부터 직접 만들고자 하는 시도였음
전체 하드웨어 구성
칩 선택
- 단일 보드 컴퓨터(SBC)용 SoC를 찾았고, Rockchip RK3588이 빠른 편이어서 관심을 가졌음
- 소프트웨어 지원은 부족하지만 하드웨어 문서나 레퍼런스 회로도가 괜찮았음
- RK3588 스펙
- A76 쿼드코어 + A55 쿼드코어
- Mali-G10 GPU
- 6TOPs NPU
- 8K@60FPS 디코더
- 다양한 I/O (8K 디스플레이, 듀얼 USB3.1, PCIe 3.0 x4, HDMI2.1/eDP 1.4 등)
- 시스템 온 모듈(SoM)을 활용하면 고속 신호 배선이 필요한 메모리 부분을 신경 쓰지 않아도 되어 효율적임
- FriendlyElec의 CM3588 SoM을 선택했음
디스플레이
- panelook.com에서 크기와 해상도로 필터링해 4K 해상도의 13.3인치 AMOLED로 결정했음
- ATNA33TP11이 비교적 새 패널 재고가 많았음
- 커넥터 위치나 보드 길이를 줄이는 등의 미세 조정으로 1.5GHz급 신호 무결성을 확보했음
- eDP 기반의 비표준 Linux 환경에서 4K AMOLED 세팅하는 과정이 매우 복잡했음 (전원 온 타이밍, 엔지니어링 로그 분석, 역공학 등)
파워트레인
- 두께 6mm 정도인 셀을 4개 직렬로 구성해 약 60Wh 용량을 목표로 함
- batteryspace.com에서 3.7V 4250mAh의 셀을 찾았음
- 전체 전압은 4S 구성으로 16.8V(최대 20V USB-C 입력). BQ25713 충전 IC, BQ77915 밸런싱 IC, LTC2943 전력 추적 IC 등을 사용했음
- ESP32-S3를 통해 배터리 모니터링과 기타 컨트롤을 수행함
- 커널과 Python 스크립트를 통해 OS에서 배터리 상태를 네이티브로 표시하도록 구성함
[Powertrain V0.2 KiCanvas Link]
https://kicanvas.org//…
메인보드
- 배터리, 디스플레이 크기 등을 바탕으로 메인보드 폭을 약 90mm 내외로 잡았음
- 외부 I/O로는 듀얼 USB3.1 Type-C, USB2.0 Type-A, 헤드폰 잭, microSD 카드 슬롯을 구현함
- 내부에는 M.2 E-key(와이파이/블루투스 모듈), M.2 M-key(NVMe SSD)를 지원함
- 완성형 메인보드에 관한 자세한 부분은 별도 글로 정리 예정임
[Motherboard V1.0 KiCanvas Link]
https://kicanvas.org//…
시스템 구동
- Joshua Riek의 ubuntu-rockchip 커널/배포본을 사용함
- Armbian 커널도 Rockchip의 커널 기반이라 하드웨어 기능을 잘 활용 가능함
- 하드웨어 설정은 주로 DeviceTree(DTS) 내에서 처리하며, U-boot를 통해 부트로더 쪽에서 적절히 지정함
- 개발은 MacBook + Visual Studio Code + Orbstack(가상화된 Ubuntu 24.04) 환경에서 진행했고, compile 후
scp
로 RK3588 장치에 전송함 - 표시, PCIe, USB 설정 등은 DTS로 반복 수정, 재부팅 과정을 거치며 해결했음
- 최종적으로 Ubuntu 24.04 LTS 커널 6.1 기반으로 구동함
주변기기
- 노트북 키보드를 분리해 무선 키보드처럼 쓸 수 있으면 어떨까 하는 생각에서 시작함
- ZMK 기반 무선 기계식 키보드를 여러 번 만들어본 경험이 있어 Cherry MX ULP 스위치를 선택했음
- 배터리와 스위치가 들어가면 높이가 증가하므로, 1mm 두께의 200mAh 배터리를 사용하고 PCB 높이도 최소화했음
- 키캡은 시중 조달이 어려워 0.15mm 노즐로 3D 프린팅함
- 트랙패드는 Azoteq의 PXM0057-401 모듈(글래스 표면, 멀티터치, USB 지원)을 채택함. 단종 예정이라 아쉬움이 있음
[Keyboard V1.0 KiCanvas Link]
https://kicanvas.org//…
메카니컬
- 알루미늄 CNC 블록을 JLC에 보내 다양한 아노다이징 처리 샘플을 받아봄. 어두운 그레이가 촉감은 좋았지만 외관은 무광 블랙이 마음에 들어 최종 선택했음
- CAD는 OnShape에서 진행했으며, Framework 13.3” 노트북 힌지를 참고함
- 섀시 내부 레이아웃: 아래쪽에 배터리 4개, 오른쪽에 파워 보드, 왼쪽에 메인보드, 맨 위 힌지 구조. 자석 분리형 키보드를 위한 하단 나사 제거 설계를 함
- 냉각 구조는 커스텀 구리 히트싱크 + 히트파이프 + 팬의 결합 형태이며, PTM7950 써멀 패드를 이용함
- 스피커는 PUI Audio 제품을 사용했는데, CM3588의 오디오 DAC 디버깅에 시간이 모자라 외장 USB 오디오 컨버터를 추가함
반성
- 이 프로젝트 이름 anyon_e는 양자역학 수업(특히 준양자입자 ‘애니온’) 이후 생각해낸 것임
- 전기, 소프트웨어, 기계 분야가 모두 얽혀야 했기에 매우 힘들었음
- 오픈소스 프로젝트(ZMK, KiCad, Blender 등)처럼 창작과 혁신, 상상의 힘을 사람들에게 나누고 싶었음
- 작은 부분이라도 오픈소스로 기여하고자 하고, 새 가능성을 열어보고 싶었음
공식 Repo - https://github.com/Hello9999901/laptop
Phillips Exeter Academy 고등학교 재학생이라는데, 이 학교가 1781년에 설립된 엄청 유명한 사립학교 라는군요.
Hacker News 의견
- Bryan은 고등학교 마지막 학년에 있음
- 저자의 뛰어난 능력을 보여주는 특별한 HN 게시물임. 비디오를 보고 깊은 인상을 받음
- 정말 멋진 프로젝트임. 개선할 수 있는 다음 단계가 명확함. 자원, 시간, 기술 중 어떤 것이 더 부족했는지 궁금함
- 예를 들어, 케이블 라우팅을 쉽게 하기 위해 플렉스 PCB를 만드는 것에 대해 생각해 본 적이 있는지 궁금함
- 탈착식 무선 키보드를 가진 노트북의 개념이 훌륭하다고 생각함. Surface나 iPad의 케이스 키보드보다 구현이 훨씬 깔끔함
- 작고 강력한 CPU를 가진 도크 의존형 손바닥 크기의 PC 비전에 한 걸음 다가갈 수 있을 것 같음. USB-C 하나로 연결되고, 다른 포트는 없으며, 저전력 충전기에서 전력 안정성을 위한 미니 배터리로 지원됨
- Framework 13을 위한 맞춤형 화면 드라이버를 만들려고 노력했으나 실패함. 전체 노트북을 설계하고 제작한 것에 깊은 인상을 받음
- 이는 매우 적은 사람들이 주장할 수 있는 성과임. HN에 명예의 전당이 있다면 가치 있는 입성임
- SoM을 사용한 것이 현명한 선택임. SoC와 외부 구성 요소의 전력 시퀀싱은 제대로 된 문서가 없으면 매우 어려움
- USB-C, DisplayPort(4K) 및 PCIe의 현대 속도는 대부분의 사람들에게는 마법과 같음. 이는 디지털이 아니라 아날로그 회로와 물리학이 작용하는 것임
- 매우 인상적임. 노트북이 훌륭해 보임. 제조하고 판매할 수 있다면 구매를 고려할 것임
- Clockwork Pi를 떠올리게 하는 멋진 프로젝트임. 공유해줘서 고마움
- 총 비용이 궁금함
- USB-C 커넥터가 외부 인클로저에 어떻게 만들어졌는지 궁금함
- USB 연장 케이블을 사용하는 것은 좋지 않은 생각임. 대량의 데이터를 복사할 때 비트 오류가 발생할 수 있음. USB 드라이브를 캐리어 보드에 직접 삽입하는 것이 더 나음, 하지만 물리적으로 항상 가능한 것은 아님