Thứ Bảy, 14 tháng 12, 2013

[Hướng dẫn] Hack firmware tiếng Việt cho Pebble Smartwatch

2277991_IMG_3921.
Dạo gần đây mọi người có vẻ săn lùng cái đồng hồ thông minh Pebble SmartWatch này dữ dội, không chỉ ở Vietnam mà ở nước ngoài, chiếc đồng hồ thông minh này liên tục cháy hàng, hiện giờ ai muốn đặt mua đều phải chờ hơn 1 tháng nữa mới có. Về mặt chức năng thì khỏi phải bàn, các bạn có thể coi lại bài Review của Sonlazio về Pebble Smartwatch tại đây. Bài này sẽ hướng dẫn các bạn up firmware tiếng Việt vào chiếc đồng hồ này.

Chiếc đồng hồ này làm được khá nhiều trò:
  • Nhận notifies từ smartphone ( iOS, Android đều được )
  • Cài đặt ứng dụng lên đồng hồ
  • Coi giờ với hàng ngàn kiểu mặt đồng hồ khác nhau ( dĩ nhiên đồng hồ không coi giờ thì coi gì :D
  • Dung lượng Pin lên tới 7 ngày sử dụng liên tục
Tuy nhiên có một vấn đề với chiếc đồng hồ này là nó hiện chỉ hỗ trợ tiếng Anh, các ngôn ngữ khác hoàn toàn không, tức là không có tiếng Hoa, Nga, Nhật, Hàn, Mã Lai, Miến Điện, ... etc gì hết ráo và dĩ nhiên là cả tiếng Việt. Giới hạn này đem đến một vài điều khó chịu khi nhận các notification trên Pebble ( coi hình hiểu liền )

IMG_3949.JPG
Pebble bị lỗi không hiển thị tiếng Việt

Lý do tại sao Pebble bị lỗi Tiếng Việt ?

Vấn đề này tôi đã có một số thư từ trao đổi với Pebble Dev team, họ hồi đáp giải thích đại ý rằng: Bộ nhớ trong của Pebble là rất ít chỉ khoảng 1024KB, nên không đủ khích thước để mà chứa toàn bộ bộ font Unicode và hơn nữa, cấu trúc màn hình e-paper của Sharp không phù hợp hiển thị các font dạng vector ( tuyến tính ) mà chỉ có thể hỗ trợ tốt nhất hiển thị các font dạng Bitmap ( hình ảnh ) vốn có kích thước lớn hơn nhiều. Do đó nên Pebble Dev team quyết định chỉ hỗ trợ bộ font Latin chuẩn tức bộ font ngôn ngữ tiếng Anh. Tóm lại là do giới hạn phần cứng nên phần mềm không hỗ trợ ( trên lý thuyết )

Vấn đề này phải giải quyết làm sao ?

Có một số hướng, trong đó hướng tôi thấy khả quan nhất là Hack Firmware, sau khi thử nghiệm vài lần thì kết quả khá mỹ mãn, tiếng Việt hiện đầy đủ và chất lượng như chính Pebble hỗ trợ tiếng Việt vậy ( xem hình hiểu luôn :D )

IMG_3921.JPG
Pebble sau khi hack firmware tiếng Việt

Cách làm ?

Đơn giản lắm, bạn phải tải firmware mới nhất về, unpack nó ra, phân giải ngược gói .pbpack chứa các font dạng Bitmap, lấy một font có hỗ trợ tiếng Việt ( ví dụ Arial ) rồi trích xuất các kí tự tiếng Việt ( do không thể dùng hết nguyên file thì quá lớn ), chuyển các kĩ tự thành hình ảnh bitmap rồi nhét vô một file .pfo là file font của Pebble rồi thay thế các font trong gói resource rồi đóng gói lại file resource lại rồi cuối cùng là đóng gói lại file firmware.

Nhiều công đoạn nhờ :p

Dĩ nhiên các bước trên nếu để bạn tự làm thì bạn cần là một gã geek dư thời gian và có dư kinh nghiệm vì các bước trên cần khá nhiều kiến thức kỹ thuật phức tạp

Để nhanh hơn cho bạn, tôi đã làm sẵn và đóng gói thành một bản hack firmware Tiếng Việt, bạn chỉ việc cài vào Pebble là xong

Chú ý: đây là bản firmware tôi làm dựa trên bản firmware 1.13.1 và phần cứng EV2_4 ( các máy Kichstarter Edition ), vì phiên bản này được dùng nhiều nhất. Các máy có phiên bản hardware version là v1.5 ( coi trong About ), thì cần chờ khoảng 1 tuần nữa khi con Pebble mới mà tôi ship về tới Việt Nam, thì tôi sẽ làm một bản firmware phù hợp cho phiên bản phần cứng này

Cách cài đặt Pebble firmware hacked Vietnamese

1. Kết nối Pebble với điện thoại smartphone
2. Dùng điện thoại smartphone truy cập link sau https://app.box.com/XNOHAT-pebble-Firmware-VN-v113
3. Bấm download để tải file về
4. Đối với iOS click chọn Open in Pebble để mở bằng Pebble, đối với Android thì click vô file pbz mơi tải về và chọn Pebble là chương trình mở
5. Click chọn Update Firmware và chờ Pebble thực hiện Flash firmware hacked này

Sau khi Pebble tải khởi động lại thì Pebble của bạn đã có thể đọc tiếng Việt ngon lành

Chúc bạn may mắn,

Ghi chú: Tuy việc update firmware là rất an toàn do nếu lỗi thì có thể vô recovery mode và flash firmware lại. Nhưng theo thông lệ của giới hacker, tôi từ chối chịu trách nhiệm đối với các hướng dẫn trên đây trong trường hợp bất trắc xảy ra làm thiết bị của bạn ngưng hoạt động