-
-
Notifications
You must be signed in to change notification settings - Fork 71
Expand file tree
/
Copy pathmtk_api.py
More file actions
40 lines (32 loc) · 1.21 KB
/
mtk_api.py
File metadata and controls
40 lines (32 loc) · 1.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/usr/bin/env python3
import logging
import os
import sys
from mtkclient.Library.DA.mtk_da_handler import DaHandler
from mtkclient.Library.error import ErrorHandler
from mtkclient.Library.mtk_class import Mtk
from mtkclient.config.mtk_config import MtkConfig
def init(preloader, loader, serialport=None):
loglevel = logging.INFO
config = MtkConfig(loglevel=loglevel, gui=None, guiprogress=None)
config.loader = loader
if preloader is not None:
if os.path.exists(preloader):
config.preloader_filename = preloader
config.preloader = open(config.preloader_filename, "rb").read()
mtk = Mtk(config=config, loglevel=loglevel, serialportname=serialport)
return mtk
def connect(mtk, directory=".", loglevel=logging.INFO):
da_handler = DaHandler(mtk, loglevel)
mtk = da_handler.connect(mtk, directory)
if mtk is None:
return None, None
mtk = da_handler.configure_da(mtk)
return mtk, da_handler
def main():
mtk=init(preloader=None, loader=None)
mtk, da_handler = connect(mtk=mtk, directory=".")
data=da_handler.da_rs(start=0,sectors=0x4000,filename="",parttype="user",display=False)
print(data.hex())
if __name__ == '__main__':
main()