Latest : S017_01-07-2014 (KitKat 4.4.2)
File: Xolo Q2000L S017 01-07-2014-(by_xdafirmware.com).zip CRC-32: eb227244 MD4: c8d1739be1fe45d43d8fd2a1615d680d MD5: 07a484331431e523e5067186f07f0ac3 SHA-1: e808227b928fd03f0696ef6e37015432c06fade5
1. Broadcom MultiDownloader
(Latest one I can find is V2.0.1; Source)
2. Broadcom USB Download Device driver
(Latest one I can find is v1.0.5, mirror by @moulnisky. Broadcom uses two interfaces for flashing - one is serial/COM & another is USB but now they encourage to use the later one. Remember that the driver's digital signature isn't valid for 8.1/10 so you need to turn off driver signature enforcement to install the driver. To install the driver manually, open BRCM_WinUSB_ADB_Jungo_MTP_RNDIS_Driver_1.05.exe using 7-Zip, extract the contents & install the using bcmusbdl.inf)
Follow this tutorial, but we need some enhancements:
1. At step 8, I've chosen Download Mode as "Flash All Image" i.e the first one.
2. Skip step 9 & 10, come to step 11 i.e press 'Flash' button.
3. After that, connect the device in flashmode i.e as described in step 9. If Broadcom USB Download Device driver is properly installed, then flashing will begin. FYI, the hardware ID of the flashing interface is USB\VID_0A5C&PID_E720.
Broadcom bundles signed drivers for ADB/MTP/RNDIS interfaces along with the device itself (in the emulated CD drive). I've also mirrored it here. As an alternative, you can also use Android USB UnifL driver.
Remember that current ADB binary requires vendor ID whitelisting to detect Broadcom SoC. So execute Broadcom_SoC_Drivers.rar\AndroidPCUSBdrivers\andro id adb\brcm_adb_vendor_id.bat to do it. Otherwise ADB can't see the device, even if drivers are properly installed.
After you are able to communicate with the device through ADB, use iRoot to root it. Make sure to uninstall two Chinese bloatwares that came with Kinguser. I personally prefer to use SuperSU by @Chainfire, so we need to tinker with it again.
1. Install BusyBox.
2. Thanks to @idler1984, we've an easy way to switch from Kinguser to SuperSU. See here, search for "Q: I'd like switching to SuperSU, what shall I do?". I'm also providing the modified steps here which fits our needs:
2.1. Download SuperSU (I prefer the latest beta though). Open the zip, go to armv7 folder & extract the file named "su".
2.2. Use ADB to push su to /data/local/tmp:
adb push su /data/local/tmp
adb shell su mount -o remount,rw /system cat /data/local/tmp/su >/system/xbin/daemonsu && chmod 0755 /system/xbin/daemonsu cat /data/local/tmp/busybox >/system/bin/busybox && chmod 0755 /system/bin/busybox daemonsu -d &
2.4. Open Kinguser, go to Settings -> Root authorization setting -> Remove Root permission. Click to remove root permission. It may crash but its harmless. Your su session should be still running.
2.5. Uninstall Kinguser app.
2.6. Go back to the su session and run following commands to replace su and cleanup:
cat /data/local/tmp/su >/system/xbin/su && chmod 0755 /system/xbin/su busybox chattr -ia /system/bin/ddexe busybox chattr -ia /system/bin/ddexe_real cat /system/bin/ddexe_real >/system/bin/ddexe busybox chattr -ia /system/xbin/ku.sud rm /system/xbin/ku.sud rm /system/xbin/pidof rm /system/xbin/supolicy
2.8. Open SuperSU to update files & reboot.
2.9. (Optionally) make SuperSU a system app.
1. This device has fastboot interface too; you can access it by running
adb reboot bootloader
adb install -s NAME.apk