● Dành cho Mike & tester — bản xem trước, chưa phải bản build thật
Tự thiết kế firmware Metalio của riêng bạn
Đi lần lượt 7 bước dưới đây: chọn model máy và base firmware tương thích, tick các tính năng muốn có trong bản build, xem cách gửi file vào máy (OTA), cấu hình sách nói TTS tiếng Việt, gán tác vụ cho phím cứng, rồi kéo thả nút chức năng lên màn hình Home và chọn hình chờ. Xong xuôi, xuất file cấu hình JSON gửi cho máy chủ build.
Hai base không dùng chung vì khác phần cứng — chọn đúng model máy trước, hệ thống chỉ hiện base tương thích với model đó. Firmware miễn phí hoàn toàn cho mọi người — ai cũng được build, không bắt buộc donate mới được build. Donate hoàn toàn tự nguyện, tùy tâm (kiểu bát phở, cốc cà phê) để cảm ơn công customize.
1
Chọn model máyMetalio E-Ink 4 hoặc E-ink 4 Plus
2
Chọn base firmwareChỉ hiện base tương thích với model đã chọn
3
Chọn tính năngDanh mục đầy đủ của base + tính năng port / mới để đăng ký
4
Gửi file OTAĐã có trong base & tính năng mới phía server
5
Cấu hình sách nói TTSGiọng đọc mở miễn phí — tính năng đi kèm, chọn giọng & cách chạy
6
Gán phím cứngGán tác vụ cho từng phím vật lý, theo base đang chọn
7
Kéo thả nút & màn hình chờThiết kế màn hình Home và hình nền khi máy ngủ
1Chọn model máy
Bước này quyết định mọi thứ phía sau: tỉ lệ màn hình mô phỏng, chip và base firmware được phép chọn. Flash nhầm model là rủi ro brick máy, nên phải khóa đúng ngay từ đầu.
Metalio E-Ink 4 Màn ngang
Máy nhỏ gọn, màn hình ngang — hợp đọc truyện, manga và sách khổ ngang.
Màn hình3.97 inch · 800 × 480 (ngang)
ChipESP32-S3
Bộ nhớ16MB flash + 8MB PSRAM
Base tương thíchCrossPoint
Metalio E-ink 4 Plus Màn dọc
Máy màn dọc lớn hơn, độ phân giải cao — hợp đọc sách chữ, tài liệu dài.
Màn hình4.7 inch · 684 × 1216 (dọc)
ChipESP32-S31 RISC-V
Bộ nhớ16MB flash + PSRAM
Base tương thíchdpReader v1.3.4-vn
2Chọn base firmware
Đang hiện base cho model bạn đã chọn ở Bước 1.
CrossPoint Mã nguồn mở · MIT
Firmware mã nguồn mở quốc tế cho máy đọc sách ESP32. Giao diện đa ngôn ngữ (đã có tiếng Việt 99,8%), đọc EPUB/TXT, đồng bộ KOReader.
Dành choMetalio E-Ink 4 (ESP32-S3)
Giấy phépMIT — bản build chứa thư viện GPLv3
⚠ Lưu ý trung thực: bản CrossPoint cho model này mới chỉ biên dịch thành công + test trên máy host, chưa kiểm chứng trên máy thật. Tester flash bản này cần sẵn sàng cứu máy bằng BOOT mode.
dpReader v1.3.4-vn Tiếng Việt
Bản Việt hoá chuyên cho Metalio 4 Plus: giao diện tiếng Việt, đồng bộ tiến độ KOSync, thư viện OPDS, lật trang qua Bluetooth.
Dành choMetalio E-ink 4 Plus (ESP32-S31)
Đồng bộKOSync + OPDS + Bluetooth
Lưu ý bản quyền: phần gốc dpReader tới rc93 là Apache-2.0, nhưng phần Việt hoá mới mang giấy phép học tập / cá nhân (LicenseRef-Kiikoread-Personal-Study-1.0) — dùng thương mại cần văn bản cho phép của tác giả Huy Mạnh.
Chọn giao diện dpReader:
3Chọn tính năng cho bản build
Danh sách dưới đây đổi theo base đang chọn ở Bước 2 — hiện tại là CrossPoint. Toàn bộ mục đều lấy từ báo cáo audit source của chính hai base (CrossPoint: 121 tính năng · dpReader: 158 tính năng), không thêm tính năng ngoài báo cáo. Hai nhóm Truyền file và Phím cứng & cử chỉ không lặp lại ở đây vì đã có bước riêng: cách gửi file ở Bước 4, gán phím cứng ở Bước 6, TTS ở Bước 5.
Đọc kỹ ý nghĩa của 3 loại tag trước khi tick: ĐÃ CÓ SẴN = tính năng đã có trong base — tick là bật trong bản build của bạn, bỏ tick là tắt (đã tick sẵn mặc định). PORT TỪ BASE KIA và MỚI — CẦN LÀM = tính năng chưa có trong base này, cần làm thêm — tick ở đây nghĩa là đăng ký muốn có trong bản build của mình, không phải tính năng đã sẵn sàng. Mọi lựa chọn được ghi vào khung tóm tắt và mục features trong file JSON xuất ra.
TOP 10 ĐỀ XUẤT LÀM TIẾP — TỪ BÁO CÁO AUDIT (độ khó và base áp dụng ghi đúng theo báo cáo)
DANH MỤC ĐẦY ĐỦ CỦA BASE ĐANG CHỌN
4Gửi file vào máy (OTA): qua WiFi và qua email
Mục này tách bạch 3 loại để không nhầm: ĐÃ CÓ TRONG BASE dùng được ngay · MỚI — LÀM PHÍA SERVER chưa base nào có, là điểm khác biệt sẽ xây dựng · WISHLIST nhu cầu người dùng đang xin, nguồn gốc của nhóm “mới”. Lựa chọn Email-to-device và email đăng ký ở cuối mục được ghi vào tóm tắt và file JSON giống mục TTS.
Nỗi đau của máy đọc sách mini — đưa được cuốn sách vào máy đang quá lằng nhằng. Máy nhỏ, không có kho sách riêng, nên mỗi lần thêm sách là một lần vật lộn: hoặc phải cắm cáp USB vào máy tính, hoặc phải cho máy và điện thoại/máy tính vào cùng một mạng WiFi rồi mở trình duyệt gõ địa chỉ IP của máy (số IP thay đổi, gõ sai là không vào được). Đang ở ngoài, thấy một file EPUB hay trên điện thoại, muốn đẩy vào máy đọc tiếp — hiện không có cách nào gọn. Đó là lý do tính năng mới Email-to-device ở dưới quan trọng hơn mọi cách gửi hiện có.
A · ĐÃ CÓ TRONG BASE — SO SÁNH THEO TỪNG BASE (đã kiểm chứng từ source của cả hai base)
Cách gửi / nhận file
CrossPoint (E-Ink 4)
dpReader (4 Plus)
Cách dùng & ghi chú đúng bản chất
Web Portal qua WiFi
✓ Có
✓ Có
CrossPoint: mở trình duyệt vào trang của máy để tải file lên — có cả /upload và /download, cùng các trang Files / Fonts / Settings. dpReader: mở http://dpreader.local hoặc địa chỉ IP của máy, tải lên sách TXT/EPUB, font và ảnh. Cả hai đều cần cùng mạng WiFi với máy.
Điểm phát WiFi (Hotspot)
✓ Có
✓ Có
Máy tự phát WiFi để điện thoại/máy tính kết nối trực tiếp vào, khỏi cần router. CrossPoint: chế độ Create Hotspot. dpReader: hotspot ở 192.168.4.1, có mã QR để quét kết nối nhanh.
Calibre không dây
✓ Có
✕ Không có
Chỉ CrossPoint có (CalibreConnectActivity): gửi sách thẳng từ Calibre trên PC qua WiFi vào máy, không phải chép tay từng file. dpReader không có tính năng này.
WebDAV
✓ Có
✕ Không có
Chỉ CrossPoint có: truy cập toàn bộ file trên máy qua mạng bằng WebDAV, như một ổ đĩa mạng. dpReader không có WebDAV.
Thư viện OPDS
✓ Có
✓ Có
Cả hai đều duyệt và tải sách từ thư viện OPDS về máy. dpReader: thư viện kiểu Calibre-Web, máy chủ mặc định sach.vreader.cloud:8443. Đây cũng là đường kỹ thuật để server đẩy sách mới về máy cho tính năng Email-to-device mới ở mục B.
KOSync (đồng bộ tiến độ)
◐ Có — không phải gửi file
◐ Có — không phải gửi file
Cả hai đều có, nhưng phải nói rõ: KOSync chỉ đồng bộ vị trí đang đọc giữa các thiết bị, không gửi được file sách. Đừng tính KOSync là một cách chép sách.
Cắm cáp USB
✓ Có
✓ Có
Cách truyền thống của cả hai base: cắm cáp, chép file như USB. Chắc chắn nhưng bất tiện nhất — chính là cách mà OTA phải thay thế.
Tóm lại phần đã có: mọi cách trên đều cần bạn ở gần máy — hoặc cầm cáp, hoặc cùng một mạng WiFi / điểm phát của máy. Chưa cách nào gửi được sách vào máy từ xa, từ bất cứ đâu.
B · MỚI — LÀM PHÍA SERVER: EMAIL-TO-DEVICE CHƯA BASE NÀO CÓ Từ wishlist của người dùng máy mini
Quan trọng — đọc kỹ: cả CrossPoint lẫn dpReader đều CHƯA có Email-to-device. Đây không phải tính năng trong firmware / file .bin (integrated_in_firmware: false): nó chạy phía server trên chính VPS của dự án — VPS giữ hộp thư riêng, nhận file rồi phân phối về đúng máy qua OPDS / KOSync khi máy bắt WiFi. Địa chỉ mail trên VPS do người vận hành tạo (một địa chỉ mail server trên VPS). Chọn “Muốn có” bên dưới là ghi nhu cầu và email đăng ký vào file JSON để đội làm server xây dựng đúng thứ bạn cần, không phải bật một công tắc có sẵn trong máy.
Gửi qua email — Email-to-device MỚI · SERVER
Kiểu Send-to-Kindle, chạy trên chính VPS của dự án: bạn đăng ký một email gửi sách ngay lúc build firmware, rồi cứ gửi file EPUB đính kèm tới địa chỉ mail trên VPS — VPS tự đối chiếu và phân phối sách về đúng máy của bạn. Không cáp, không cùng WiFi, không gõ IP.
LUỒNG HOẠT ĐỘNG — 4 BƯỚC
Đăng ký email lúc build: mỗi thành viên đăng ký 1 email gửi sách ngay trong mục này (ô nhập bên dưới) — email này đi vào file JSON xuất ra và gắn với đúng bản build / đúng máy của bạn.
Gửi sách qua email: từ chính email đã đăng ký, gửi EPUB đính kèm tới địa chỉ mail trên VPS (địa chỉ do người vận hành tạo trên mail server của VPS).
VPS phân phối về đúng máy: VPS nhận mail, đối chiếu email người gửi với email đã đăng ký lúc build để xác định đúng máy, rồi phân phối sách vào kho riêng của máy đó (đẩy qua OPDS / KOSync).
Sách tự xuất hiện trên máy: sách tự có mặt trong kho của máy để bạn tải về / đọc — không cần cắm cáp, không cần cùng WiFi, không cần gõ IP.
Hiện trạngChưa base nào có — tính năng mới làm phía server trên VPS (integrated_in_firmware: false)
Hợp vớiThấy sách hay trên điện thoại / được bạn gửi sách qua email, muốn nó tự nằm trong máy
VPS sẽ đối chiếu email này với email người gửi mỗi lần nhận sách để biết phải đưa sách về máy nào. Email này được ghi vào file JSON xuất ra. Để trống nếu bạn chọn “Để sau”.
5Sách nói TTS tiếng Việt (thư viện & giọng mở, miễn phí)
Cấu hình này áp dụng cho base bạn đã chọn ở Bước 2 — hiện tại là CrossPoint. Chọn có dùng TTS hay không, giọng đọc, tốc độ và cách chạy. Project này miễn phí hoàn toàn, phi thương mại — firmware free cho mọi người, donate hoàn toàn tự nguyện tùy tâm, không bắt buộc donate mới được build — nên danh sách giọng bên dưới gồm cả các giọng license CC BY-NC, mỗi giọng đều ghi rõ license và điều kiện đi kèm.
Quan trọng — đọc kỹ: cả CrossPoint lẫn dpReader đều KHÔNG có TTS tích hợp sẵn trong firmware. TTS dưới đây là tính năng đi kèm, chạy ở bên ngoài máy đọc sách (trên PC, trên điện thoại qua app LaziBook, hoặc trên server). Firmware chỉ cần có nút “Sách nói (TTS)” trên Home để mở phần nghe — phần tổng hợp giọng nói không nằm trong file .bin.
Về license giọng đọc — đọc trước khi chọn: giọng mặc định là VieNeu-TTS v3 Turbo (Apache-2.0), sạch nhất, không kèm điều kiện NC. Các giọng CC BY-NC (Piper vivos-x_low, VieNeu 0.3B, TiHon-TTS, model VietTTS) chỉ dùng được vì project miễn phí, phi thương mại — nếu sau này project không còn miễn phí hoàn toàn nữa thì phải gỡ các giọng đó. Riêng Piper vi_VN-vais1000-medium vẫn có trong danh sách nhưng kèm cảnh báo riêng: giọng này fine-tune từ giọng Lessac (Blizzard 2013, research-only) dù MODEL_CARD ghi dataset CC BY 4.0 — vấn đề lineage này chưa ngã ngũ về pháp lý (nghiên cứu Loudness.ai, 10/2026, đã loại toàn bộ giọng Piper có lineage Lessac để thận trọng). Giọng Piper còn lại, vi_VN-25hours_single-low, ghi License: Unknown nên không đưa vào ô chọn.
CÁCH CHẠY TTS — CHỌN 1 TRONG 3
1 · Tạo sẵn trên PC Không cần mạng khi nghe
Tạo sách nói sẵn trên PC rồi đồng bộ vào máy. PC chạy engine đã chọn (mặc định VieNeu-TTS v3 Turbo) chuyển từng chương / cả cuốn thành file audio, chép vào máy qua USB / WiFi — sau đó máy chỉ phát lại file có sẵn.
Hợp vớiNghe offline, nghe lâu, không phụ thuộc server
Cần chuẩn bịChạy tạo file trước trên PC, tốn dung lượng lưu audio trên máy
2 · Local trên điện thoại — qua app LaziBook Không cần build app mới
Nghe bằng app LaziBook trên iOS — app có sẵn trên App Store, đã có TTS neural chạy local 100% trên iPhone (30 giọng Việt Turbo / Nano), nên không cần build app mới. Mike đang bàn trực tiếp với Phạm Hưng (tác giả LaziBook) để tích hợp thêm module KoSync vào LaziBook, cho đồng bộ 2 chiều với máy đọc sách: điện thoại đọc tới đâu, máy đọc sách chạy chữ tới đó.
Hợp vớiMuốn nghe ngay chương đang đọc, mang theo người, nghe tiếp khi khóa màn hình
Trạng tháiApp LaziBook dùng được ngay · module KoSync đang bàn để tích hợp — chưa phải tính năng đã có sẵn trong LaziBook
3 · Qua server VPS Chạy trên server
Chạy qua server VPS. Máy gửi nội dung chương lên VPS, server chạy engine đã chọn tổng hợp giọng Việt rồi trả audio về.
Đã kiểm chứng kỹ thuậtPiper vi_VN-vais1000-medium (~60 MB) · tổng hợp ~2,7 giây audio trong ~2 giây · server ~200 MB RAM — đây là số liệu test kỹ thuật đã đo thật trên VPS của dự án; giọng này kèm cảnh báo lineage Lessac ở đầu mục
Cần chuẩn bịCó mạng khi cần tạo audio mới · đây là phần chạy trên server, không phải tính năng trong firmware
Chi tiết license, dung lượng và lưu ý của giọng đang chọn hiện ngay bên dưới. Giọng mặc định là VieNeu v3 Turbo — Minh Quân vì license Apache-2.0 sạch nhất.
Tốc độ này được ghi vào JSON để PC / điện thoại / VPS tổng hợp hoặc phát theo đúng lựa chọn của bạn.
Nghe local trên điện thoại: dùng luôn app LaziBook, không cần build app mới. LaziBook (App Store, miễn phí) đã có TTS neural chạy local 100% trên iPhone — 30 giọng Việt, mỗi giọng 2 bản: Turbo (48 kHz, cần iPhone 13 / iPhone SE thế hệ 3 trở lên) và Nano (nhẹ, chạy mọi máy; app tự chuyển sang Nano khi máy nóng, bật tiết kiệm pin hoặc khóa màn hình). Theo trang App Store, giọng được tạo ngay trên iPhone/iPad — không cần internet, không tài khoản, không quảng cáo; app đọc tiếp khi khóa màn hình, có điều khiển trên màn hình khóa / Dynamic Island / tai nghe, và tự tạo giọng riêng từ 5–8 giây ghi âm xử lý ngay trên máy. App nặng 664,1 MB, cần iOS 16.4+. Phần còn thiếu là đồng bộ với máy đọc sách: Mike đang bàn trực tiếp với Phạm Hưng (tác giả LaziBook) để tích hợp thêm module KoSync vào LaziBook — đồng bộ 2 chiều, LaziBook đọc tới đâu máy đọc sách chạy chữ tới đó và ngược lại; trạng thái trung thực là đang bàn / đang tích hợp, chưa phải tính năng đã phát hành, và khi chọn cách chạy 2 file JSON sẽ ghi rõ trạng thái này. Lưu ý: LaziBook không công bố engine bên trong và không có API cho bên thứ ba — không lấy giọng của LaziBook về dùng cho Metalio được; LaziBook là chuẩn tham khảo về trải nghiệm nghe và là đường nghe local ở cách chạy 2. Nguồn: trang App Store của LaziBook.
Chưa đưa vào ô chọn (kèm lý do): Piper vi_VN-25hours_single-low — License: Unknown, không có căn cứ để dùng. Kokoro-Vietnamese (giọng Diễm Trinh, 14 voicepack) — trang HuggingFace không hiển thị trường license, mới có nguồn thứ cấp nói Apache-2.0, chưa xác minh đủ. XTTS v2 / viXTTS — license CPML và hãng Coqui đã đóng cửa, không còn đường xin phép rõ ràng. F5-TTS — weights CC BY-NC và không có tiếng Việt chính thức. Fish Speech S2 Pro — license chỉ cho nghiên cứu. Zonos, IndexTTS-2.5, Kokoro bản gốc — không hỗ trợ tiếng Việt. Chất lượng tiếng Việt thực tế của Supertonic 3, VietVoice và VieNeu v3 Turbo chưa có benchmark độc lập — cần nghe thử cùng một đoạn văn (thanh điệu, tên riêng, số) trước khi chốt giọng chính thức. Dung lượng file của VieNeu v3 Turbo cũng chưa xác minh được con số (chỉ biết ~100M tham số).
6Gán phím cứng trên máy
Có — cả hai base đều gán được chức năng cho phím vật lý trên máy, nhưng danh sách phím và tác vụ gán được khác nhau theo base đang chọn ở Bước 2 (hiện tại: CrossPoint). Từng phím dưới đây đều ghi rõ thuộc nhóm nào — phím mặt trước, phím bên, nút nguồn hay nút AI — kèm ô chọn tác vụ cho từng kiểu bấm mà base đó hỗ trợ. Mọi lựa chọn được ghi vào khung tóm tắt và file JSON xuất ra, giống các mục trước.
dpReader (Metalio E-ink 4 Plus) có 7 phím cứng, gán trong mục “Phím cứng & Cử chỉ” của firmware: nút AI, âm lượng + / −, nút nguồn và 3 phím cảm ứng mặt trước (trái / giữa / phải). Mỗi phím gán được cả bấm nhanh lẫn nhấn giữ, chọn trong danh sách 11 tác vụ. Hai ngoại lệ cần nhớ: nút nguồn chỉ có đúng 3 lựa chọn (menu thao tác nhanh / lật trang khi đọc / khóa màn hình — không có Ngủ), và nút AI dùng danh sách tác vụ riêng của nó trong firmware.
CrossPoint (Metalio E-Ink 4): 4 nút mặt trước (Back / Confirm / Left / Right) đổi vai cho nhau được và chọn được bố cục (layout) của hàng nút; 2 nút bên Up / Down gán lật trang trước / sau, tắt, hoặc gán cả hai cùng một chiều để đọc một tay; nút Home gán riêng cho 3 kiểu bấm (bấm nhanh / bấm đúp / nhấn giữ), mỗi kiểu chọn 1 trong 12 tác vụ; nút nguồn bấm nhanh có 10 lựa chọn — gồm cả Tắt máy (Ngủ). Lưu ý đã kiểm chứng: Ngủ chỉ gán được cho nút nguồn — phím mặt trước của cả hai base đều không gán được Ngủ.
Đọc một tay: chỉ cần chọn cùng một chiều lật trang (Trang trước hoặc Trang sau) cho cả hai nút bên Up và Down — cả hai nút sẽ lật cùng chiều.
7Kéo thả nút chức năng & màn hình chờ
Kéo nút từ bảng bên trái thả lên màn hình máy (trên điện thoại: chạm vào nút trong bảng để thêm vào màn hình). Kéo nút đã đặt để đổi vị trí. Bấm vào nút trên màn hình để đổi tên, đổi icon hoặc xoá.
BẢNG NÚT CHỨC NĂNG — kéo hoặc chạm để thêm
Mỗi nút thêm vào sẽ xuất hiện trên màn hình mô phỏng và được ghi vào file JSON khi xuất cấu hình, kèm vị trí % theo chiều ngang / chiều dọc.
Nút mới — Tắt máy (Ngủ): cho máy ngủ (màn hình tắt, chế độ chờ — không phải tắt hẳn / shutdown hoàn toàn). Khả thi theo base đã kiểm chứng từ source: CrossPoint — dùng được, gán qua nút nguồn (bấm nhanh nút nguồn có lựa chọn SLEEP; riêng các nút mặt trước của CrossPoint thì không có lựa chọn Ngủ). dpReader — tính năng cần thêm: hiện chưa gán được cho phím cứng (danh sách gán chỉ có lật trang, toolbar, về Home, full refresh, đèn, KOSync, menu… — không có Ngủ; nút nguồn chỉ khóa màn hình hoặc lật trang), máy ngủ sâu qua màn hình khóa / menu.
METALIO E-INK 4 · 800 × 480
09:41CrossPoint▰▰▰▱ 82%
Đang đọc: Thiếu Gia Bị Bỏ Rơi
Chương 128 · Đã đọc 38%
Chưa có nút nào. Kéo nút từ bảng bên trái vào đây, hoặc chạm vào nút trong bảng để thêm.
File JSON này là file cấu hình gửi cho máy chủ build — chứa model máy, base firmware, danh sách tính năng đã chọn ở Bước 3 (mục features: từng tính năng kèm trạng thái đã có sẵn / port / mới và đã chọn hay chưa), lựa chọn gửi file OTA (Email-to-device phía server + email gửi sách đã đăng ký), cấu hình TTS (giọng đọc & license, tốc độ, cách chạy), gán phím cứng theo base, hẹn giờ tự động đổi hình chờ và danh sách nút kèm vị trí. Trang này chỉ để thiết kế & xem trước, chưa tự build ra file .bin.
TÓM TẮT BẢN THIẾT KẾ
Model máy
—
Base firmware
—
Tính năng đã chọn (Bước 3)
—
Giao diện
—
Gửi file OTA — đã có trong base
—
Gửi file OTA — mới, làm phía server
—
Sách nói TTS
—
Cách chạy TTS
—
Giọng / tốc độ TTS
—
Gán phím cứng
—
Tự động đổi hình chờ
—
Số nút đã đặt
0 nút
Màn hình mô phỏng
—
CHỈNH NÚT ĐÃ CHỌN
Chưa chọn nút nào trên màn hình. Bấm vào một nút trên màn hình máy để sửa tên / icon tại đây.
—
XEM TRƯỚC JSON SẼ XUẤT
{}
MÀN HÌNH CHỜ / NGỦ — HÌNH NỀN KHI MÁY ĐANG NGỦ
Thực trạng đã kiểm chứng từ source — hai base đang khác nhau và cả hai đều CHƯA có đổi hình chờ theo giờ hẹn trong lúc máy đang ngủ: CrossPoint hiện chọn NGẪU NHIÊN 1 ảnh trong thư mục sleep mỗi lần máy vào ngủ — tức hình chỉ đổi theo từng lần ngủ, không có hẹn giờ. dpReader thì hình nền màn hình khóa cố định cho tới khi người dùng tự vào cài đặt đổi. Lựa chọn hẹn giờ bên dưới vì thế là tính năng mới cần làm, không phải tính năng đã có sẵn trong base nào.
Tự động đổi hình chờ MỚI — TÍNH NĂNG CẦN LÀM
Hẹn giờ để máy tự đổi hình nền màn hình chờ ngay trong lúc đang ngủ, không cần bạn mở máy hay vào ngủ lại. Cách làm: đồng hồ RTC đánh thức máy định kỳ theo khoảng giờ đã chọn, máy vẽ lại hình chờ mới (lấy tiếp ảnh trong thư mục sleep / kho ảnh nền) rồi ngủ tiếp ngay — mỗi lần đổi chỉ thức vài giây nên tốn rất ít pin.
Hiện trạngChưa base nào có — tính năng mới cần làm (đánh thức bằng RTC), không có sẵn trong CrossPoint / dpReader
Ảnh nguồnThư mục sleep (CrossPoint) / kho ảnh nền màn hình khóa (dpReader) — máy lấy lần lượt / ngẫu nhiên các ảnh bạn đã chép vào
Tester cần biết trước khi flash
Trang này giúp bạn và tester thống nhất bố cục trước khi build. Khi nhận file JSON, máy chủ build sẽ build đúng theo model + base đã khóa trong file — không build chéo giữa hai model.
E-Ink 4 + CrossPoint và 4 Plus + dpReader là hai đường riêng, không thay thế cho nhau.
TTS không có sẵn trong firmware của cả hai base — tester đừng tìm mục TTS trong menu firmware. Muốn nghe sách nói phải dùng đúng cách đã chọn ở Bước 5 (file tạo sẵn trên PC, app LaziBook trên điện thoại — module KoSync đang tích hợp, hoặc server VPS) và cần có nút “Sách nói (TTS)” trên Home nếu muốn mở nhanh.
Gửi sách qua email (Email-to-device) chưa có trong base nào — tester đừng tìm mục này trong menu firmware hay Web Portal. Đây là tính năng làm phía server trên VPS (hộp thư nhận EPUB, đối chiếu email người gửi với email đã đăng ký lúc build, phân phối về đúng máy qua OPDS/KOSync); lựa chọn và email đăng ký ở Bước 4 chỉ ghi vào JSON. Các cách đã có (Web Portal, hotspot, OPDS, USB — và riêng CrossPoint có thêm WebDAV + Calibre không dây) đều cần ở gần máy hoặc cùng WiFi.
Nút “Tắt máy (Ngủ)” là cho máy ngủ (màn hình tắt, chờ), không phải tắt hẳn. CrossPoint gán được qua nút nguồn (bấm nhanh có lựa chọn SLEEP; nút mặt trước không có Ngủ). dpReader chưa gán được — máy ngủ sâu qua màn hình khóa / menu, nên với base này đây là tính năng cần thêm.
Gán phím cứng có sẵn ở cả hai base nhưng khác hẳn nhau: dpReader có 7 phím (gồm 3 phím cảm ứng mặt trước trái / giữa / phải), mỗi phím gán bấm nhanh + nhấn giữ trong 11 tác vụ — riêng nút nguồn chỉ có 3 lựa chọn và nút AI có danh sách tác vụ riêng. CrossPoint thì 4 nút mặt trước đổi vai cho nhau + chọn layout, 2 nút bên gán lật trang / tắt / cả hai cùng chiều, nút Home gán 3 kiểu bấm × 12 tác vụ, nút nguồn bấm nhanh 10 lựa chọn gồm Ngủ.
Tự động đổi hình chờ theo giờ hẹn chưa có ở base nào — đừng tìm mục hẹn giờ đổi hình trong firmware. CrossPoint hiện chỉ chọn ngẫu nhiên 1 ảnh trong thư mục sleep mỗi lần máy vào ngủ; dpReader giữ hình nền màn hình khóa cố định cho tới khi người dùng tự đổi. Hẹn giờ đổi hình mỗi 3 / 4 / 6 giờ là tính năng mới cần làm (RTC đánh thức định kỳ, vẽ lại hình chờ rồi ngủ tiếp); lựa chọn ở Bước 7 chỉ ghi nhu cầu vào JSON.
Tính năng tag PORT / MỚI ở Bước 3 chưa có trong firmware — tester đừng tìm chúng trong menu máy. Tick chọn ở Bước 3 nghĩa là đăng ký muốn có trong bản build; chỉ các mục tag ĐÃ CÓ SẴN mới là tính năng bật/tắt được ngay trong base.
Firmware miễn phí hoàn toàn — tester và người dùng không phải trả bất cứ khoản nào để được build; donate là tự nguyện tùy tâm.
Xem trước ở đây là giao diện sáng kiểu e-ink (trắng / đen) — đúng bản chất màn hình, không phải giao diện màu của điện thoại.
Muốn đổi ý, cứ kéo thả lại rồi xuất JSON mới — file mới nhất là file dùng để build.