iCopy-X v1.1.5 Released
Firmware v1.1.5 is out for the open-source iCopy-X, with work from Vost02 and quantum-x. The release updates the bundled Proxmark client, fixes the real-time clock so the device keeps and reports the correct time, adds Simplified Chinese, and extends translation coverage from the core UI into plugin screens. Grab it from the v1.1.5 release page.
Notable changes
Proxmark client
- Bumped the Proxmark client to v4.23346.
Localisation
- Added a Simplified Chinese (
zh) language pack covering every key in the English pack, using the bundled CJK font. - Added plugin translation, with each plugin shipping its own
lang/<code>.jsonpack and falling back to the core pack and then to English. - Added French, Chinese and English packs for all fourteen bundled plugins (329 strings), including messages that plugins compose at runtime.
- Added twenty shared soft-key labels (Again, Confirm, Menu, Next, Prev, Done, Exit, Select, Skip, Continue, Load, Set, Add, Add More, Clone, Detect, Recover, Backup, Single, Range) to the core packs so plugins need no per-plugin entry for them.
- Added
tools/plugin_i18n.pywithextract,fillandcheckcommands for scaffolding and verifying plugin packs, withcheckrun over the bundled plugins in the test suite. - Fixed the Plugins submenu title staying in English by taking it from the existing
pluginsresource key. - Changed the plugins menu and promoted main-menu entries to show localised plugin names and to re-localise on resume.
Quality of Life
- Fixed the RTC write protocol, so saving in Time Settings now sends the GD32
giveyoutimeframe and actually updates the clock. - Added a boot-time read of the GD32 RTC that sets the Linux system clock, replacing the fixed 2016-02-11 start date and correcting recorded file timestamps.
- Changed
rtc_syncto log failures through the logger instead of writing a file to the user partition, with the boot call guarded so a failure cannot stop the app starting. - Fixed plugin button labels being drawn twice on
ui.json-driven screens by leaving the button bar to the framework. - Fixed inactive plugin buttons being painted over as active, so a button marked inactive now renders dimmed and its key is gated.