CFW ZipV3 Format

From Joey's Wiki
Jump to navigation Jump to search

ZIPv3 is a format for CFW/Custom Firmware files created by ScooterHacking.

This new format was introduced to address limitations with older firmware packaging methods that relied solely on scooter models for compatibility. Due to hardware changes by Xiaomi (using GD32 chips) and Ninebot (using AT32 chips), the same scooter model could have different internal components.

ZIPv3 improves upon previous formats (ZIPv2) by:

  • Increased Granularity: Includes a list of compatible boards and chips in addition to the scooter model, ensuring greater accuracy in determining firmware compatibility.
  • Enhanced Safety: Provides apps and firmware providers with a standardized way to create and use firmware packages, reducing the risk of incompatibility issues.
  • Future-Proofing: Uses JSON instead of TXT for improved data handling and flexibility for future updates.

More on this format is available from ScooterHacking's Wiki: https://wiki.scooterhacking.org/doku.php?id=zip3

Files

A valid ZIPv3 file contains these files:

FIRM.bin Plain firmware file, not encrypted.

Only to be included if the encryption key inside info.json is set to plain or both.

FIRM.bin.enc Encrypted firmware file (using Xiaomi-Ninebot's TEA)

Only to be included if the encryption key inside info.json is set to encrypted or both.

params.txt Optional. Text file containing a summary of patched parameters in the firmware.

Making ZIPv3 Files

ScooterHacking provides code to create your own ZIPv3 CFW packages on their GitHub: https://github.com/scooterhacking/fw-zip-package-v3