1P by GN⁺ | ★ favorite | 댓글 1개
  • 전자종이 리더의 소프트웨어·펌웨어·하드웨어 전 계층을 공개해 누구나 기기를 확장하거나 직접 만들 수 있는 오픈소스 생태계임
  • CrossPoint Reader는 EPUB 2·3 렌더링과 글꼴 설정, WiFi 전송, KOReader 동기화, 북마크, Focus Reading, 다국어 및 오른쪽에서 왼쪽으로 쓰는 언어의 레이아웃을 지원함
  • 하드웨어 독립형 FreeInk SDK가 컨트롤러·파형·핀·주변장치를 안정적인 API로 추상화해, 코드 재작성 없이 프로필과 설정만으로 새 보드를 추가할 수 있음
  • 오픈 하드웨어 de-link는 ESP32-S3와 전자종이 인터페이스, 충전·배터리 보호, 선택형 전면 조명을 단일 PCB에 통합했으며 약 60달러에 직접 제작 가능함
  • 책을 SD 카드의 공개 형식 파일로 보관하고 공개 회로도·BOM과 교체형 배터리를 제공해, 계정이나 구독 없이 기기를 소유·수리·개조할 수 있게 함

소프트웨어부터 하드웨어까지 열린 전자책 리더 스택

  • FreeInk는 전자종이 리더용 소프트웨어·펌웨어·하드웨어를 함께 개발하는 오픈소스 공동체임
  • 모든 계층을 공개해 누구나 가져와 확장하고 필요에 맞게 바꿀 수 있음
  • Xteink와 Seeed Studio가 공식 파트너로 참여함

CrossPoint Reader 소프트웨어

  • CrossPoint Reader는 저가형 전자종이 리더를 위한 커뮤니티 기반 완전 오픈소스 펌웨어로, 사용자가 기능을 제어하고 확장할 수 있는 기반을 제공함
  • EPUB 2·3 렌더링을 지원함
    • EPUB에 포함된 CSS를 적용하고 사용자가 선택한 글꼴·크기·여백에 맞춰 장을 배치함
    • 처음 연 페이지를 SD 카드에 캐시해 다시 열 때 거의 즉시 표시함
  • Noto Serif와 Noto Sans를 내장하며 SD 카드에 추가한 임의의 글꼴도 사용할 수 있음
    • 크기, 간격, 여백, 하이픈 처리, 정렬, 안티앨리어싱을 조정 가능함
  • WiFi에서 업로드 서버를 실행해 브라우저로 EPUB을 전송하거나 Calibre에서 직접 보낼 수 있음
    • KOReader 동기화로 여러 기기에서 읽던 위치를 유지함
  • Confirm 버튼을 길게 누르면 어느 구절에서든 북마크를 만들 수 있음
    • 저장된 위치에는 페이지와 독서 진행률이 함께 기록됨
  • Focus Reading은 각 단어의 앞부분을 굵게 표시해 시선 이동과 읽기 속도를 유도함
    • 회색조 안티앨리어싱과 타일 렌더링으로 빠르고 선명한 페이지 전환을 지원함
  • 히브리어와 아랍어를 위한 완전한 오른쪽에서 왼쪽 레이아웃을 제공함
    • 메뉴는 스페인어, 프랑스어, 독일어, 이탈리아어, 포르투갈어, 러시아어, 우크라이나어, 폴란드어 등 10개 이상의 언어로 번역됨

하드웨어 독립형 FreeInk SDK

  • FreeInk SDK는 전자종이 리더 펌웨어를 만들기 위한 하드웨어 독립형 개발 기반임
    • 컨트롤러, 파형, 핀, 주변장치를 안정적인 추상화 계층 뒤로 분리함
    • 하나의 범용 코드베이스로 여러 기기를 구동하며, 새 보드는 전체 재작성 없이 프로필과 설정으로 추가함
  • 기기별 세부 사항은 작고 주입 가능한 인터페이스로 나뉨
    • 디스플레이 컨트롤러, 파형과 LUT, GPIO, 버스 속도, 터치, 전면 조명, 오디오를 각각 캡슐화함
    • 펌웨어는 하나의 범용 API를 호출하면서 기기에 맞는 동작을 얻음
  • EInkDisplay, InputManager, BatteryMonitor, SDCardManager, BoardConfig에 걸쳐 작고 일관된 API를 제공함
    • 펌웨어가 단일 라이브러리 경로를 대상으로 하므로 하부 하드웨어와 분리된 상태를 유지할 수 있음
  • 새 보드는 범용 드라이버를 수정하는 대신 프로필과 드라이버 설정을 추가하는 방식으로 지원함
    • 핀, 화면 크기, 파형, 전압을 데이터 값으로 공급해 기기별 조정이 공유 코드 경로에 섞이지 않게 함
  • 빌드는 기기와 기능이라는 두 축으로 구성됨
    • 터치, 전면 조명, 컬러, 오디오는 플래그로 제어하고 필요한 기기에서만 기본 활성화해 바이너리 크기를 줄임
  • CHSC6x와 GT911 컨트롤러용 정전식 터치를 지원함
    • InputManager는 가공하지 않은 터치 좌표를 제공하고, 화면 회전은 애플리케이션이 처리함
  • PWM 전면 조명은 따뜻한 색과 차가운 색 제어를 지원함
  • SecureNet은 소스에서 컴파일한 wolfSSL을 묶어 TLS 1.3과 PSA를 제공함
    • 기능이 제한된 시스템 mbedTLS를 우회해 KOReader 동기화처럼 TLS 1.3 전용 서버에 접속할 수 있음

완전 지원 기기와 런타임 구성

  • 현재 다음 기기를 Full 상태로 지원함
기기 MCU 컨트롤러 패널
Xteink X4 ESP32-C3 SSD1677 800×480 흑백·4단계 회색조
Xteink X3 ESP32-C3 UC8253 792×528 흑백·4단계 회색조
de-link ESP32-S3 SSD1677 800×480 흑백·회색조·전면 조명
M5Stack PaperColor ESP32-S3 ED2208 400×600 Spectra-6 컬러
Murphy M3 ESP32-S3 UC8253 240×416 흑백·터치·전면 조명
LilyGo T5 S3 ESP32-S3 ED047TC1 960×540 16단계 회색조·터치·I²C 게이지
Sticky ESP32-S3 SSD1677 3.97인치 800×480 흑백·GT911 터치·센서 모음
M5Paper v1.1 ESP32(클래식) IT8951E 540×960 16단계 회색조·GT911 터치
  • 서로 연관된 기기는 하나의 펌웨어 빌드를 공유하며 실행 시점에 감지하고 설정할 수 있음
  • 새 컨트롤러는 추상화 계층 뒤에 독립형 드라이버로 추가됨

직접 제작할 수 있는 de-link 하드웨어

  • de-link는 프로젝트의 오픈 하드웨어 코어로, 손으로 납땜할 수 있는 소형 ESP32-S3 보드임
    • KiCad 회로도와 전체 BOM을 공개함
    • 충전, 배터리 보호, 선택형 전면 조명, 24핀 전자종이 인터페이스를 단일 PCB에 통합함
    • 직접 제작하는 데 드는 비용은 약 60달러
  • 연산부에는 240MHz 듀얼 코어 ESP32-S3를 사용함
    • WiFi, BLE, 16MB 플래시와 선택형 PSRAM을 제공함
  • 디스플레이는 GoodDisplay의 3.97인치, 4.26인치, 7.5인치 이상 패널을 위한 24핀 SPI 전자종이 인터페이스를 사용함
  • 저장장치는 4비트 SDMMC 인터페이스의 microSD이며 전체 서재를 오프라인으로 보관할 수 있음
  • 사용자가 선택한 LiPo 배터리를 연결하고 USB-C OTG로 충전함
    • MCP73832 충전 컨트롤러와 DW01A·FS8205A로 과충전 및 과방전을 방지함
  • 선택형 직렬 LED 전면 조명은 차가운 색·따뜻한 색 전환과 PWM 밝기 조절을 지원함
  • 조작부는 각각 스위치 4개를 갖춘 저항식 래더 2개와 리셋 버튼으로 구성됨
  • 다기능 GPIO를 외부에 노출해 모듈 연결과 사용자 개조에 활용할 수 있음

소유하고 수리하며 개조할 수 있는 기반

  • 렌더링 엔진부터 충전 회로까지 모든 계층을 문서화하고 공개해 커뮤니티가 함께 구축·수정·확장할 수 있음
  • 책은 SD 카드에 공개 표준의 일반 파일로 저장됨
    • 어느 기기에서든 읽고 복사하며 계속 보관할 수 있음
  • 소프트웨어·펌웨어·하드웨어를 모두 공개하고 허용적인 라이선스로 배포함
    • 포크, 감사, 재사용이 가능함
  • 손으로 납땜할 수 있는 부품과 공개 BOM, 교체형 배터리를 사용해 폐기하는 대신 수리할 수 있도록 설계함
  • 계정이나 구독 없이 기기와 소프트웨어를 완전히 소유할 수 있음
  • 독자와 하드웨어 개조자들이 공개적으로 개발에 참여함
    • 나이틀리 빌드와 공유 테마를 제공하고 외부 기여를 받음
  • 여분의 GPIO, 사용자 글꼴, 테마 적용형 메뉴를 활용해 자유롭게 개조 가능함
  • 전체 스택은 회로도와 BOM까지 100% 공개되며 USB-C 표준 케이블 충전을 지원함
  • 릴리스는 v0.1부터 v1.2까지 누적되어 있음

댓글과 토론

Hacker News 의견들
  • 몇 주 전 Xteink X4를 샀는데 아주 마음에 듦. 여러 펌웨어를 시험했지만 아직 정착하진 못했고, 화면과 단순한 인터페이스가 특히 좋음
    Kindle 책을 옮기는 과정은 번거롭지만 감수할 만하며, Amazon 생태계 밖에서 책을 사게 되어 최근에는 Humble을 더 자주 이용함

    • 지금까지 가장 마음에 든 것은 Witch reader임. Cross-point의 기능을 모두 갖추면서 책 렌더링이 더 좋고 기능도 많아, 여러 대안을 시험한 뒤 계속 돌아오게 됨
      시리즈별로 책을 모아 보고 싶다면 AALU도 살펴볼 만하며, Crosspoint OS 자체도 여전히 훌륭함
    • Libby 책을 번거롭지 않게 옮길 방법이 있을까? Kindle에서도 한두 단계가 필요하지만, 더 휴대하기 좋은 기기에서 읽을 수 있으면 좋겠음
    • 나도 몇 주 전에 샀는데 주머니에 쏙 들어가는 크기가 정말 좋음. 여러 펌웨어를 시험한 끝에 CrossPoint로 정착했고, 지금까지 가장 안정적이며 사용자 인터페이스도 더 직관적으로 느껴짐
    • Kindle 책은 어떻게 옮기는지 궁금함
  • 지원되는 전자잉크 기기를 모두 찾아봤지만 하나같이 너무 작았음. Paperwhite 정도 크기이면서 이 펌웨어를 실행할 수 있는 더 큰 리더가 있는지 궁금함

    • “Hardware” 링크의 부품 명세에는 GoodDisplay용 24핀 SPI 전자종이가 3.97, 4.26, 7.5인치 이상까지 지원된다고 되어 있음. 검색하면 다음 제품이 나옴: https://www.good-display.com/product/516.html
    • 나열된 기기는 하나도 들어본 적이 없어 직접 조립하거나 키트로 만드는 기기를 겨냥한 듯함. 제대로 된 서드파티 펌웨어가 Kindle이나 Kobo를 단 하나도 지원하지 않는다는 건 상상하기 어려움
    • ESP32-S3는 더 큰 전자잉크 기기를 구동하기에는 성능이 너무 부족함
  • Kobo에 KOReader를 설치하면 내가 원하는 만큼 충분히 개방적임. 흑백 Kobo Libra 2는 지금까지 써본 최고의 전자책 리더지만, 컬러판은 일반 독서 화질이 오히려 후퇴해 아쉬움

    • 이 기기들은 Kobo와 경쟁하는 제품이 아니라, 휴대전화보다도 훨씬 작은 초소형 전자책 리더임. 프로세서와 하드웨어가 극도로 제한적이라 아직은 앱이라는 개념조차 적용하기 어려움
    • reMarkable과 reMarkable 2도 KOReader를 사용할 수 있음. 사전 가져오기, 찾아본 단어 목록 내보내기, 다양한 전자책 형식, 여백과 레이아웃 조절 등을 지원해 오픈소스 전자책 리더로서 매우 훌륭함
  • 몇 주 전 Xteink X4를 샀는데 꽤 귀여운 기기임. 하드웨어도 좋지만, 극도로 제한된 CPU와 메모리에 맞춰 콘텐츠를 최적화하는 자체 펌웨어와 동기화 구조를 만드는 일이 특히 재미있음
    기기의 하드웨어와 인터페이스에 맞춘 이미지·메타데이터 형식, 일반 책·만화 형식을 자동 변환하는 수집 파이프라인까지 만들고 있음. 언젠가는 이 기기로 실제 책도 읽게 될지 모름

    • 전자책 시장이 점점 작은 화면으로 기우는 것이 아쉬움. 내 리더는 8인치인데 큰 글꼴을 쓰면서 계속 스크롤하지 않아도 되는 딱 좋은 크기임
      놀랍게도 전자잉크의 장점으로 약속됐던 낮은 전력 소모도 잘 실현되지 않으며, 대형 컬러 전자잉크 화면으로 가면 배터리 수명이 태블릿보다도 짧아짐
  • Kindle이나 Nook 같은 폐쇄형 전자책 시스템에서 구매한 책이 개정판으로 강제 갱신되거나, 내용 때문에 기기에서 삭제된 적이 있는지 궁금함

    • 내가 아는 최초 사례는 2009년의 https://www.theguardian.com/technology/2009/jul/17/amazon-ki...이며, 비슷한 일은 이후에도 계속 벌어졌음
      책을 사는 게 아니라 출판사나 권리자가 허용하는 동안 읽을 수 있는 이용권을 사는 것이므로 언제든 권한이 취소될 수 있음. 널리 보도된 첫 사례가 하필 《1984》였다는 점은 우스울 만큼 역설적임
    • Kindle은 Amazon에서 구매하지 않았다고 판단하면 외부에서 넣은 책을 종종 삭제함. Kindle DRM과 Calibre가 외부 파일의 표지를 표시하는 방식 사이의 비호환성 때문이라고 하지만 여전히 성가시며, 해결책은 기기를 비행기 모드로 두는 것임
      https://www.mobileread.com/forums/showthread.php?t=340936
    • 이런 일은 비교적 드물며, 판매자에게 권리가 없어 Amazon이 《1984》를 삭제하고 환불한 사례가 대표적임. 다만 https://www.theguardian.com/money/2012/oct/22/amazon-wipes-c...처럼 계정이 삭제되면서 구매한 책의 모든 이용권을 잃은 사례도 있음
    • 가장 악명 높은 사례로 Roald Dahl 전자책의 검열판 자동 갱신이 떠오름. 몇 년 전 비슷하게 보도된 일이 더 있었던 것 같지만 정확히 기억나지는 않음
      https://goodereader.com/blog/electronic-readers/ronald-dahl-...
    • 전자책 시장을 바로잡으려는 진지한 입법 움직임이 있는지 궁금함. DRM을 완전히 없애기는 어렵겠지만, 이제는 판매자 중립적 DRM만 도입돼도 만족할 듯함
  • 오래된 Kindle이나 다른 전자책 리더로 이식하자는 이야기가 많지만, 현재 이 펌웨어는 그런 기기들이 사용하지 않는 ESP32 칩셋 전용

  • Boox는 원하는 Android 앱을 설치할 수 있어 아주 마음에 듦. Storyteller를 실행하면 내 서버와 재생 위치가 동기화되어, iPhone으로 오디오북을 듣다가 Boox에서 그 지점부터 이어 읽을 수 있음

    • 나도 Boox를 좋아하며, 기존 Max Lumi에서 컬러 화면을 쓰기 위해 업그레이드해 지금은 두 번째 Boox 제품을 사용 중임
    • Amazon 이외의 기기에서도 쓸 수 있는 Storyteller 같은 기능을 늘 원했음
  • Amazon의 지원이 끝난 구형 Kindle에도 이 운영체제를 이식해주면 좋겠음

    • Winterbreak는 2012년 이후 출시된 Kindle 대부분을 지원함: https://kindlemodding.org/kindle-models.html
    • 기본 펌웨어가 형편없고 하드웨어도 오랫동안 거의 바뀌지 않은 Kobo에도 이식하면 좋겠으며, 비교적 쉬울 듯함
  • 어떤 펌웨어든 자유롭게 설치할 수 있고 SD 카드로도 부팅되는 Kobo Touch에 아주 좋은 선택지가 될 듯함