Unfortunately this seems to work only on Linux 64-bit
DISCLAIMER: It is always risky to flash your mobile device. I do not and will not take any responsibility for bootloops and bricks.
Please check carefully that the ROM or recovery.img you want to flash is suitable for your specific device and for the sp_flash_tool. The firmware directory should neither contain meta-inf nor system folder, but something_with_a_scatter.txt and a system.img
Backup your phone before flashing!
Your phone's battery should be at least half charged (50 percent) before you start this.

I successfully ran these steps on my UMI Hammer with Linux Ubuntu 14.04. I do not have other devices or Linux derivates and do not plan to buy/install any.

CREDITS and a zillion thanks to Sergio Rivero for his excellent tutorial on mibqyyo.com!!!!
Also many thanks to N2K1 for giving me some more background information!

So here we go:

Step 1:
If you haven't done so before, install the Linux generic usb-drivers package:

Code:
sudo apt-get install libusb-dev

Download https://androidmtk.com/smart-phone-flash-tool
I recommend version 5.1604 or newer.
Step 2:
Extract the downloaded file -> graphic file manager (e.g. Nautilus): double-click and extract. Terminal:

Code:
unzip path_to_file

(from now on: please adapt paths to your own settings)
Move the new folder „sp_flash_tool“ to a directory of your choice.

Code:
mv /home/username/Downloads/sp_flash_tool /home/username/...

Step 3:

Change into the newly created directory:

Code:
cd /sp_flash_tool

We make one file executable by typing:

Code:
chmod +x flash_tool

In order to avoid running the flash_tool as root user, you need to add a standard user to the usergroup "dialout" (thanks to @egalus for this bit!)

Code:
sudo adduser username dialout

For Arch Linux:

Code:
gpasswd -a username uucp

and activate the membership immediately

Code:
newgrp - dialout

(Arch Linux):

Code:
newgrp - uucp

Step 4:

Now you can open the tool:

Code:
./flash_tool

or double-click on the flash_tool icon.
You can try at this stage if the flash tool connects to your phone:
In the user interface, choose tab „Download“. Hit "scatter-loading", navigate to a directory with a valid firmware for your device and choose the scatter-file.
For testing purposes uncheck "name" and check one of the smaller files in the list below (for example "logo") 
Switch off your device. Hit the "Download" button in SP_Flash_Tool and connect your phone to the computer. Some devices require you to take off the battery for about 10 seconds, with others you need to press Vol+ or Vol- while plugging the cable into the phone. Please look up device-specific threads and try out different options.

If nothing happens at all, open a second terminal, run

Code:
dmesg | grep usb

and look out for a MediaTek entry. If there is none → did you install libusb-dev (Step 1?)
If the answer is yes, you might need to create a persistent udev rule for the MTK Preloader:

Code:
sudo gedit /etc/udev/rules.d/80-persistent-usb.rules

Add the following line to the file:

Code:
SUBSYSTEM=="usb", ACTION=="add", ATTR{idVendor}=="0e8d", ATTR{idProduct}=="*"

Save the file and exit.
Reload the usb-rules:

Code:
sudo service udev restart

Disconnect the usb data cable from the computer and the smartphone. Close the flash tool. Switch on your phone (fastboot mode will do). Repeat the first paragraph of Step 4.

If the tool connects, within a few seconds a red progress bar will appear. Unfortunately, in my case an error message came along with it:
S_BROM_CMD_JUMP_DA_FAIL (2035)
There is a connection, but also one more obstacle to overcome...

Step 5:
Now we come to the interesting part, which cost me 2 weeks of (futile) research and frustration. Finally I found Sergio Riveros tutorial on mibqyyo. Thanks to him again and again and again for this priceless piece of information 

Quote:

The “modemmanager” package integrated by default within Linux Ubuntu 14.04 and later is not compatible with the MTK Flash Tool for Linux

 

To put it in different words: The modem manager controls port /dev/ttyACM0 and disables the Flash Tool. So we blacklist it for the two MTK vendor IDs the flash tool uses:

Code:
sudo gedit /etc/udev/rules.d/20-mm-blacklist-mtk.rules

You insert these two lines:

Code:
ATTRS{idVendor}=="0e8d", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="6000", ENV{ID_MM_DEVICE_IGNORE}="1"

Save the file, exit and restart udev:

Code:
sudo service udev restart

Switch your phone on (fastboot mode will suffice) and off again.

Step 6:

Code:
./flash_tool

or double-click on the flash_tool icon.
Now everything should run smoothly. In case you encounter

Code:
BROM ERROR : S_SECURITY_SF_CODE_FORMAT_FORBIDDEN (6012) , MSP ERROE CODE : 0x00

change the download agent to MTK_AllInOne_DA.bin (screenshot #4)
There are plenty of tutorials on the web for the further steps. 
Happy flashing! When a green circle with a white checkmark appears, you are done. You can close the flash tool and disconnect your phone. Remove the battery for about 10 seconds and reinsert it. For a clean start with a new ROM boot into recovery and wipe data/factory reset.

Attached Thumbnails

           
 

[TUTORIAL]How to setup SP_Flash_Tool_Linux (MTK/MediaTek Soc)的更多相关文章

  1. 《RabbitMQ Tutorial》第 1 章 简介

    本文来自英文官网,其示例代码采用了 .NET C# 语言. <RabbitMQ Tutorial>第 1 章 简介(Introduction) RabbitMQ is a message ...

  2. 《RabbitMQ Tutorial》译文 第 1 章 简介

    原文来自 RabbitMQ 英文官网的教程(1.Introduction),其示例代码采用了 .NET C# 语言. RabbitMQ is a message broker: it accepts ...

  3. arm-linux下qt + opencv开发环境的搭建(Altera DE1 Soc)

    arm-linux-gnueabihf-gcc下载 qt下载 arm-linux下qt + opencv开发环境的搭建(Altera DE1 Soc) Ubuntu 16.04 安装QT arm嵌入式 ...

  4. 【原】Configuring Oracle Data Guard In Physical Standby Database

    作者:david_zhang@sh [转载时请以超链接形式标明文章] http://www.cnblogs.com/david-zhang-index/p/5042640.html参照文档:https ...

  5. Gazebo機器人仿真學習探索筆記(七)连接ROS

    中文稍后补充,先上官方原版教程.ROS Kinetic 搭配 Gazebo 7 附件----官方教程 Tutorial: ROS integration overview As of Gazebo 1 ...

  6. php实现查询上传文件进度

    参考:http://www.ultramegatech.com/2010/10/create-an-upload-progress-bar-with-php-and-jquery/ 11OCT/108 ...

  7. Learn golang: Top 30 Go Tutorials for Programmers Of All Levels

    https://stackify.com/learn-go-tutorials/ What is Go Programming Language? Go, developed by Google in ...

  8. 服务器搭建私人Git

    环境是CentOS 7.4 64位 主要参考:在服务器上搭建 Git 0. 预备 安装git yum install git 1. 开发者-生成个人SSH公钥 p.s. 书中的4.3节是[生成个人的S ...

  9. NS3 MyApp Class Reference

    官方文档:MyApp 可以在下面的几个例子找到: examples/tutorial/fifth.cc examples/tutorial/seventh.cc examples/tutorial/s ...

随机推荐

  1. hiveserver2不能启动

    我的hiveserver2一直不能启动,命令行一直卡住不动,然后我就想是不是配置文件没有配置相关的参数,然后就来修改hive-site.xml 最终修改完后的hive-site.xml: <?x ...

  2. 常量的三种定义方式和static在c语言中的三种修饰

    c语言的常量在执行期间为固定值,在定义后无法被修改常量可以是任何的数据基本类型,可以为整形,浮点常量,字符和字符串常量1,使用const关键字2, 使用宏定义3,使用枚举常量 枚举: #include ...

  3. emWin 学习笔记 —— 用VS2017打开emWin仿真包

    使用VS2017打开emWin仿真包 解压以后的仿真包目录 SimulationTrial.sln 就是工程文件,直接使用VS2017打开即可 打开以后就是这样子,不要急着编译.直接编译会出错 在项目 ...

  4. Vue 生产环境部署

    简要:继上次搭建vue环境后,开始着手vue的学习;为此向大家分享从开发环境部署到生产环境(线上)中遇到的问题和解决办法,希望能够跟各位VUE大神学习探索,如果有不对或者好的建议告知下:*~*! 一. ...

  5. 一、Lambda表达式

    一.Lambda是什么? Lambda是一个匿名函数,我们可以把Lambda理解为是一段可以传递的代码.可以写出简洁.灵活的代码.作为一种更紧凑的代码风格,使java的语言表达能力得到提升. 二.La ...

  6. java对于Redis中jedis的操作

    package com.answer.redis; import java.util.HashMap; import java.util.List; import java.util.Map; imp ...

  7. Python3开启Http服务

    在CMD命令行输入D: 切换到D盘, 然后输入 python -m http.server 8000 开启HTTP服务: 在浏览器地址栏输入 http://localhost:8000/

  8. selenium自动化一点记录

    UI自动化 1.webdriver的findElement方法可以查找页面某元素,通常使用方式是通过id和name进行查找 1.By ID根据id进行定位 WebElement element=dri ...

  9. JS获取HTML DOM元素的8种方法

    什么是HTML DOM 文档对象模型(Document Object Model),是W3C组织推荐的处理可扩展置标语言的标准编程接口.简单理解就是HTML DOM 是关于如何获取.修改.添加或删除 ...

  10. 【icon】 图标组件说明

    小程序默认了几种类型图标,其组件原型如下: <icon type="[success | success_no_circle | info | warn | waiting | can ...