Download Redmi 12 Firmware

Xiaomi Redmi 12 4G

Official Redmi 12 firmware (codename fire) includes stable versions of HyperOS and MIUI. They can be downloaded as Fastboot ROM, Recovery ROM, and OTA updates.

Phone models: 23053RN02A (Global), 23053RN02I (India), 23053RN02L (Latin America). All files are original stock Xiaomi ROMs, freely available from miui.com. We simply provide direct download links to official flash files and system updates.

Model nameRedmi 12
Release dateJune 2023
SupportActive until June 2027
Current OSHyperOS 2, Android 15
Upcoming HyperOS 3

Global HyperOS 2.0.5.0.VMXMIXM

The latest Global firmware version for Redmi 12 by Xiaomi:

Recovery ROM

Version
2.0.5.0.VMXMIXM
OS
HyperOS 2
Android
Android 15
Release date
2025-04-11
File size
4.54 GB
Official Link
Download (.zip)
Changelog
Expand list

Fastboot ROM

Version
2.0.5.0.VMXMIXM
OS
HyperOS 2
Android
Android 15
Release date
2025-03-31
Flash file size
7.06 GB
Official Link
Download (.tgz)

OTA Update

Version
2.0.5.0.VMXMIXM
File size
858.89 MB
Apply for
2.0.4.0.VMXMIXM
Official Link
Download (.zip)

Europe HyperOS 2.0.6.0.VMXEUXM

The latest European firmware version for Redmi 12 by Xiaomi:

Recovery ROM

Version
2.0.6.0.VMXEUXM
OS
HyperOS 2
Android
Android 15
Release date
2025-05-09
File size
4.64 GB
Official Link
Download (.zip)
Changelog
Expand list

Fastboot ROM

Version
2.0.6.0.VMXEUXM
OS
HyperOS 2
Android
Android 15
Release date
2025-04-25
Flash file size
6.73 GB
Official Link
Download (.tgz)
Changelog
Expand list

OTA Update

Version
2.0.6.0.VMXEUXM
File size
1.30 GB
Apply for
2.0.4.0.VMXEUXM
Official Link
Download (.zip)

India HyperOS 2.0.4.0.VMXINXM

The latest Indian firmware version for Redmi 12 by Xiaomi:

Recovery ROM

Version
2.0.4.0.VMXINXM
OS
HyperOS 2
Android
Android 15
Release date
2025-04-27
File size
4.40 GB
Official Link
Download (.zip)
Changelog
Expand list

Fastboot ROM

Version
2.0.4.0.VMXINXM
OS
HyperOS 2
Android
Android 15
Release date
2025-04-16
Flash file size
5.79 GB
Official Link
Download (.tgz)
Changelog
Expand list

OTA Update

Version
2.0.4.0.VMXINXM
File size
1.21 GB
Apply for
2.0.3.0.VMXINXM
Official Link
Download (.zip)

Indonesia HyperOS 2.0.4.0.VMXIDXM

The latest Indonesian firmware version for Redmi 12 by Xiaomi:

Recovery ROM

Version
2.0.4.0.VMXIDXM
OS
HyperOS 2
Android
Android 15
Release date
2025-05-10
File size
4.55 GB
Official Link
Download (.zip)
Changelog
Expand list

Fastboot ROM

Version
2.0.4.0.VMXIDXM
OS
HyperOS 2
Android
Android 15
Release date
2025-04-25
Flash file size
6.46 GB
Official Link
Download (.tgz)
Changelog
Expand list

OTA Update

Version
2.0.4.0.VMXIDXM
File size
1.32 GB
Apply for
2.0.3.0.VMXIDXM
Official Link
Download (.zip)

Russia HyperOS 2.0.3.0.VMXRUXM

The latest Russian firmware version for Redmi 12 by Xiaomi:

Recovery ROM

Version
2.0.3.0.VMXRUXM
OS
HyperOS 2
Android
Android 15
Release date
2025-04-14
File size
4.47 GB
Official Link
Download (.zip)
Changelog
Expand list

Fastboot ROM

Version
2.0.3.0.VMXRUXM
OS
HyperOS 2
Android
Android 15
Release date
2025-04-01
Flash file size
7.04 GB
Official Link
Download (.tgz)

OTA Update

Version
2.0.3.0.VMXRUXM
File size
866.34 MB
Apply for
2.0.2.0.VMXRUXM
Official Link
Download (.zip)

Turkey HyperOS 2.0.3.0.VMXTRXM

The latest Turkish firmware version for Redmi 12 by Xiaomi:

Recovery ROM

Version
2.0.3.0.VMXTRXM
OS
HyperOS 2
Android
Android 15
Release date
2025-05-18
File size
4.55 GB
Official Link
Download (.zip)
Changelog
Expand list

Fastboot ROM

Version
2.0.3.0.VMXTRXM
OS
HyperOS 2
Android
Android 15
Release date
2025-04-29
Flash file size
6.24 GB
Official Link
Download (.tgz)
Changelog
Expand list

OTA Update

Version
2.0.3.0.VMXTRXM
File size
1.32 GB
Apply for
2.0.2.0.VMXTRXM
Official Link
Download (.zip)

The new HyperOS or MIUI update is not necessarily the best. Before updating Redmi 12 (fire), read reviews on 4PDA or XDA Developers. If installing a Flash File, full ROM, or the new OTA update caused issues, please let us know in the comments and mention the version number.

Other models in this series:
Xiaokmi Redmi 12 5G
Redmi 12 5G
Xiaomi Redmi 12C
Redmi 12C
MIUI ROM
Add a comment

Subscribe to our Telegram where we post when new firmware and updates are released.
  1. Rysiek

    24.02.2025 r wyszła aktualizacja ROM EEA (Europa). Do dzisiaj telefon nie zaktualizował się ani po przełączeniu regionu na Niemcy ani na Szwajcarię, nie mówiąc już o całkowicie olewanej przez Xiaomi Polskę. Czyżby koniec OTA na Europę (powtórka z Redmi 9c NFC).

    Reply
  2. Rysiek

    30.10.2024 r wyszła na Europę aktualizacja. Dziś mamy 28.11 a Polska chyba jako jedyna jej nie dostała. Gorszy sort?

    Reply
  3. unknown

    alguien sabe si la version global es compatible con la version del redmi 12 NFC que tengo ya que q la rom que tiene es de EU

    Reply
    1. Yaroslav

      De ninguna manera compatible!

      Reply
  4. abd

    I got the hyper os update then it disepeared from my settings what should i do ?

    Reply
    1. Max

      You cant install hyper os throuth ota anymore, only through recovery or fastboot

      Reply
  5. Alex mlxm

    When will get redmi 12 4g India hyperos software update?

    Reply
  6. LUCIFER

    Please link to the step by step article.

    Reply
    1. Pavel author
      Reply
  7. LUCIFER

    I am from India and seeing that the global release has a stable version while India doesn’t even have a beta version, How can I install the global version on my android (?) and please link how to install if possible. Also what is the difference between Global and Indian version on this?

    Reply
    1. Yaroslav

      First of all you need to unlock the bootloader. Then you’ll flash the ROM via MiFlash Pro in Fastboot mode. There is an article at our site.

      Reply
  8. meha

    After upgrading to Hyperos 1.0.2.0 UMXEUXM, I don’t have Notifications&control center in the settings, in fact, Notifications&status bar remain. Why?

    Reply
    1. Yaroslav

      Because this feature is not for all phones

      Reply
  9. Harry

    I recently purchased a Redmi 12 with the model version 23053RN02A, and one of the key features I was looking forward to was NFC support. However, it seems that my device does not have NFC functionality. Could you please provide clarification on whether the Redmi 12 model 23053RN02A is intended to support NFC? If not, could you guide me on how to proceed or if there are any potential updates or solutions?

    Reply
    1. Yaroslav

      Redmi 12 have no NFC

      Reply
  10. Ryzn khan

    From Bihar india
    Redmi 12 4G No update has been released for India and other countries have been updated or are waiting for the update. No update has been released for India these days.

    Reply
    1. Yaroslav

      That is not a time yet.

      Reply
  11. Ryzn khan

    From Bihar india
    I have a Redmi 12 4G device but the new control center is not showing in this phone and when will it show?

    Reply
    1. Yaroslav

      No information

      Reply
  12. Anuary Makange

    From Tanzania East Africa
    Camera don’t work on my Redmi 12 (4GB + 128GB)
    I set 800 as smallest width in developer option,,,bring this message,,,please help to fix this problem…
    ,………………………………………………………………………………………………………..
    java.lang.RuntimeException: Unable to resume activity {com.android.camera/com.android.camera.Camera}: java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.FrameLayout$LayoutParams
    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:5052)
    at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:5085)
    at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:54)
    at android.app.servertransaction.ActivityTransactionItem.execute(ActivityTransactionItem.java:45)
    at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:176)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2440)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loopOnce(Looper.java:211)
    at android.os.Looper.loop(Looper.java:300)
    at android.app.ActivityThread.main(ActivityThread.java:8315)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:581)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1028)
    Caused by: java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.FrameLayout$LayoutParams
    at com.android.camera2.compat.theme.custom.cv.MiThemeOperationBottomCV.alignSnapLeftByDefault(MiThemeOperationBottomCV.java:3)
    at com.android.camera.fragment.bottom.action.FragmentBottomAction.alignThumbAfterParamChanged(FragmentBottomAction.java:5)
    at com.android.camera.fragment.bottom.action.FragmentBottomAction.initThumbLayout(FragmentBottomAction.java:6)
    at com.android.camera.fragment.bottom.action.FragmentBottomAction.onResume(FragmentBottomAction.java:9)
    at androidx.fragment.app.Fragment.performResume(Fragment.java:5)
    at androidx.fragment.app.FragmentStateManager.resume(FragmentStateManager.java:12)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:8)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:3)
    at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:55)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3)
    at androidx.fragment.app.FragmentManager.dispatchResume(FragmentManager.java:4)
    at androidx.fragment.app.FragmentController.dispatchResume(FragmentController.java:1)
    at androidx.fragment.app.FragmentActivity.onResumeFragments(FragmentActivity.java:2)
    at androidx.fragment.app.FragmentActivity.onPostResume(FragmentActivity.java:2)
    at miuix.appcompat.app.AppCompatActivity.I3(AppCompatActivity.java:1)
    at miuix.appcompat.app.AppCompatActivity$b.b(AppCompatActivity.java:1)
    at j.b.d.l.b(AppDelegate.java:1)
    at miuix.appcompat.app.AppCompatActivity.onPostResume(AppCompatActivity.java:1)
    at android.app.Activity.performResume(Activity.java:8727)
    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:5041)
    … 13 more

    Reply
    1. Yaroslav

      You need to go to the service center.

      Reply