I have bricked my brand new BraX3 phone. How can I fix it?

I did it using the MTK tool:
python mtk-patched.py r nvram ./nvram.img --plstage --preloader ./preloader_2026.bin --loader ./DA_BR_patched.bin --stock

Now I have a nvram.img that is 67108864/64M in size.

1 Like

It is strange that the touchscreen didn’t work in Lunar OS 6.0.0. I think the 2026 version of the BraX3 is not the same as the 2025 version I have.

Maybe iode’ OS needs a special version for the second phones so that they don’t get bricked!

Thank you, this did the trick. The SNWriter PASS wrote new IMEIs. I will type up some notes in a follow up message.

My top request remains:

  • Could we get the official 2026 BraX3 MFG EOL fileset that was programmed at the factory? (spflash files plus modem files)

From the Brax3 boxes one says Serial:BraX32025nnnnnnn and the new one says Serial:BraX32026nnnnnnn.

  • How can I determine which model is which from the device itself? Is there some indicator/id? I may not have access to both old/new in the future

If you have, as I did, a fully messed up a 2026 BraX3 then this thread should get back to a working device. I used much of what others wrote in this thread, credit to them. I want to rewrite it start to finish with added notes in case someone has to come down this path again.

- I mostly used Linux (e.g. for the mtkclient stuff), I do not see much diff between Windows/Linux SPFlashTool, and used SNWriter on Windows

- On linux I used “udevadm monitor --subsystem-match=usb” to see if the device was connected/disconnected/bootlooping

- In some cases simply connecting a powered off device triggered the “waiting” tool (mtk command line, SPFlashTool, or SNWriter) but sometimes it would not work. Sometimes leaving the device usb-connected and doing all 3 buttons until the tool responded worked. Other times disconnecting was needed, then holding all 3 buttons for at least 10 seconds before connecting and continuing to hold them after reconnecting until the tool responded.

- For whatever reason the GUI included with mtkclient did not work on my setup (errors out)

i. Follow the @divde method above to get out of the bootlooping and do the factory reset. The milestone is a working Iode android. Check if the IMEIs are blank.

ii. If blank IMEIs (and without saved nvram/nvdata/nvcfg partitions) use SPFlashTool (with partition-matching scatter file) in Download Only mode with the LunarOS 6 fileset. Deselect preloader, preloader_backup, and LK.

- This step can likely be improved. The LunarOS boots without touchscreen support (use the USB mouse idea) and without display wake-from-sleep capability. It may be better to uncheck all partitions and only CHECK vbmeta, vbmeta_system, vbmeta_vendor, boot, vendor_boot, init_boot, dtbo, tee, super, userdata. This is a guess that might restore the power mgmt in Lunar OS by keeping many pm partitions. But you can work around the fast screen timeout with the mouse.

iii. Use the SNWriter to reprogram the IMEIs. Comparing the file APDB_MT6835__W2421 from my oldest “BraX3 AP-DB.rar” file (April 2025) vs. the checksum in the same file in the LunarOS 6 fileset, they are different. I used the one in the LunarOS 6 fileset. I did not find a newer file for the “MDDB_MT6835_S00_MOLY_NR17_R1_MP3_RC_MP_V19_10_P3.EDB” so i used the April 2025 one. With these modem files, there is a difference here between 2025/2026 BraX3, the older device will take IMEI_1/IMEI_2/BT Addr/Wifi Addr changes but the newer device will not take a Wifi Addr change, only the other 3, maybe due to not having the MFG EOL fileset available for the new device.

- If there is a way at this point to use SPFlashTool over top of LunarOS with Download Only (e.g. with the latest avail iode 7.5 spflash files) I did not get it to work

iv. Important: Once you have IMEIs verified in LunarOS, extract the nvram/nvdata/nvcfg partitions with mtk command line

v. Repeat step “i)” above to get to a working Iode build. This erased the IMEIs for me.

vi. Finally, with command line mtk, flash the nvram/nvdata/nvcfg partitions that you extracted. Note: I had to do these each individually. If I try to do all three in one command I get an error “DAXML - [LIB]: xread: Wrong length”

Everything seems to work on device. I would much prefer to get the official MFG EOL factory programmed fileset (spflash files and modem files) instead of piecing this together.

1 Like

While doing the port to Debian it seems their are two distinct versions of brax3 hw. there are mentions of several different displays in the software so that could be part of what changed is the panel. i had similar result trying to flash lunaros where there was no touch support. I might be able to see what needs fixing to get lunar as an option back on the 2026. Maybe it’s more possible now. It’s pretty frustrating that the phone advertised to support multiple OS options and supported exactly 1 with lunar and Ubuntu Touch both only working on the old hw. Has anyone got dual boot? I looked into it briefly but would be good to hear someone already has working.

No dual boot. That is something I started looking into. The Lineage OS recovery on theses phones is very limiting. The phone recovery gets changed with Lunar OS version 6.0.0 but is still limiting and does not change slots from A to B. There are apps that change the slot and there is an app in Ubuntu Touch that does that but then u would need to root iode’ OS to install a similar app.

I don’t know enough about how the slots work but I think that to install Ubuntu Touch slot B gets erased so u cannot dual boot Ubuntu Touch. Maybe u can figure that out with Droidian?

Can someone summarize all the relevant downloads that we’ve referenced throughout this thread? (i.e., the OS roms [iode/lunar os], the stock and patched versions of the preloaders/loaders etc…)

We could just create a GitHub page with the step-by-step instructions along with the relevant files.

Let me know your thoughts.

Still stoked, playing with Brax3. I didn’t reset the phone, yet, found drop down-type menu to ‘that effect’. No need just now. Steady progress. Thanks.

Good idea. But, for me, I would need more info (or more testing) to be able to contribute. I do not understand some things, like: does the preloader_2026 fw recognize both RAM types for the 2 flavors of BraX3 hw and handle both? Does the lk fw recognize/handle both display types? Etc.

If yes, then there is (or will be) an spflash set of files that will work on either flavor of device.

If no, I am going to need to mark the outside of the device to know what fileset to use if needed for a full rebuild.

[Careful partition preservation/backup can avoid the need for a full rebuild]

I now assume that my device has older modem code (vs. what was factory programmed) so I am not confident that I should recommend these same steps and files that recovered my device. Braxtech should weigh in with an official fileset.