Learn to read Xiaomi HyperOS version codes like OS3.0.303.0.WOJMIXM, identify your ROM region (Global, EEA, India, Indonesia, China) and switch safely.

Xiaomi ROM Region Codes Explained (MIXM, EUXM, INXM) & How to Switch

Last updated: November 9, 2026. Every Xiaomi, Redmi and POCO phone shows a version string like OS3.0.303.0.WOJMIXM in its settings. It tells you the HyperOS version, the Android version, the device and, most importantly, the ROM region. You need the region before you download firmware: a ROM for the wrong region will not install as an update. This guide explains how to read the code, how to check it with ADB and Fastboot, how to spot a China phone sold as “Global”, and how to change region without bricking your phone.

Need firmware for your phone? Find official HyperOS Recovery and Fastboot ROMs for Xiaomi, Redmi and POCO devices, for every region: Xiaomi firmware download.

Anatomy of a HyperOS Version Number

Let’s take OS3.0.303.0.WOJMIXM, a real build for the POCO X7 Pro (rodin), and split it into parts:

PartExampleMeaning
Prefix + major versionOS3.0HyperOS 3. OS1 and OS2 are HyperOS 1 and 2, OS4 is HyperOS 4.
Build number303.0Release counter. Within the same device and region, a higher number means a newer build.
1st letterWAndroid version the build is based on (W = Android 16).
2nd–3rd lettersOJDevice code. OJ is rodin, sold as POCO X7 Pro and, in China, as Redmi Turbo 4.
4th–5th lettersMIROM region (MI = Global).
Last lettersXMXiaomi retail build, not tied to a carrier.

Wikipedia’s HyperOS article describes the same structure: one letter for Android, two for the device, two for the region and two for the operator, or “XM” when the build is not carrier-specific. One more example: OS4.0.1.0.XPCEUXM is HyperOS 4, Android 17 (X), Xiaomi 17 “pudding” (PC), EEA region (EU).

All regional versions of the same hardware share one device code: the China build for rodin is OS3.0.305.0.WOJCNXM, with the same OJ.

Android version letters

The first letter after the dot follows the Android version in alphabetical order. We checked this mapping against the android field of every entry in the XiaomiFirmwareUpdater tracker data:

LetterAndroidLetterAndroid
XAndroid 17RAndroid 11
WAndroid 16QAndroid 10
VAndroid 15PAndroid 9
UAndroid 14OAndroid 8.0 / 8.1
TAndroid 13NAndroid 7.0 / 7.1
SAndroid 12M / L / KAndroid 6 / 5 / 4.4

The HyperOS number and the Android letter are separate. A phone can run HyperOS 3 on Android 15 (for example OS3.0.5.0.VLLMIXM) or on Android 16 (W). Xiaomi 17 phones even had HyperOS 3 builds on Android 17 (OS3.0.337.0.XPCMIXM).

The old MIUI format

MIUI used the same letter code, but with a V + MIUI version prefix. Example: V14.0.4.0.TKWTRXM is MIUI 14, Android 13 (T), Xiaomi 11T “agate” (KW), Turkey ROM (TR). Some phones that moved from MIUI to HyperOS kept their old Android letter at first. The POCO F3 “alioth” got OS1.0.5.0.TKHMIXM, which is HyperOS 1 on Android 13. Some entry-level Redmi A models use an A15.x prefix instead of OS (for example A15.0.18.0.VGWEUXM). The letter code at the end works the same way.

“Stable Beta” and Pilot builds

Xiaomi rolls out updates in stages. The first wave goes to a limited group of users, often called a Pilot release. Trackers such as XiaomiFirmwareUpdater label these builds Stable Beta and move them to Stable once the rollout widens. The version string itself looks the same, and a Stable Beta ZIP of your own region usually installs fine as a manual update.

Xiaomi ROM Region Codes

SuffixRegionFastboot ROM name patternNotes
MIXMGlobalrodin_globalMost markets without their own ROM, including Latin America
EUXMEEA (Europe)rodin_eea_globalBuilt for EU rules
INXMIndiarodin_in_global
IDXMIndonesiarodin_id_global
RUXMRussiarodin_ru_global
TRXMTurkeyrodin_tr_global
TWXMTaiwanrodin_tw_global
JPXMJapan<codename>_jp_globalOnly some models
KRXMSouth Korea<codename>_kr_globalRare (e.g. Redmi Note 12 Pro “ruby”)
CNXMChinarodin (no suffix)No Google services by default

In the current tracker data we did not find any separate Latin America (“LM”) code. Phones sold in Brazil and the rest of Latin America generally run the Global ROM. Not every model gets every region, so check your device page in our firmware hub. The POCO X7 Pro page, for example, lists all regions side by side.

Other endings than XM. A few builds use different last letters. Examples: INFK and INRF on some older Indian variants, and MIDM / IDDM on a few recent models. Xiaomi does not publicly document what these mean. They are separate variants, often tied to a sales channel or carrier, so only install them on phones that already run them.

How to Check Your Phone’s Region

1. Settings

Open Settings → About phone and tap the HyperOS version card. The full string, like OS3.0.303.0.WOJIDXM, is shown there. Read the 4th and 5th letters after the build number.

2. ADB (more reliable)

Enable USB debugging, install ADB and Fastboot platform tools and run:

adb shell getprop ro.product.mod_device
adb shell getprop ro.build.version.incremental
adb shell getprop ro.build.fingerprint
  • ro.product.mod_device returns the ROM variant, for example rodin_global, rodin_eea_global or rodin_in_global. A China ROM returns the bare codename with no _global suffix. This property is the usual check mentioned on XDA and xiaomi.eu.
  • ro.build.version.incremental and ro.build.fingerprint show the real build. They should match what Settings says.
  • ro.miui.region is often confused with the ROM region. In published property dumps it holds a country code (for example GR), not the ROM type, so don’t rely on it.

3. Fastboot

Boot into Fastboot (Power + Volume Down) and run:

fastboot getvar product
fastboot getvar anti

product returns the hardware codename (for example rodin). Use it to make sure the Fastboot ROM is meant for your hardware. anti returns the anti-rollback index, which is explained below.

How to Spot a China Unit or a “Fake Global” Phone

Some online sellers flash China phones with a Global ROM, or with a modified “fake Global” ROM, and sell them as Global units. Warning signs:

  • The version string in Settings cannot be found on any official firmware list. One XDA case showed “MIXM” in Settings, while ro.build.version.incremental revealed a non-existent V816.0.2.0.ULJSZXM build.
  • OTA updates never arrive, Google Play reports “device not certified”, or binding the phone in Mi Unlock Status fails.
  • A brand-new phone shows an unlocked bootloader (an “unlocked” warning on the boot screen).
  • The model number on the box or under Settings → About phone → Detailed info ends in C. Xiaomi usually uses C for China models, G for Global and I for India, e.g. Xiaomi 17 25113PN0EC vs 25113PN0EG.
  • Xiaomi’s official IMEI/serial verification page does not recognize the phone. According to MIUIROM, it only checks international units.

The hardware stays a China unit even when it runs a Global ROM, which matters for unlocking and re-locking.

How to Change Region Safely

Changing region means flashing a Fastboot ROM of another region. You cannot do it with an OTA or a Recovery ZIP. Before you start, check these requirements:

  1. Unlocked bootloader. On Global, EEA, India and other international units, follow our HyperOS bootloader unlock guide. Xiaomi’s bootloader FAQ says the global unlock program is only for non-Mainland China devices and accounts registered outside Mainland China. China units can no longer be unlocked through the official route from outside China. Reports on XimiTime say the Mi Unlock tool rejects them with a region-mismatch error.
  2. Back up everything. A Fastboot flash with Clean all erases the phone.
  3. Check anti-rollback. Compare fastboot getvar anti with the CURRENT_ANTI_VER value in flash_all.bat inside the Fastboot ROM. If the ROM’s value is lower than the phone’s, do not flash it. The XDA anti-rollback explainer notes that Fastboot/Mi Flash normally reject such a ROM, but forcing it (for example via a custom recovery) can hard-brick the phone. This risk is highest when the target region’s newest build is older than what you run now, for example when China already has a newer Android version than Global.
  4. Match the hardware. fastboot getvar product must match the codename in the ROM’s file name (rodin_eea_global_images_... is for rodin).
  5. Flash with the latest Mi Flash Tool and select Clean all.

Never choose “Clean all and lock” (flash_all_lock.bat) when the ROM region does not match the region the phone was sold for, such as Global on a China unit. Re-locking a mismatched phone can leave it unable to boot, and recovery then usually requires an authorized service center with EDL access.

What you gain or lose by switching

  • EEA vs Global: EEA builds are made to comply with EU rules, including stricter rules on advertising and privacy (Wikipedia). Users often report fewer ads in system apps on EEA, but this varies by build, so treat it as a tendency, not a guarantee. EEA and Global ROMs have shipped Google Phone and Google Messages instead of Xiaomi’s own apps since 2020 (XDA). The same report said India and Indonesia were excluded at the time. Built-in call recording therefore depends on the region and the app.
  • Ads (MSA): Global and India ROMs show recommendations and ads in some system apps. Xiaomi Community has an official guide on disabling them: revoke msa under Authorization & revocation, then turn off personalized ads and the per-app “recommendations”. A region change is not needed for that.
  • Updates: regions get builds at different times, so switching does not guarantee faster updates. Region-specific apps and features may also disappear.

FAQ

Can I install a Global Recovery ZIP on an Indonesia (IDXM) phone?

No. The built-in updater only accepts ZIPs of the same region and device, so the install will fail verification. To change region, use a Fastboot ROM on an unlocked bootloader.

Does changing the region in Settings change my ROM?

No. Settings → Additional settings → Region only changes the country used by apps and services. The ROM region (MI, EU, IN…) only changes when you flash a different Fastboot ROM.

Is MIXM better than INXM or IDXM?

Not in general. These builds share the same base and differ in preinstalled apps, local features and release timing. Stay on the region your phone was sold with unless you have a specific reason to switch.

Will relocking the bootloader after a region change restore my warranty?

Only relock if the installed ROM matches the phone’s original region. On a mismatched region, relocking is the most common way to turn a working phone into a brick.