2P by GN⁺ | ★ favorite | 댓글 1개
  • Glider는 저지연·고주사율 EPD 모니터를 위한 오픈소스 프로젝트로, 이 저장소는 하드웨어 설계와 펌웨어를 담고 FPGA에서 동작하는 게이트웨어는 별도 오픈소스 Caster EPDC 설계를 사용함
  • 지원 대상은 병렬 인터페이스를 가진 전기영동 디스플레이 패널이며, 흑백 패널과 Kaleido 같은 컬러 필터 배열 기반 컬러 화면을 모두 다룰 수 있음
  • 보드는 Xilinx Spartan-6 LX16 FPGA, DDR3-800 프레임버퍼, STM32H750 MCU, USB-C DisplayPort Alt Mode 또는 DVI 입력, 최대 ±15V 레일에서 1A 피크 전류를 내는 E-paper 전원을 포함함
  • Caster는 픽셀마다 독립 업데이트 영역처럼 처리하고 early cancellation을 적용해, 처리 지연을 20µs 미만으로 낮추며 바이너리·4단계 그레이스케일 모드에서 낮은 지연을 목표로 함
  • 낮은 지연 설계는 더 큰 메모리 대역폭과 DVI·DisplayPort 같은 실제 저지연 영상 인터페이스를 요구하며, 1080p 예시에서 전통 방식 120MB/s 대비 Caster 방식은 540MB/s가 필요함

Glider와 Caster의 역할

  • Glider는 저지연 EPD 모니터를 위한 오픈소스 하드웨어 프로젝트임
  • 이 저장소에는 하드웨어 설계와 펌웨어 소스가 있으며, FPGA에서 실행되는 RTL은 별도 저장소의 Caster EPDC 설계임
  • README는 Glider뿐 아니라 E Ink 패널, 파형, 컬러 표시, 디더링, 호환 화면에 대한 내용을 함께 담고 있음
  • 보드 구매에 관심 있는 사용자는 Modos Paper Monitor Crowd Supply 제품 페이지를 확인할 수 있음
  • E Ink 관련 상표와 내용은 E Ink Corporation의 보증을 받은 것이 아니며, 공개 정보와 자체 연구를 기반으로 해 오류나 부정확성이 있을 수 있음

주요 기능

  • Glider/Caster 조합은 저지연·고주사율 EPD 모니터를 위한 완성형 솔루션을 목표로 함
  • 지원 기능
    • 병렬 인터페이스를 가진 EPD 패널 지원
    • E Ink, OED, DES 계열 패널 지원
    • 흑백 화면과 Kaleido 같은 CFA 기반 컬러 화면 지원
    • 20µs 미만의 처리 지연
    • 바이너리, 4단계 그레이스케일, 16단계 그레이스케일 출력 모드
    • 지연 최적화 바이너리·4단계 그레이스케일 구동 모드
    • 자동 바이너리·16단계 그레이스케일 하이브리드 모드
    • 호스트 소프트웨어가 런타임에 영역 업데이트와 모드 전환을 제어 가능
    • 추가 지연 없는 하드웨어 Bayer 디더링, blue-noise 디더링, 오류 확산 디더링
    • 표준 HVsync 입력
    • 보드 레벨에서 USB-C DisplayPort Alt Mode와 DVI 입력 지원

하드웨어 구성

  • 보드는 KiCad로 설계되었으며, 소스 파일을 열려면 최신 안정 버전 KiCad가 필요할 수 있음
  • 주요 구성
    • Xilinx Spartan-6 LX16 FPGA에서 Caster 실행
    • DDR3-800 프레임버퍼 메모리
    • PTN3460 DP-LVDS 브리지를 통한 Type-C DisplayPort Alt Mode 입력
    • ADV7611 디코더를 통한 microHDMI 커넥터 기반 DVI 입력
    • 대형 패널을 지원하는 E-paper 전원부
      • ±15V 레일에서 최대 1A 피크 전류
    • VCOM kick-back 전압 측정 지원
    • USB 통신과 펌웨어 업그레이드를 위한 STM32H750 MCU
    • 오류 확산 디더링 활성화 시 최대 133MP/s 처리율
    • 디더링 비활성화 시 200MP/s 초과 처리율

E Ink 패널과 컨트롤러 구조

  • E Ink는 종이 같은 전기영동 디스플레이 계열의 브랜드이며, 입자에 전기장을 걸어 흑백 또는 중간 상태를 만드는 방식으로 동작함
  • EPD는 LCD와 달리 전기장이 제거된 뒤에도 상태를 유지하는 쌍안정성을 가지며, 픽셀이 완전히 구동될 때까지만 갱신하면 됨
  • EPD의 장점과 단점
    • 빛을 방출하지 않고 반사하므로 전력 소비가 낮고 야외 사용이 가능함
    • 전원 제거 후에도 이미지를 유지함
    • 현대 IPS LCD와 비교하면 표시 품질, 색역, 응답 시간 측면에서 불리함
    • 예시 수치에서 흑백 EPD는 약 17:1 대비, 약 150ms 응답 시간을 가짐
    • CFA 기반 컬러 EPD는 약 14:1 대비, 약 1.5% sRGB 색역, 약 150ms 응답 시간을 가짐
  • E Ink 컨트롤러는 LCD 시스템의 디스플레이 컨트롤러와 타이밍 컨트롤러에 가까운 역할을 하며, 원본 이미지 데이터를 패널 구동 신호로 바꿈
  • 컨트롤러는 현재 픽셀 상태와 목표 상태에 따라 전압을 정하고, 보통 파형(waveform)이라는 LUT를 사용해 상태 전환별 구동 시퀀스를 선택함

컨트롤러 내장 패널과 비내장 패널

  • E-paper 패널은 컨트롤러 내장 여부에 따라 크게 두 부류로 나뉨
  • 컨트롤러 내장 패널
    • SPI나 I2C 같은 일반 인터페이스로 MCU에 연결 가능
    • 전원부가 통합된 경우가 많아 시스템 비용이 낮음
    • 전체 업데이트 지연이 100ms에서 수 초까지 걸릴 수 있음
  • 컨트롤러 없는 패널
    • 전용 컨트롤러, E Ink 컨트롤러 내장 SoC, 빠른 MCU/SoC의 소프트웨어 TCON으로 구동 가능
    • 전용 컨트롤러는 IoT, 전자책, 휴대폰, E Ink 모니터, E Ink 노트북 가능성까지 폭넓게 적용 가능함
    • 빠른 구동 구조를 설계할 수 있지만 시스템 설계가 낮은 지연을 보장해야 함
  • 기존 오픈소스 전용 컨트롤러 예시에는 Caster + Glider, Paperback 데스크톱 E-paper 모니터, FPGA E Ink 컨트롤러가 포함됨
  • Caster + Glider는 FPGA 기반 컨트롤러로, 여러 업데이트 모드, 초저지연 처리, 넓은 화면 지원 범위를 제공함

파형과 그레이스케일

  • 파형(waveform) 은 E Ink 컨트롤러가 픽셀을 어떻게 구동할지 결정하는 조회 테이블임
  • LUT 입력은 프레임 번호, 출발 그레이스케일 레벨, 목표 그레이스케일 레벨로 구성됨
  • 컨트롤러는 모든 픽셀에 대해 매 프레임 LUT를 조회하고, 픽셀이 완전히 구동될 때까지 프레임 카운터를 증가시키며 반복함
  • 파형 파일은 단일 픽셀 전환만 다루므로 해상도와 독립적임
  • 저장소는 여러 파형 형식 작업을 위한 도구를 제공함
    • iwf에서 i.MX6/7 EPDC용 fw로 변환: ./mxc_wvfm_asm v1/v2 input.iwf output.fw
    • fw에서 iwf로 변환: ./mxc_wvfm_dump v1/v2 input.fw output_prefix
    • wbf에서 iwf로 변환: ./wbf_wvfm_dump input.wbf output_prefix
  • E Ink와 DES 패널은 벤더 제공 파형 기준으로 보통 최대 16단계 그레이스케일을 지원함
  • 그레이스케일은 프레임 시간을 바꾸거나, 고정 프레임율에서 적용 프레임 수를 바꾸는 방식으로 만들 수 있음
  • 상용 구현의 그레이스케일 구동은 흑백 표시보다 느리고, 갱신 중 깜빡임이 나타날 수 있음

컬러 EPD와 디더링

  • 컬러 EPD 구현은 주로 컬러 필터 배열(CFA) 또는 다중 안료 컬러 디스플레이로 나뉨
  • CFA 방식
    • E Ink Kaleido, E Ink Triton, color DES가 이 방식에 속함
    • 저수준 구동은 그레이스케일 패널과 같아 100~200ms 수준의 갱신 시간과 16단계 그레이스케일을 사용할 수 있음
    • 16단계 그레이스케일은 16³ = 4096색으로 이어짐
    • 컬러 필터가 빛을 걸러 화면이 어두워지는 단점이 있음
    • Glider/Caster는 color DES, E Ink Triton, E Ink Kaleido를 지원함
  • 다중 안료 컬러 디스플레이
    • E Ink Gallery와 E Ink Spectra 계열이 포함됨
    • CFA가 없어 해상도 감소와 광 손실이 없고, 더 높은 반사율과 채도를 얻을 수 있음
    • 구동이 더 어렵고 느리며, 1·2세대 Gallery는 30초 갱신, Spectra 6 Plus 기기는 7초 갱신으로 소개됨
  • 디더링은 제한된 그레이스케일이나 바이너리 표시에서 더 나은 이미지를 만들기 위해 사용됨
    • ordered dithering은 이미지에 미리 계산된 텍스처나 노이즈를 더한 뒤 임계값 처리를 함
    • error-diffusion dithering은 반올림 오류를 주변 픽셀로 전달함
    • Bayer, blue-noise, Floyd-Steinberg, Stucki, Sierra 같은 방식이 다뤄짐
  • CFA 기반 컬러 화면에서는 인접 픽셀의 색을 고려하지 않는 일반 오류 확산이 잘 맞지 않을 수 있으며, 같은 색 픽셀로 오류를 보내도록 커널을 조정할 수 있음
  • 감마 보정도 중요하며, sRGB 공간에서 단순 반올림하면 가장 가까운 색 선택과 오류 계산이 잘못될 수 있음

Caster/Glider 아키텍처

  • FPGA 게이트웨어는 여러 모듈로 나뉘며, caster.v가 EPDC 코어의 최상위 설계임
  • 전체 이미지 처리 시스템은 top.v 아래에서 추가 컴포넌트를 연결해 구성함
  • 주요 클록 도메인
    • clk_vi: 입력 비디오 클록 도메인, 픽셀 속도의 1/2
    • clk_epdc: EPDC 클록 도메인, 픽셀 속도의 1/4
    • clk_mem: 메모리 클록 도메인, 메모리 전송 속도의 1/4
  • 픽셀 처리 흐름
    • memif가 DDR SDRAM에서 로컬 픽셀 상태를 읽어 bi_fifo에 넣음
    • 입력 영상 스트림은 vi_fifo에 들어감
    • EPDC의 로컬 타이밍 생성기가 픽셀 출력을 준비하면 영상 입력과 상태 값을 함께 꺼내 처리함
    • 8비트 입력 이미지는 1비트와 4비트로 디더링됨
    • 16단계 그레이스케일 모드에서 파형 조회가 수행됨
    • 새 상태와 전압 선택 값이 결정됨
    • 새 상태는 bo_fifo로 들어가고, 전압 선택 값은 화면으로 전송됨
  • EPDC는 클록당 4픽셀을 항상 처리하며, 화면 인터페이스 폭이 다르면 출력 뒤에 rate adapter가 붙음

MCU 펌웨어 기능

  • MCU는 FreeRTOS를 사용해 보드의 housekeeping 기능을 담당함
  • EPD 전원 관리
    • 공통 전원, 소스 전원, 게이트 전원을 제공함
    • VCOM 전압 조정과 설치된 패널의 최적 VCOM 전압 측정을 수행함
  • 전원 모니터링
    • 여러 레일의 전압과 전류를 감시하고 예상 범위 안에 있는지 확인함
  • FPGA 비트스트림 로딩
    • FPGA에는 자체 플래시가 없으며, 전원 인가 시 MCU가 SPI로 비트스트림을 FPGA에 전송함
    • FPGA 비트스트림과 MCU 펌웨어를 함께 묶어 업데이트할 수 있음
  • USB-C 협상
    • USB-C DisplayPort Alt Mode로 보드 전원과 영상 입력을 지원함
    • USB PD 프로토콜로 영상 입력 기능을 소스 장치에 알림
    • 케이블 방향에 따라 Type-C 신호 mux를 제어함
  • 비디오 디코더 초기화
    • FPGA가 DisplayPort나 DVI 같은 고속 영상 인터페이스에 직접 연결할 고속 deserializer를 갖지 않으므로, 전용 디코더 칩을 초기화함
  • PC 통신
    • Caster는 업데이트 모드와 강제 업데이트·클리어를 픽셀 단위로 적용할 수 있음
    • MCU는 TinyUSB를 사용해 HID 장치로 동작하고, 호스트 PC와 FPGA 사이 메시지를 전달함

저지연 구동 방식

  • 기존 기본 구동 방식은 전역 카운터로 파형 테이블을 조회해, 이전 업데이트가 끝난 뒤에야 새 이미지를 받는 제한이 있음
  • 업데이트가 약 100ms 걸리면 이미지율은 10Hz가 되고, 새 이미지가 컨트롤러에서 처리되기 전까지 최대 100ms를 기다릴 수 있음
  • Caster는 모든 픽셀을 독립 업데이트 영역처럼 취급함
    • 소프트웨어가 문자 경계에 맞춰 영역을 설정하거나 제한된 영역 수를 재할당할 필요가 없음
  • 이미 업데이트 중인 픽셀이 다시 바뀌면 early cancellation을 적용함
    • 픽셀이 완전히 구동될 때까지 기다리지 않음
    • 새 요청 상태 쪽으로 구동하고, 새로 계산한 구동 시간에 따라 프레임 카운터를 갱신함
  • 두 기법을 결합해 저지연 바이너리와 4단계 그레이스케일 모드를 구현함
  • Caster는 프레임율과 대비율의 트레이드오프도 더 이상 관련 없으며, 높은 프레임율과 높은 대비율을 자동으로 달성한다고 밝힘

하이브리드 그레이스케일 모드와 한계

  • Caster는 빠른 바이너리 모드와 느린 그레이스케일 모드를 픽셀 단위로 자동 전환
  • 입력 이미지가 바뀌면 바이너리 모드로 업데이트하고, 이미지가 한동안 바뀌지 않으면 그레이스케일로 다시 렌더링함
  • 이 방식은 더 큰 메모리 대역폭을 요구함
    • 1080p 패널 예시에서 약 120MP/s로 계산함
    • 전통 방식은 픽셀당 1바이트 읽기로 120MB/s가 필요함
    • Caster는 픽셀 상태 버퍼만 픽셀당 2바이트 읽기와 2바이트 쓰기가 필요하고, 새 이미지 값 읽기에 픽셀당 0.5바이트가 더 필요함
    • 결과적으로 120MP/s × 4.5B/pixel = 540MB/s가 필요함
  • Glider 하드웨어는 더 높은 해상도를 위해 DDR3-800 메모리를 사용함
  • 컨트롤러가 PC의 CPU/GPU 일부가 아니라 모니터 내부에 있을 때는 USB나 I80/SPI 같은 단순하지만 느린 인터페이스 대신 DVI나 DP 같은 실제 저지연 영상 인터페이스가 필요함
  • 이러한 기법은 책 읽기 같은 사용 사례에는 도움이 되지 않으므로, 상용 전자책 솔루션이 이를 구현할 이유가 적다고 밝힘

빌드와 플래싱

  • PCB는 KiCad 8.0으로 설계되었으며, 권장 4층 스택업은 1080 PP 레이어임
  • FPGA 비트스트림 빌드
    • Xilinx ISE 14.7이 필요함
    • 최신 운영체제를 공식 지원하지 않으며, Xilinx의 공식 RHEL 가상 머신 사용이 권장됨
    • Caster 저장소는 git clone --recursive https://gitlab.com/zephray/Caster.git로 받을 수 있음
    • rtl/spartan6/top.vCOLORMODEMONO, RGBW, DES 중 선택함
    • rtl/defines.vhOUTPUT_16B는 16비트 패널 사용 시 정의함
    • Modos 6인치와 13인치 키트는 기본값인 MONO, 8비트 설정이 맞음
  • MCU 펌웨어 빌드
    • STM32CubeIDE가 필요함
    • Glider 저장소는 git clone --recursive https://gitlab.com/zephray/Glider.git로 받을 수 있음
    • Glider/fw를 STM32CubeIDE 프로젝트로 열어 빌드함
  • 플래싱
    • dfu-util을 설치하고 USB 포트 가까운 버튼을 누른 상태로 USB 케이블을 연결함
    • 제공 플래싱 도구는 Python 3와 hidapi 패키지를 사용함
    • 수동 방식은 dfu-util로 MCU 펌웨어를 쓰고, 보드 셸에서 XMODEM으로 FPGA 비트스트림을 전송함

호환 화면과 성능 제한

  • Modos Dev Kit는 13.3인치 1600×1200과 6인치 1404×1072 화면 옵션을 제공함
  • 보드는 다른 패널도 구동할 수 있지만, 화면마다 커넥터가 달라 어댑터가 필요함
  • 메인보드는 50핀 + 16핀 커넥터를 사용함
    • 단일 50핀 커넥터는 8비트·16비트 화면에 충분함
    • 16핀 커넥터는 LVDS 화면과 32비트·64비트 화면 지원을 추가함
  • 지원 가능한 화면은 입력 프로토콜, 처리율, 메모리 인터페이스에 제한받음
    • 디더링 활성화 처리율: 133MP/s
    • 디더링 비활성화 처리율: 280MP/s
    • 8-wide 설계의 추정 처리율: 500MP/s
    • ADV7611 기반 DVI 최대 픽셀율: 165MP/s
    • PTN3460 기반 DisplayPort 최대 픽셀율: 224MP/s
    • DDR2/3-800 ×16 메모리 인터페이스 예시: 360MP/s
  • 일반 해상도별 피크 픽셀율 예시
    • 1600×1200 13.3인치 60Hz: 125MP/s
    • 1600×1200 13.3인치 85Hz: 178MP/s
    • 2200×1650 13.3인치 60Hz: 232MP/s
    • 2560×1920 13.3인치 60Hz: 313MP/s
    • 3200×1800 25.3인치 60Hz: 364MP/s
  • 그레이스케일 렌더링에는 화면을 85Hz로 새로고침해야 하며, 85Hz는 E Ink가 지원하는 새로고침 주파수임
  • 보드는 연결된 화면 해상도를 자동 감지하지 못하므로, 보드 셸에서 수동 설정하거나 구성 생성 도구를 사용해야 함
  • 수동 계산에는 Video Timings Calculator by Tom Verbeure를 사용할 수 있음

라이선스와 참고 자료

  • 문서는 명시된 별도 라이선스가 있는 참고 자료를 제외하고 퍼블릭 도메인으로 공개됨
  • 하드웨어 설계는 CERN Open Source Hardware License strongly-reciprocal variant인 CERN-OHL-S로 공개됨
  • 펌웨어 코드는 MIT 라이선스이며, USB PD 라이브러리는 Chromium OS 프로젝트와 reclamier labs에서 파생되어 BSD 라이선스를 따름
  • 참고 자료에는 EPD 구동 역공학 자료, 초기 E Ink DIY 프로젝트, STM32 기반 그레이스케일 드라이버, ESP32 기반 EPDiy, WBF 파일 형식 도구와 파서가 포함됨

댓글과 토론

Hacker News 의견들
  • 모든 전자잉크 컨트롤러가 별로인데, 이 사람이 직접 고치기로 하고 결과물을 오픈소스 하드웨어로 공개했으며 이제는 최신 수준이 됨
    이런 사람과 프로젝트가 정말 좋음

  • README만 봐도 정보의 폭과 깊이가 인상적임
    이런 자료가 이렇게 공개되면 커뮤니티에서 빠른 혁신과 파괴적 변화가 나올 것 같음

    • Pine Note 쪽 사람들이 이걸 봤으면 좋겠음
      Discord를 따라가는데 진행이 꽤 느리고, 기본적인 부분에서도 많이 고생하는 중임
    • 적어도 이건 진짜 전자종이이지, 예전에 단색 LCD를 저지연 전자종이라고 우기던 그런 물건은 아님
    • 과장이 아니었음
      동작하는 물리 이론까지 다룰 정도로 예상보다 훨씬 자세함
  • Kindle을 10년 넘게 써 왔지만 반응성 부족은 늘 거슬렸음
    하드웨어 문제인지 소프트웨어 문제인지는 모르겠지만, 이 프로젝트가 하드웨어 쪽에서 지연을 줄이는 데 집중한다니 반가움
    Kindle이 왜 이렇게 별로인 제품인지 아는 사람이 있는지 궁금함. 전자잉크가 좋고 전자책 시장이 포괄적이라 쓰지만, 실제로 좋은 기기라고는 생각하지 않음

    • Kindle은 애초에 만든 목적, 즉 책 읽기에는 충분히 반응성이 있음
      다른 것도 할 수는 있지만 그렇게 만들거나 마케팅한 제품은 아니라서, 반응성 혁신 대신 비용을 낮게 유지함
      대신 잡는 방식, 탐색 방식, 백라이트 같은 다른 사용 편의성을 개선함
    • 느린 새로고침 시간 때문에 Kindle을 나쁜 제품이라고 판단하게 만든 사용 방식이 무엇인지 궁금함
      Kindle은 늘 전자책 단말기의 기준점이었고 실제로 살 수 있는 가장 흔한 전자잉크 기술 제품임
      비즈니스 관점에서 중요한 차원으로 보면 거의 나쁜 제품이라고 하기 어려움
    • 탈옥한 뒤 KOReader 같은 걸 올리면 훨씬 안정적인 기기가 됨
      이후에는 Calibre로 책을 넣거나 SFTP로 넣을 수 있음
    • 여러 전자책 단말기를 써 봤는데 Kindle만 기대한 대로 제대로 동작했음
      어떤 단말기는 며칠 만에 배터리가 닳아 긴 배터리 수명 약속을 못 지켰고, 어떤 건 품질이 형편없어서 몇 달 만에 고장 났음
      Kindle은 내 사용량 기준 하루 1~2시간 독서에 한 번 충전으로 몇 주 가고, 방수라 욕조에서도 읽을 수 있어서 귀중함. 특별한 문제를 겪은 적은 없음
      UI가 Amazon Store 홍보에 맞춰진 것 같지만, 난 쓰지 않고 이메일로 책을 보내 읽은 뒤 삭제해서 괜찮음
      라이브러리에 폴더가 있으면 좋겠고, 다른 전자책 단말기처럼 USB 메모리처럼 연결해 PC에서 마음대로 정리할 수 있으면 좋겠지만 필수는 아님
      Kindle이 나쁜 제품일 수도 있지만 나머지는 더 나쁜 듯함. Amazon 규모의 전자책 단말기 브랜드를 하나도 모르겠고, 다들 품질과 평판에 투자하지 않는 중국 무명 브랜드처럼 보임
    • 지난 10년 동안 전자잉크 기기는 전반적으로 많이 좋아졌음
      새로고침 속도, 지연, 연산 성능, 반응성 등 거의 모든 면에서 개선됨
  • 이름이 Glider인 게 재미있는 우연임
    꽤 많은 글라이더, 즉 세일플레인 조종사들이 강한 햇빛 아래 가독성이 좋아 전자잉크 화면을 쓰고, 보통 루팅한 Kobo나 Kindle에 XCSoar 같은 걸 돌림: https://www.xcsoar.org/hardware/

    • 잠수함은 Logitech 컨트롤러로 조종하고, 글라이더는 전자잉크 리더기를 디스플레이로 씀
      틈새 교통수단 안에서 또 어떤 기술들이 재활용되고 있을지 궁금해짐
    • 패러글라이더 조종사들도 정확히 같은 조합을 씀
  • 눈 피로와 안구건조 때문에 오랫동안 전자잉크 솔루션에 관심이 있었음
    알고 보니 아주 약한 난시가 있었음. 안과 의사는 교정을 권하지 않았지만, 교정하자 안구건조와 눈 피로가 완전히 사라짐
    그러니 안과 의사의 최소 처방 강도 관행과 별개로, 컴퓨터용 안경으로 약한 난시를 교정해 보는 게 좋음

    • 이에 동의함
      오른쪽 눈에 아주 약한 난시가 있는데, 일반 돋보기 대신 맞춤 독서용 안경으로 교정하니 눈 피로와 두통 면에서 완전히 달랐음
      값싼 안경으로도 체감상 괜찮긴 했지만, 차이가 얼마나 큰지 깨닫고 정말 놀랐음
    • 해결책을 찾았다니 다행임
      안구건조와 눈 피로는 자주 같이 오며, LED 기반 화면으로 인한 눈 피로를 다루는 포럼도 따로 있음
      비슷한 문제가 있는 사람은 방문해 볼 만함: https://ledstrain.org/
    • “컴퓨터용 안경”이 뭔지 궁금함
  • zephray가 머릿속에 있던 E Ink 지식을 이렇게 오픈소스로 공개해 줘서 정말 고마움
    README에 전자잉크 관련 훌륭한 정보가 많고, 이미 꽤 읽었으며 앞으로 몇 년 동안 참고하게 될 것 같음

  • 정말 멋진 자료임
    학습 목적으로 전자잉크 디스플레이를 쓰는 기기를 오래전부터 만들고 싶었지만, 소프트웨어만 해 봐서 어디서 시작해야 할지 몰랐음
    이 자료가 그 학습에 꽤 도움이 될 것 같음

  • 링크된 GitHub는 원래 GitLab 저장소의 미러임: https://gitlab.com/zephray/glider

  • 전자잉크 디스플레이에 피드백 제어를 추가하는 아이디어를 조사한 사람이 있었는지 궁금함
    전자잉크의 깜빡임과 지연은 전적으로 컨트롤러가 개방 루프 방식이기 때문이라는 느낌이 듦

  • 이런 전자잉크 디스플레이로 Compact Mac 클론을 만들고 싶음
    얼마나 멋져 보일지 상상됨

    • 좋아 보일 수는 있음 [1]
      다만 아직 움직이는 커서를 감당할 만큼의 전자잉크 새로고침 속도는 본 적이 없음. 요즘은 올바른 드라이버라면 가능할지도 모름
      [1] https://engineersneedart.com/systemsix/systemsix.html
    • 12인치 MacBook 폼팩터에 전자잉크 디스플레이를 넣고, 밤에는 선택적으로 주황색 글로라이트를 켜며 Classic Mac OS 비슷한 걸 돌리는 기기라면 매우 차분하고 휴대성 좋은 글쓰기 머신이 될 듯함
      배터리 수명도 아마 몇 주 단위로 나올 것 같음
    • 전자잉크 Newton만 나와도 만족하겠음
    • 아니면 Palm Pilot을 재시동해도 좋겠음