Initial AT Command support
NOTE: Don't use this unless you know what you're doing
This release is a flashable package based on the following repos:
- Unlocked Bootloader (LK): https://github.com/Biktorgj/quectel_lk/releases
- Linux 3.18.140 Kernel: https://github.com/Biktorgj/quectel_eg25_kernel
- Forked meta-qcom layer: https://github.com/Biktorgj/meta-qcom/
- Yocto 3.2 based rootfs and recovery (https://www.yoctoproject.org/)
Before flashing
This isn't even alpha, so make sure you know your modem recovery methods. Grab a copy of the firmware recovery repo (https://github.com/Biktorgj/quectel_eg25_recovery), and carefully read the README. If you don't know what it says, don't attempt to use this.
CHANGES FROM PREVIOUS RELEASE
- Initial support for AT Command answering. Most of the commands don't do anything but "ACK" whatever is asked from the host without really doing anything, as it's all preconfigured, but makes eg25manager not complain
- Some fixes to audio. It still dies at some point but unsure if it does that on the host or on the modem
- If you try this firmware please let me know if audio works for you (either outgoing or incoming calls)
- Logging support on OpenQTI. By default it logs to /var/log/openqti.log. If you want more verbose logs, start the daemon with " -l" or with " -d -l" to debug to screen
- Only remaining bit of closed source blobs is the ADSP firmware itself
Installation instructions:
- Get required tools: you need adb and fastboot
- Grab a copy of the firmware, and, optionally, a recovery firmware (https://github.com/Biktorgj/quectel_eg25_recovery)
- With the modem active, jump to fastboot mode:
- If you don't have ADB enabled, enter the following command in
/dev/ttyS2
:AT+QFASTBOOT
- If you already have ADB enabled:
adb shell reboot bootloader
- If you don't have ADB enabled, enter the following command in
- After a bit, if you run
lsusb
you should see the modem in fastboot mode:
Bus 003 Device 005: ID 18d1:d00d Google Inc. Xiaomi Mi/Redmi 2 (fastboot)
- Once in fastboot mode, first flash the unlocked bootloader:
fastboot flash aboot appsboot.mbn
- After that
fastboot reboot ; fastboot oem stay
- After flashing and rebooting to the bootloader the modem will say
FAILED (remote: 'Waiting for orders!')
- Now you can flash everything:
fastboot flash boot boot-mdm9607.img
- If you get an error flashing the kernel, run fastboot flash:raw :
fastboot flash:raw boot boot-mdm9607.img
- If you get an error flashing the kernel, run fastboot flash:raw :
fastboot flash recovery recovery.img
fastboot flash system rootfs-mdm9607.ubi
fastboot flash recoveryfs recoveryfs.ubi
- After you flashed everything, you can run 'fastboot reboot' and wait for it to come back.
If you want to return to stock, I would advise to keep the unlocked bootloader. It will do no harm, and it will give you more recovery functions in case you mess something up or something in the firmware breaks. It is compatible with Quectel's firmware, and the only thing it doesn't do is allowing automatic OTA updates. In case you want to recover the bootloader too, follow the following steps exactly
- Grab the recovery image from my recovery repo: https://github.com/Biktorgj/quectel_eg25_recovery
- Extract it to some folder and move to the update/ folder
- One by one, flash all the image files, in this order:
fastboot flash system mdm9607-sysfs.ubi
fastboot flash recoveryfs mdm9607-recovery.ubi
fastboot flash boot mdm9607-boot.img
fastboot flash recovery mdm9607-boot.img
- If all the files have been correctly flashed, only then, run
fastboot flash aboot appsboot.mbn
The reason for this is because if you reinstall the locked bootloader and some of the official files weren't flashed you might enter a reboot loop and you will need to open the phone and short the emergency recovery test points to get into EDL mode and use Qfirehose.
Have fun!