현재 버전 v1.5.0-ko.3

릴리즈 노트

CrossPoint Reader 한국어 펌웨어 버전별 변경사항

1.2.0-ko.21

1.2.0-ko.212026년 6월 12일
GitHub

요약

SD 글꼴 두 개(읽기 본문 + 시스템 UI)를 동시에 사용할 때 한자가 깨지던 문제를 수정했습니다. 1.2.0-ko.20에서 추가된 시스템 글꼴 기능 한정 버그입니다.

한국어 버전 변경 사항

수정

  • 한자 글리프 깨짐 수정: 읽기 본문 글꼴과 시스템(UI) 글꼴을 둘 다 SD 글꼴로 지정했을 때, 양쪽 글꼴에 공통으로 들어있는 한자가 밀리거나 깨지고, 시스템 글꼴을 바꿔도 재부팅 전까지 계속 깨지던 문제를 고쳤습니다.
    • 예: 본문 LXGW WenKai KR + 시스템 Source Han Sans K 조합.

기술 세부

  • SD 글꼴의 비트맵 캐시가 코드포인트만으로 키를 만들어, 동시에 로드된 서로 다른 SD 글꼴이 같은 한자에서 상대 글꼴의 비트맵을 받아가던 것이 원인이었습니다(크기 불일치로 인한 글리프 밀림 + 힙 오버리드).
  • 캐시 키에 글꼴 식별자를 추가(fontId<<32 | codepoint)해 글꼴별로 캐시 슬롯을 분리했습니다. 캐시는 단일 공유 풀을 유지하므로 RAM 추가 부담은 없습니다.

1.2.0-ko.20

1.2.0-ko.202026년 6월 11일
GitHub

요약

SD 카드의 사용자 글꼴을 UI(시스템) 글꼴로 통째로 사용할 수 있는 "시스템 글꼴" 설정이 추가되었습니다. 선택한 글꼴이 메뉴·책 제목 등 UI 전체에 적용되며, 그 글꼴에 없는 글자(예: 한자·가나)는 기본 UI 글꼴(Pretendard)로 자동 보완됩니다.
기존 "글꼴 선택"(읽기 본문용)과는 별개의 설정으로, 시스템 글꼴 변경은 읽기 캐시를 건드리지 않아 즉시 적용됩니다.

한국어 버전 변경 사항

추가

  • 시스템 글꼴(UI) 설정 추가: 설정 → 시스템 글꼴에서 /fonts 또는 /.crosspoint/fonts.epdfont 글꼴을 골라 UI 전체 글꼴로 사용할 수 있습니다.
    • 선택한 SD 글꼴이 UI 주 글꼴이 되고, 그 글꼴이 없는 코드포인트는 Pretendard로 폴백됩니다(빈칸·대체 글리프 방지).
    • 목록 첫 항목 "Pretendard (기본)"을 고르면 기본 UI 글꼴로 되돌아갑니다.
    • 시스템 글꼴은 UI 전용이라 읽기 본문 레이아웃 캐시를 재생성하지 않습니다.

기술 세부

  • 글꼴 엔진에 글꼴 단위 리다이렉트(setFontRedirect)를 추가해 모든 UI 글꼴 요청이 한 곳에서 SD 글꼴로 전환됩니다(렌더링과 행간·어센더 메트릭 포함). 정수 2개만 사용해 추가 힙 할당이 없으며, 시스템 글꼴 미설정 시 읽기 경로에는 오버헤드가 없습니다.
  • 글리프 단위 폴백 해석(familyForGlyph)으로 글자마다 올바른 비트맵·메트릭을 사용합니다.

업데이트 방법

알려진 한계

  • 시스템 글꼴 파일은 SD 카드의 /fonts 또는 /.crosspoint/fonts에 있어야 하며, CrossPoint .epdfont 형식이어야 합니다.
  • SD 글꼴의 어센더·행간이 Pretendard와 다르면 UI 줄 간격이 달라질 수 있습니다.
  • 릴리스 펌웨어는 6.25MB 스톡 OTA 파티션 기준 여유가 약 2.4KB로 매우 적습니다. 이후 기능 추가로 펌웨어가 커지면 OTA 한 번에 설치되지 않을 수 있습니다.
  • 릴리스 펌웨어에서는 serial 진단 로그가 비활성화됩니다(개발/디버그가 필요하면 default 빌드 사용).

v1.2.0-ko.19

1.2.0-ko.192026년 6월 10일
GitHub

요약

잠긴(Locked) X4에서 KO 펌웨어를 OTA 한 번으로 바로 설치할 수 있도록 릴리스 펌웨어 크기를 스톡 OTA 파티션(6.25MB) 아래로 줄였습니다.
그동안 KO 펌웨어가 스톡 app 파티션보다 커서 OTA 언락커로는 바로 설치되지 않았고, "OTA로 Crosspoint 설치 → SD 카드로 KO 재플래시"의 2단계를 거쳐야 했습니다(이슈 #15). 이번 릴리스부터는 그 우회 없이 OTA 한 단계로 설치됩니다.
한글 폰트, 한자, WiFi 웹 전송 등 읽기 기능은 모두 그대로 유지됩니다.

한국어 버전 변경 사항

변경

  • 릴리스 펌웨어를 6.25MB 스톡 OTA 파티션에 맞춤: firmware.bin을 6,886,992 → 6,548,704 바이트로 줄여 스톡 Crosspoint app 파티션(0x640000 = 6,553,600 바이트) 안에 들어가게 했습니다. 이제 OTA 언락커가 잠긴 X4에 KO를 한 번에 설치할 수 있습니다.
    • 하이픈 사전(trie) 제거: 라틴/키릴 Liang 하이픈 데이터(영·프·독·러·스·이·우, 약 310KB)를 릴리스 빌드에서 제외했습니다. 한국어는 Liang 하이픈 대상이 아니라 한글 읽기에는 영향이 없습니다. (빌드 플래그 CP_HYPHENATION_LANGS로 토글, 기본값은 전체 유지)
    • 릴리스 빌드 serial 로그 제거: 약 27KB 추가 절감.
  • 한글 폰트(KoPub Batang 14 · 한자 포함, Pretendard 10 UI), 한자, WiFi 웹 전송은 모두 유지됩니다.

업데이트 방법

  • 잠긴 X4 (처음 설치): SD카드 루트에 update.bin 파일을 복사, 전원을 연결한 채로 뒤로가기(볼륨업) + 전원을 길게 누르기
  • 기존 사용자:
    • OTA: WiFi 연결 후 설정 → 시스템 → 업데이트
    • SD: firmware.bin을 SD 카드에 복사 → 설정 → 시스템 → SD카드 펌웨어 업데이트
    • 웹 플래셔: https://crosspoint.kr/flasher
  • 설치 가이드: https://crosspoint.kr/install

알려진 한계

  • 스톡 6.25MB 파티션 기준 여유가 약 4.8KB로 매우 적습니다. 이후 기능이 추가되어 펌웨어가 커지면 다시 한 번에 OTA 설치가 안 될 수 있습니다.
  • 릴리스 펌웨어에서는 serial 진단 로그가 비활성화됩니다(개발/디버그가 필요하면 default 빌드 사용).
  • 본 저장소의 partitions.csv는 전체 플래시/SD 경로용으로 6.625MB app 파티션을 유지합니다(OTA 크기 제한과는 별개).
30개의 릴리즈 중 7-9