Flag Counter


Pages

Tuesday, November 14, 2017

ReadingSchematic 3

#ReadingSchematic 3

VBET မွ အဆက္
G610-U00 VCORE (input for CPU 1.1v 1.2A)

Power ic ရဲ႕အထြက္ကြိဳင္ L202 မွ C223 ကို filter လုပ္ကာ VCORE လို႔ေခၚတဲ့ 1.1v လမ္းေၾကာင္းေလးစတင္ပါတယ္။ ဘယ္ကိုသြားတာလဲဆိုေတာ့ CPU ဆိုတဲ့ေကာင္ဆီကို လမ္းေၾကာင္း၂ခုခြဲၿပီး 1.1v ေပးသြင္းထာပါတယ္။
             ပထမလမ္းေၾကာင္းကေတာ့ဘာေတြပါလဲဆိုေတာ့ filter  လုပ္ထားတဲ့ Cေလးေတြျဖစ္ၾကတဲ့ C415.416.417.418.419.420.421.422.423 စသည္ျဖင့္ CPU ထဲသို႔ေနရာအသီးသီး၀င္ထားပါတယ္။ ဟုတ္ကဲ့အဲ့လမ္းေၾကာင္းေလးကိုပံုထဲမွာ အနီေရာင္လိုင္းေလးနဲ႔ျမင္သာေအာင္ျပထားပါတယ္ခမ်။
       
            ဒုတိယလမ္းေၾကာင္းကေတာ့ Feedback လမ္းေၾကာင္း အျဖစ္ CPU ကေနျပန္ပီး power ic ကိုပဲ VCORE PMU ဆိုၿပီး 1.1v ျပန္ေပးသြင္းထားပါတယ္။
             ပံုမွာၾကည့္မယ္ဆို ပါဝါအိုင္စီ အတြင္းမွ VCORE  ဆိုတဲ့လမ္းေၾကာင္းကိုေတာ့ GND-VCORE ေတြအေနျဖင့္ D202 ဆိုတဲ့ ဒိုင္အုတ္ေလး၁လံုးျဖင့္ Ground ခ်ထားေပးပါတယ္။
#္VIO18ျပန္ဆက္မည္

ေအာက္ကပံုေလးေတြၾကည့္ၿပီးလမ္းေၾကာင္းလိုက္ၾကည့္ရေအာင္ေနာ္
#sayar N.N.T

ReadingSchematic2

#ReadingSchematic2

G610-U00 (VBET WAY ) စတင္ျခင္း
ဖုန္းတစ္လံုးမွာမည္သည့္ ပါဝါအိုင္စီသံုးသံုး မည္သည့္ဖုန္းအမ်ိဳးအစားျဖစ္ပါေစ။ Hardware Diagram အေနနဲ႔ေလ့လာမယ္ဆို VBAT ကေနအရင္စေလ့လာရပါတယ္။ အဲ့ဒီေတာ့ကြၽန္ေတာ္တို႔ MT6320 သံုး G610 U00 ရဲ႕ VBATေလးကိုေလ့လာၾကရေအာင္။

MT6320 power ic သံုးထားေသာ G610-U00 ရဲ႕Vbet လမ္းေၾကာင္းက္ိုၾကည့္မည္ဆိုလ်င္ J901 ဟုေခၚေသာ battery connector မွ battery အ၀င္ဗို႔ 3.7v သည္ D900.D902(zener diode) ကိုျဖတ္သန္းစီးဆင္၍ C903.C906.C907.C901 စသည့္ capacitors တို႔အား filter လုပ္ကာထိုမွတဆင့္ ပံု ၂ မွာျပထားေသာ VBET လမ္းေၾကာင္း 3.7V C203.C204.C205.C206.C207.C208.C209.C210.211 စသည့္ capacitor တို႔အား filter လုပ္ကာ PMic MT6320 အတြင္းသက္ဆိုင္ရာပင္နံပါတ္အသီးသီးသို႔ 3.7V ေပးသြင္းထားပါသည္။
                          ထိုလမ္းေၾကာင္းမ်ားမွာရွိေသာ Component မ်ားသည္ 3.7V battery အ၀င္ဗို႔မ်ားျဖစ္ပါသည္။၎လမ္းေၾကာင္းရွိ component မ်ား ေရွာ႔ျဖစ္ျခင္း ယိုစိမ့္မွာျဖစ္ျခင္းမ်ားရွိပါကစက္မတက္နိုင္ပါ။
လမ္းေၾကာင္းရွိ C မ်ား D မ်ားအားပံု၂တြင္း အနီေရာင္ေလးမ်ားျဖင့္ျပထားပါသည္။ပံုမ်ားၾကည္လင္မႈမရွိသည္ကိုခြင့္လြတ္ပီးၾကည့္ေပးၾကပါခမ်
            ေနာက္ေန႔တြင္ပါဝါအိုင္စီအထြက္ VCORE 1.1V အားထပ္ရွင္းျပပါမည္။

#ဆက္ရန္

READING SCHEMATIC1

#ReadindSchematic 1

မဂၤလာပါ
      Diagram ေလးကို စေလ့လာၾကတာေပါ့ Diagram ဆိုမွေတာ့ ထံုးစံအတိုင္းပဲ ပါ၀ါပိုင္း( AP SCHEMATIC ) နဲ႕ Network ပိုင္း ( BB SCHEMATIC ) ဆိုျပီးေတြ႕ရပါမယ္ ပါ၀ါပိုင္းမွာေတာ့ ( PMU , CPU , EMMC , Charging , LCD , Touch ,etc ) စသျဖင့္ ပါ၀င္ပါမယ္ Network ပိုင္းမွာေတာ့ ( RF front end , Transceiver ,WIFI , Bluetooth,etc.) စသျဖင့္ ပါ၀င္ပါမယ္ အခုကြ်န္ေတာ္ ေျပာမွာကေတာ့ ပါ၀ါနိုးျခင္းအေၾကာင္းပါ ဖုန္းတစ္လံုး ပါ၀ါလာဖို႔ လိုအပ္တဲ့ ဗို႔ထြက္ေတြကို Power ON Sequence ေတြက ေျပာျပပါတယ္ ကြ်န္ေတာ္တို႔ ဘက္ထရီတပ္ ပါ၀ါခလုတ္ နွိပ္လိုက္သည္မွစျပီး UI ( User Interface )ေရာက္သည္အထိ PMU မွ ထုတ္ေပးတဲ့ ဗို႔လမ္းေၾကာင္းေတြကို ေဖာ္ျပထားပါတယ္ အဲ့ေတာ့ ကြ်န္တာ္က Power ON Sequence ကို အနည္းငယ္ ရွင္းျပပါမယ္ အဲ့ေတာ့ ကြ်န္ေတာ္တို႔ ဖုန္းက ဘက္ထရီ တပ္ထားျပီဆိုပါစို႔ ဒါဆိုရင္ ဘက္ထရီက ဗို႔အားကို ပါ၀ါအိုင္စီမွ ရယူျပီး ပါ၀ါကီး ကို ဗို႔ထုတ္ေပးပါတယ္ ကြ်န္ေတာ္တို႔ ပါ၀ါ ခလုတ္ကို စနွိပ္လိုက္တာနဲ႕ ပါ၀ါအိုင္စီမွ သူ႕ထဲမွာ ထည့္သြင္းတည္ေဆာက္ထားတဲ့ FET ေလးကို Switch လုပ္ပါတယ္ FET ေတြကို Protection အေနနဲ႕သာမက Switch တစ္ခုအေနနဲ႔ပါ ဖုန္းေတြမွာ အသံုးျပဳထားပါတယ္ ကြ်န္ေတာ္တို႔ C8813 တို႔လို ဖုန္းေတြမွာေတာ့ FET ကို အျပင္မွာ တပ္ဆင္ပါတယ္ အခု ကြ်န္ေတာ္တိို႔ ေလ့လာမဲ့ G610-U00 Diagram မွာ ေတာ့VBAT လမ္းေၾကာင္းကေနပဲ ပါဝါအိုင္စီကို 3.7v တန္းဝင္ထားပါတယ္။ဟုတ္ကဲ့အဲ့တာဆို စက္တစ္လံုးႏိုးေစမဲ့ ေသျခာေအာင္အခုကြၽန္ေတာ္သင္ေပးမဲ့ MT6320 ႏိုးေစမဲ့ Power On/Off sequence. ကိုေအာက္မွာ ေရးျပထားပါမယ္။ အဲ့တာေလးေတြေတာ့ တတ္ႏိုင္ရင္အလြတ္က်က္အေသမွတ္ေပါ့။ ဒီ MT6320 အတြက္ကိုေျပာတာေနာ္  :D
1.VBAT
2.DDLO
3.UNLO
4.PowerKey
5.BBWakeup
6.VRTC
7.VCORE *
8.VIO18*
9.VA/VA28/VIO28*
10.VAST*
11.VPROC*
12.VM*
13.VUSB/VEMC3V3*
14.VMC/VMCH*
15.VTCXO*
16.RESETTB*
စသည္ျဖင့္ ပါဝါကီးစႏွိပ္တာနဲ႔အလုပ္လုပ္ရမဲ့အပိုင္းေလးေတြေပါ့။အဲ့တာကိုပါဝါ On/Off sequence ဆိုၿပီးေခၚပါတယ္။ ေလာဆယ္ေတာ့ ဒါေတြသိအုန္းမွာမဟုတ္ေသးဘူးေပါ့ ။ အဲ့ဒါေတြကို ကြၽန္ေတာ္ပိုစ့္ တစ္ခုျခင္းဆီေရးတင္ေပးမွာပါ။ ဥပမာ VPROC ဆိုဘာအလုပ္လုပ္တယ္ ဗို႔ဘယ္ေလာက္ထြက္ရမယ္ ဘယ္ထဲေပးသြင္းတယ္ဆိုတာ ပံုေလးေတြနဲ႔႐ွင္းျပေပးမွာပါ။ ဟာခမ်ား MT6320 ႀကီးက ဒီေခါတ္သိပ္မသံုးေတာ့ပါဘူးဗ်ာ။ဟုတ္ ကြၽန္ေတာ္ ညီကိုတို႔ကိုသိေသခ်င္တာ Readind Schematic ပါ က်န္တာကြကိုစဥ္းစားၾကေပါ့။

ေအာင္ျမင္ၾကပါေစ။
#sayar N.N.T

Sunday, November 12, 2017

Hardwarepost4

hardware post4

Coil

Softwarepost 11

Software Post11

MTK Dead boot ျဖစ္ရျခင္း အေၾကာင္းရင္းနဲ႕ Dead Boot မျဖစ္ ေအာင္ ကာကြယ္ ျပီး Firmware ဘယ္လုိ တင္ မလဲ ဆိုတာေလး ေျပာျပေပးပါမယ္။
****************************************************************************************************************************************************************
ဟိုးအစ ပို္င္းေလာက္က Mtk phone ေတြ Dead boot ျဖစ္ သြားတယ္ ဆုိ ရင္ က်ေနာ္ တို႕ firmware အမွန္ ျပန္တင္ၾကတယ္ သို႕မဟုတ္ရင္ လည္း အေကာင္းတစ္လံုးထဲ က ေနျပီး Firmware ကို back up ဆြဲထုတ္လုိက္ျပီး Dead boot
ျဖစ္ ေနတဲ့ Phone ထဲကို Restore ျပန္လုပ္ေပးလုိက္ ၾကတယ္ အဲ့ေလာက္နဲ႔တင္ အဆင္ေျပသြားတယ္ ။ အခုေနာက္ ပိုင္း Boot Partation 4mb နဲ႔လာတဲ့ ဖုန္းေတြမွာ ဆိုရင္ေတာ့ Firmware အမွန္ျပန္တင္ ရင္လဲ မနို္းေတာ့ပါဘူး ။ Back up
firmware ျပန္တင္ရင္လဲ မရေတာ့ ပါဘူး ။ အျဖစ္မ်ားတဲ့ ဖုန္းေတြက ေတာ့ Vivo Y15,Y22,Y28 Huawei U10 , Oppo R831K ,R2001,A11w အဲ့ ေကာင္ေတြမွာ အျဖစ္ မ်ားပါတယ္ ။ ဒီေကာင္ေတြက Boot Partation 4 mb နဲ႔လာတာပါ ။
ဥပမာ ဖုန္းက virus ကိုက္ျပီး လာရင္ လာမယ္ , Imei ေပ်ာက္ လာရင္ လာမယ္ Internal Storage ေပ်ာက္ ျပီး လာရင္ လာမယ္ ။ Logo stop ျဖစ္ျပီ္းလဲ လာရင္ လာမယ္ ။ အဲ့ လိုအေျခအေနေတြနဲ႔ လာ ရင္ သတိထားပါ ။ အဲ့လုိဖုန္းေတြကိ္ု
firmware တင္ေတာ့ မယ္ ဆိုရင္ ေတာ့ ပံုမွန္Firmware တင္ေနက် အတိုင္း Download Only နဲ႕ပဲ တင္ ပါ Format all + Download နဲ႔ မတင္သင့္ပါဘူး ။ Flashtool Error တက္တယ္ ဆိုရင္ Flashtool ေျပာင္းသံုးပါ။ Format လံုး၀ ရိုက္ ဖို႕ မစဥ္းစားပါနဲ့
Format ရိုက္လုိက္ ရင္ ဘာျဖစ္သြားနိုင္လဲ ဆို ေတာ့ နဂိုက ရွိေနတဲ့ Boot partation 4mb ဖုန္းထဲ မွာ ျပန္ပါမလာေတာ့ပါဘူး။ Boot partation size သာ ျပန္ပါမလာေတာ့ ဘူး ဆိုရင္ ဖုန္းကလဲ ဘယ္ လုိ မွ ပါ၀ါတက္ လာနို္င္ မွာ မဟုတ္ေတာ့ ပါ။ ေနာက္ တစ္ခ်က္က
DA Dl All ဆိုတာ ကို အမွန္ျခစ္ ျဖဴတ္ထားပါ။ ဘယ္ေတာ့ မွ မျခစ္ ပါနဲ႕ ။ IC ေကာင္းေနရင္ ဘာမွ မျဖစ္ နို္င္ ဘူး ဆိုေပမယ့္ ခုဏ က်ေနာ္ ေျပာသလုိ error ေတြနဲ႔ လာတဲ့ ဖုန္းေတြဆိုရင္ မျခစ္ ပါနဲ႔ ။တကယ္ လုိ႔ အမွန္ျခစ္ ျခစ္လုိက္မယ္ ဆိုရင္ DA DL Fail ျပသြားးလိမ့္မယ္
Fail ျပသြားျပီးရင္ေတာ့ Dead သြားနိုင္ ပါတယ္ ။ ကဲ ဒီေလာက္ဆိုရင္ေတာ့ Boot partatiion 4mb နဲ႔ လာတဲ့ ဖုန္းေတြကို Dead Boot မျဖစ္ေအာင္ Firmware Flashing လုပ္တက္ျပီလုိ႕ ထင္ပါတယ္ ။ ေနာက္တစ္ေန႕မွာေတာ့ Boot Partation Size ကို ဘယ္ လုိ စစ္ ရမလဲ ဆိုတာ ေျပာျပေပးပါမယ္

software post5

Software Post 5

Knowledge ပိုင္းနည္းနည္းပါ

Android ကိုစတင္ေလ့လာဖို႔က်ိဳးစားေနသူေတြအေနနဲ႔ အမ်ားေျပာေနၾကတဲ့ Bootloader , Firmware, ADB , Stock ROMs, Custom ROMs, OS Kernel, ClockworkMod, Flashing , Rooting , Baseband ရွင္းလင္းခ်က္

Android ကိုစတင္ေလ့လာဖို႔က်ိဳးစားေနသူေတြအေနနဲ႔ အမ်ားေျပာေနၾကတဲ့ Bootloader , Firmware, ADB , Stock ROMs, Custom ROMs, OS Kernel, ClockworkMod, Flashing , Rooting , Baseband စသျဖင့္ စာလံုး အထူး အဆန္းေတြျခည္းေတြ႔ရလို႔ ေလ့လာခ်င္စိတ္ကုန္ သြားတတ္သလို႔၊ တစ္လံုး စီနဲ႔ သူတို႔ရဲ့ သီးသန္႔ အလုပ္လုပ္ပံုကို အတိအက် မသိရင္ နာမည္သာေခၚေနေပမယ့္ အႏွစ္သာရ မဲ့ေနတတ္ပါတယ္၊ တကယ္ေလ့လာ လိုသူေတြအေနနဲ႔ လဲ တစ္ခုစီရဲ့ အဓီပါယ္နဲ႔ အသံုး၀င္ပံု အေသးစိတ္ အလုပ္လုပ္ပံု တို႔ကို ေသခ်ာ သိကိုသိထား ရပါမယ္၊ ဒီပို႔စ္မွာ အထက္က စာလံုးေတြအေၾကာင္း ရွင္းသြားေပးပါမယ္၊ တကယ္ပညာရွင္အဆင့္ တက္လွမ္းခ်င္သူေတြအတြက္ Open Source ျဖစ္တဲ့ Android က မည္သူမဆို ေဒါင္းယူႏိုင္ပီး ႀကိဳက္သလို ျဖတ္ႏိုင္ ျပင္ႏိုင္ ပါတယ္၊ စိတ္ႀကိဳက္ေျပာင္းႏိုင္ မိမိနဲ႔ အသင့္ေတာ္ ဆံုး ျဖစ္တဲ့ System တစ္ခုျဖစ္သြားတဲ့ အထိ ျပဳျပင္ယူလို႔ရပါတယ္၊

Bootloader ဆိုတာဘာလဲ

Bootloader ဆိုတာက Operation System မစတင္ခင္ အလုပ္လုပ္တဲ့ Code အစိတ္အပိုင္းေလးကိုေခၚပါတယ္၊ Bootloader ထဲမွာ OS kernal ကို စတင္အလုပ္လုပ္ေအာင္ ေခၚမယ္ ညြန္ၾကားခ်က္ေတြပါပါတယ္၊ Bootloader က Internal Memory ထဲမွာရွိတဲ့ Paratition ေတြအားလံုးက ရဲ့ ပထမဆံုး Partition မွာ တည္ရွိ မွာျဖစ္ပီး အျခား Partitions ေတြအားလံုးကို သြားမယ့္ Check Point ပါပဲ၊ Bootloader ဘယ္လို အလုပ္လုပ္ တာလဲ Power စဖြင့္တာနဲ႔ ROM ထဲမွာရွိတဲ့ Boot ROM Code က စပီးအလုပ္လုပ္ပါတယ္၊ ပီးရင္ Bootloader
လို႔ေခၚတဲ့ Boot Strap Firmware ကို ႏိုးမယ္၊ Boot Strap Firmware ထဲမွာ MBR and GRUB/LILO တို႔ပါ ၀င္တယ္၊ Bootloader အလုပ္စပီဆိုတာနဲ႔ init.S ဖိုင္ စအလုပ္လုပ္တယ္ ၊ အရင္ ဆံုး BSS segment ကို 0 တန္ဖိုးေရာက္သြားေအာင္ရွင္းတယ္၊ ပီးရင္ main.c ဖိုင္ကို စေခၚမယ္၊ main.c ဖိုင္ စ အလုပ္လုပ္တာနဲ႔ hardware အစိတ္အပိုင္းေတြျဖစ္တဲ့ clocks, board, keypad, console တို႔ကိုစတင္ေစမယ္၊ ပီးရင္ Linux Tags ကိုဖန္တီးပီး Linux Kernel image ကို Memory ကေန ၀င္တင္မယ္၊ Botloader ေရြးခ်ယ္မႈBootloader က Phone မွာပါ၀င္တဲ့ အျခား မည္သည့္ software မဆိုရဲ့ အဦးဆံုး စတင္တဲ့ အတြက္ မွန္ကန္တဲ့ processor ကိုအသံုးျပဳဖို႔ အလြန္ အေရးႀကီး လွပါတယ္၊ Android OS က Open Source ျဖစ္တဲ့ အတြက္ ဖုန္းထုတ္လုပ္တဲ့ ကုမၼဏီေတြက သူတို႔ ထုတ္လုပ္တဲ့ ဖုန္း Hardware နဲ႔ ကိုက္ညီတဲ့ Bootloader version ကို Develop လုပ္ထားၾကပါတယ္၊ Android ဖုန္းေတြမွာပါ၀င္တဲ့ Bootloader ေတြကို အျမဲတမ္း Locked ခ်ထားပါတယ္၊ ဒီလိုလုပ္ထားတာကေတာ့ ထုတ္လုပ္တဲ့ ကုမၼဏီေတြကို သူတို႔ထုတ္လုပ္တဲ့ဖုန္းကို သူတို႔ထုတ္လုပ္တဲ့ OS version နဲ႔ ပဲတြဲသံုးေစခ်င္လို႔ပါ၊ Bootloader ကို Locked လုပ္ထားရင္ Custom ROM install လုပ္လို႔မရပါဘူး၊ ဒါေၾကာင့္ Custom ROM Install လုပ္လိုရင္ Bootloader ကို အရင္ Unlock လုပ္ရပါတယ္။

Kernel ဆိုတာဘာလဲ

Kernel ဆိုတာက Android တစ္ခုထဲမွာ သာလွ်င္ရွိတာ မဟုတ္ပဲ IOS,MacOS,Window,BlackBerry's QNX တို႔မွာလဲရွိပါတယ္၊ High Level Operation Systems အားလံုးမွာ Kernel တစ္ခုေတာ့ ပါ၀င္ပါတယ္၊ ခု ေျပာ မွာက Android အေၾကာင္းဆိုေတာ့ Linux Kernel ကိုပဲ ဦးတည္ပီးေျပာသြားပါမယ္၊ Android သံုးသမွ် ပစၥည္းေတြက Linux Kernel ကိုသံုးၾက ပါတယ္၊ ဒါေပမယ့္ Linux Operation System က သံုးတဲ့ Kernel နဲ႔ေတာ့ တထပ္တည္းမတူပါဘူး၊ Android Kernel မွာ Android အတြက္ သီးသန္႔ Build-in code ေတြပါေနပါတယ္၊ ဒါ့ေၾကာင့္ပဲ Developers ေတြနဲ႔ hackers ေတြအတြက္ Android Versions အသစ္ေတြကို Android ဖုန္း အေဟာင္းေတြမွာ ထည့္သြင္းပီး အားလံုး အဆင္ေျပေျပ အလုပ္ျဖစ္ေအာင္လုပ္ဖို႔ အေတာ့ကိုေစာင့္ ရပါတယ္၊ Gingerbred kernel အတြက္ သံုးတဲ့ drivers ေတြက Ice Cream Sandwich kernel အတြက္ အလုပ္လုပ္မွာ မဟုတ္ပါဘူး၊ ဒီကစၥက လဲ အေရးႀကီးပါတယ္၊ Kernel ရဲ့ အဓီက အလုပ္က Hardware ကို ထိန္းခ်ဳပ္ဖို႔ တာ၀န္ကိုယူထားလို႔ပါ၊ kernel ကိုေရးတဲ့ ကုတ္ေတြလဲ တကယ့္ကိုမ်ားလွပါတယ္၊ Kernel ရဲ့ အဓီက တာ၀န္ကေတာ့ Hardware နဲ႔ Software တို႔ၾကားမွာ ႏွစ္ဖက္ညြန္ၾကား ခ်က္ေတြကို နာလည္ေအာင္ လုပ္ကိုင္ေပးဖို႔ပါပဲ၊ Software တစ္ခုက ဘယ္လို အလုပ္မ်ိဳးကိုမဆို Hardware ကို လုပ္ေစခ်င္တဲ့ အခါက်ရင္ Hardware ကို တိုက္ရိုက္ အမိန္႔မေပးပဲနဲ႔ Kernel ကို ညြန္ၾကားခ်က္ အရင္လွမ္းပို႔ပါတယ္၊ ဒီေနရာမွာ အလုပ္ဆိုတာက ဖုန္းက လုပ္ႏိုင္တဲ့ အလုပ္အားလံုးကိုညြန္းပါတယ္၊ ဖုန္း Screen အလင္းေရာင္ခ်ိန္တာတို႔၊ အသံ အနိမ္း အျမင့္ ခ်ိန္တာတို႔၊ Raido ကို ခ်ိတ္ဆက္ပီး ဖုန္းေခၚဆိုတာတို႔၊ ဖုန္း မ်က္ႏွာျပင္မွာ ပုံဆြဲတာတို႔ စသျဖင့္ အလုပ္ မွန္သမွ်ကို Software က လုပ္လိုတဲ့အခါက်ရင္ Hardware ကိုတိုက္ရိုက္ မခိုင္းပဲ Kernel ကိုလွမ္း ခိုင္းလိုက္ပါတယ္၊ အဲ့ဒီ့ အခါမွာ Kernal က တဆင့္ Hardware ကို လုပ္မယ့္ အလုပ္ကိုညြန္ၾကား ပါတယ္၊ ဥပမာ ကၽြန္ေတာ္တို႔ ဖုန္း မ်က္ႏွာျပင္ေပၚမွာ က ကင္မရာ (Camera) ရိုက္တဲ့ခလုပ္ မွာ ခလစ္တစ္ ခ်က္ႏွိပ္ပီး ဓါတ္ပံုရိုက္တယ္ဆိုပါစို႔ ၊ ခလုပ္ကိုႏွီပ္လိုက္တာနဲ႔ကို software က Event တစ္ခုကိုနားေထာင္လုိ႔ ရမယ္ ရတဲ့ Event ျဖစ္ေပၚတဲ့ေနရာကို driver ကတဆင့္ Kernel ကို ပို႔မယ္၊ kernel ကလဲ ရလာတဲ့အခ်က္နဲ႔ ပက္သက္တဲ့ command ကို Camera hardware ကိုလွမ္းပို႔မယ္၊ Camera Hardware က ဓါတ္ပံုကို ရိုက္ေပးမယ္၊ ဒီလို တစ္ခုက Software က Input လုပ္လိုက္တာကို Kernel က ယူပီး Output တစ္ခုအျဖစ္ Hardware ကိုျပန္ေပးပါတယ္၊ အကယ္၍ Kernel သာမရွိခဲ့ရင္ေတာ့ Developers ေတြက အလုပ္တစ္ခုစီအတြက္ အလြန္႔ အလြန္မ်ားျပားလွတဲ့ machine Code ေတြကို ေရးပီး Hardware ကို ခိုင္းေစရမွာျဖစ္ပါတယ္၊ Kernel က ၾကားခံ ေပးထားတဲ့အတြက္ Application Developers ေတြအေနနဲ႔ Android System API's ေတြကေန တစ္ဆင့္ Kernel ဆီကို Resquest ေတြအလြယ္တစ္ကူပို႔ႏိုင္ပီး Kernel နဲ႔ ခ်ိတ္ဆက္ အလုပ္လုပ္ဖို႔သာ Develop လုပ္ရမွာျဖစ္သလို Hardware Developers ေတြကလဲ သူတို႔ Develop လုပ္တဲ့ Hardware ကို Kernel နဲ႔ ဆက္သြယ္ အသံုးျပဳႏိုင္ေအာင္သာ Develop လုပ္ေပးစရာလို႔ပါတယ္။

CWM ဆိုတာဘာလဲ

CWM ဆိုတာကေတာ့ ClockWorkMod ကိုဆိုလိုပါတယ္၊ CWM ကို Android သံုး ဖုန္း နဲ႔ Tablet ေတြ Recovery လုပ္ဖို႔သံုးပါတယ္၊ ဒီလို CWM သံုးပီး recover လုပ္တာကိုပဲ CWM recovery လို႔ေခၚပါတယ္၊ CWM recovery လုပ္ျခင္းအားျဖင့္ Stock Recovery နဲ႔ မလုပ္ႏိုင္တဲ့ Data ျပန္လည္သိုေလွာင္ျခင္း root access ရယူျခင္း အသံုးျပဳတဲ့ ဖုန္းထဲက data ေတြကို Backup လုပ္ျခင္း Custom ROM ထည့္သြင္း အသံုးျပဳျခင္း Kernel တပ္ဆင္ျခင္း စသျဖင့္ အလုပ္ေတြအမ်ားၾကီးကိုလုပ္သြားႏိုင္ပါတယ္၊ Android အေျခခံ အဆင့္ ကို နားမလည္ေသးသူေတြအတြက္ ClockWorkMod ကိုသံုးပီး Recovery လုပ္ရင္ အခက္အခဲ ေတြ႔ႏိုင္သလို CWM recovery က အစြမ္းကိုလဲ သေဘာေပါက္ဖို႔ခက္ခဲေနပါအံုးမယ္၊ Android Devices ေတြအားလံုး recovery console ကို ဖုန္း အတြင္းပိုင္း memory ထဲ ထည္ပီး ကုမၼဏီေတြက ထုတ္လုပ္ေရာင္းခ်ပါတယ္၊ recover console ကေန Boot တက္ႏိုင္ပါတယ္၊ အကယ္၍ မလိုလားအပ္တဲ့ ျပသနာေတြ တက္လာပီးဆိုရင္ ကၽြန္ေတာ္တို႔ Factory Reset သံုးပီး Recover လုပ္ႏိုင္ပါတယ္၊ ဒါမွမဟုတ္ zip ဖိုင္နဲ႔ လာတဲ့ official ROM ကို Update လုပ္ႏို္င္ပါတယ္၊ ဒီလို အခ်က္ေလာက္သာလွ်င္လုပ္ႏိုင္တာပါ Custom Recovery ကေတာ့ သူမတူတဲ့
အလုပ္မ်ိဳးကိုလုပ္ႏုိင္ပါတယ္၊ Custom Recovery ကေတာ့ Stock Recovery လိုမဟုတ္ပဲ Stock Recovery လုပ္ႏိုင္သမွ်ကိုလုပ္ႏိုင္တဲ့ အျပင္ ကိုယ္ ပိုင္ Android ကို စိတ္ႀကိဳက္ ထိန္းခ်ဳပ္ ႏိုင္ေအာင္ အဆင့္ျမင့္တဲ့ Options ေတြပါလာပါတယ္၊ Custom Recovery ကို သံုးရင္ တရား၀င္ေကာ တရားမ၀င္ ROMs ေတြကိုပါ Install လုပ္ႏိုင္ပါတယ္၊ အျခား Application Update လုပ္ျခင္း Themes ေျပာင္းျခင္း Kernel ေျပာင္းလဲျခင္း Zip ဖိုင္ အသံုးျပဳျခင္း User Data အပါအ၀င္ ဖုန္း Partition ေတြအားလံုးကို ျဖတ္ႏိုင္ျခင္း SD cards Partition ခြဲျခင္း Dalvik Cache မ်ားျဖတ္ပစ္ျခင္း Permission မ်ားေျပာင္းလဲခင္း resotre န႔ဲ Backup မွာ စိတ္ႀကိဳက္ အစိတ္အပိုင္းေတြကို ေရြးခ်ယ္ႏိုင္ျခင္း နဲ႔ အျခား အျခား ေသာ အလုပ္ေတြအမ်ားႀကီးကို စိတ္ႀကိဳက္ လုပ္ႏိုင္ပါတယ္၊ ClockWorkMod recovery ကို Koushik Dutta က Develop လုပ္ခဲ့ပါတယ္၊ Android ROM Manager ကို Develop လုပ္တဲ့သူပါပဲ၊ သူ႔ရဲ့ Hacking away at Android devices ဆိုတဲ့ Blog နဲ႔ Twitter မွာ သူ႔ကို
ရွာေတြ႔ႏိုင္ပါတယ္။

Firmware နဲ႔ ပက္သ္သက္သ္သမွ်

Firmware ဆိုတာက ROM (read only memory) ထဲကိုထည့္ေရးထားတဲ့ Software program ကိုဆိုလိုပါတယ္၊ Window computer ေတြမွာသံုးတဲ့ window7 install လုပ္သ လိုပါပဲ၊ ဖုန္းအတြက္ Firmware Install လုပ္တယ္ ဆိုရင္ေတာ့ Froyo,Gingerbread,HoneyCamb,ICS,Jelly Bean,Kitkat တို႔လို Android Version ေတြကို Phone မွာ Install လုပ္ျခင္းပါပဲ၊ ဖုန္းတိုင္းမွာ မတူညီတဲ့ Firmware နဲ႔ installation Tool ေတြရွိပါတယ္၊ ဒါ့ေၾကာင့္ ႀကိဳက္တဲ့ ဖုန္းမွာ ႀကိဳက္တဲ့ firmware ကို သံုးႏိုင္မွာေတာ့ မဟုတ္ပါဘူး၊ တစ္ခုေတာ့ရွိတယ္၊ ROM ဆိုတာက မူရင္း အဓိပါယ္ Read-Only-Memory ကိုဆိုလိုပါတယ္၊ ဒီေတာ့ read only ဖတ္လို႔ပဲရမယ္ ေရးလို႔မရဘူးဆိုတဲ့ သေဘာေပါ့၊ ဒါဆိုရင္ ဘယ္လိုလုပ္ပီး ROM ထဲက Firmware ကို Update လုပ္ႏိုင္မွာလဲလို႔ေတြးစရာပါ၊ သေဘာတရားအရ ေတာ့ ROM ထဲမွာ Firmware ရွိတယ္ေပါ့ ၊ ေနာက္ပိုင္းမွာေတာ့ Developer ေတြက ROM ရဲ့ အျပင္မွာ Firmware ကိုထည့္ေရးကုန္ၾကပါတယ္၊ ဖုန္းရဲ့ Firmware ကို ROM လို႔လဲေခၚတယ္၊ အေၾကာင္းကေတာ့ သီအိုသီသေဘာမွာ Firmware က ROM ထဲမွာရွိတယ္၊ ROM ဆိုတာ Read Only Menory, ေရွ႕က ထုတ္ခဲ့တဲ့ ဖုန္းေတြမွာေတာ့ Firmware က ROM ထဲမွာရွိတယ္ဆိုတာမွန္ပါတယ္၊ ဒါေပမယ့္ ယေန႔ အသံုးျပဳေနတဲ့ ဖုန္းေတြမွာေတာ့ Firmware ကို ROM မထည့္ေတာ့ပါဘူး၊ Firmware ကို ဖုန္းရဲ့ internal
flash meonry ထဲမွာ ထည့္ထားတယ္၊၊ internal flash meonry က Read Only မဟုတ္ဘူး၊ ဒါ့ေၾကာင့္ firmware အသစ္တစ္ခုကို flash လုပ္လို႔ရတာေပါ့၊

Flashing ဆိုတာဘာလဲ

Flashing လုပ္တယ္ဆိုတာက Eloctronic Device ျဖစ္တဲ့ Phone ထဲကို firmware ထည့္သြင္း တာကို ဆိုလိုပါ တယ္၊ Flashing လုပ္ျခင္းက ROM ထဲမွာရွိတဲ့ Data ေတြကို ျပန္ေရးျခင္းပါပဲ၊ Android ဖုန္းမွာ Custom ROMs ကို Stock ROMs အစား Flashing လုပ္ပီးေတာ့ ဖုန္းထုတ္တဲ့ ကုမၼဏီက ထည့္သြင္းေပးလိုက္တဲ့ Functions ေတြ ကို ေျပာင္းလဲ ပီး ပိုမိုေကာင္းမြန္တဲ့ Unlimited ၀င္ေဆာင္မွဴကို ရရွိႏိုင္ပါတယ္။

Rooting ဆိုတာဘာလဲ

Android System ရဲ့ Hardware Layer အေပၚမွာရွိတဲ့ Linux Kernel ကို လိုသလို ထိန္းခ်ဳပ္လို႔ရႏိုင္မယ့္ အခြင့္ အေရးရခ်င္လုိ႔ Root access လုပ္ၾကပါတယ္၊ ဒီအခြင့္အေရးရယူႏိုင္ျခင္းကိုပဲ Root Access ရတယ္ လို႔ေခၚပါတယ္၊ Root Access ရသြားရင္ Android File System ကို စိတ္ႀကိဳက္ ျပဳျပင္ႏိုင္ပါတယ္၊ Android File System ထဲမွာ အဓိက ပါ၀င္တဲ့ အလႊာ (Partitions) ၆ ခု ကိုလိုသလို အသံုးခ်ႏိုင္ရင္ Booting နဲ႔ ပက္သက္တဲ့ Process ေတြအားလံုးကိုထိန္းခ်ဳပ္ႏိုင္ သလို File System ထဲက တန္ဖိုးေတြနဲ႔ ထိန္းခ်ဳပ္မွူေတြကိုလဲ လိုသလို ျပဳျပင္ႏိုင္ပါပီ၊ ဒါတင္မကပါဘူး ကၽြန္ေတာ္တို႔ စိတ္ႀကိဳက္ SSH (Secure Share protocol) (သို႔) HTTP (Hyper Text Transfer Protocol) DHCP (Dynamic Host Configuration Protocol) (သို႔) DNS(Domain Name Server) နဲ႔ Proxy Servers ေတြကို လဲ အသံုးျပဳႏိုင္ပါပီ၊ Android System ရဲ့ လုပ္ေဆာင္မူေတြထဲက ရပ္ခ်င္သမွ်လုပ္ေဆာင္ခ်က္ေတြကိုလဲ ရပ္ထားႏိုင္တဲ့ အျပင္ Arbitrary commands ေတြလဲ အသံုးျပဳႏိုင္ သြားပါ တယ္၊ အျခားအျခား အျခား ေသာ အခ်က္ေတြအမ်ား အမ်ားႀကီးကိုလဲလုပ္ႏိုင္ပါေသးတယ္၊ ဒီအခ်က္ေတြက Root လုပ္ရျခင္းရဲ့ ရည္ရြယ္ခ်က္ပါ၊ ဒါကိုပဲ Rooting လုပ္တယ္လဲေခၚပါ တယ္။

ထုတ္လုပ္သူ ေတြက သူတို႔ရဲ့ Device ေတြကိုေရာင္းခ်တဲ့အခါ Software restrictions ေတြပါလာပါတယ္၊ ဒီလို Software Restrictions ေတြပါလာရတဲ့ အေၾကာင္း အမ်ိဳးမ်ိဳးရွိပါတယ္၊ တစ္ခ်ိဳ႕ကုမၼဏီေတြကေတာ့ သူတို႔ ပစၥည္းကို အသံုးျပဳတဲ့ သူေတြကို ကာကြယ္ေပးဖို႔ ဆိုပီး Restrictions ထည့္ပါတယ္၊ ဘယ္လို အေၾကာင္းေၾကာင့္ ပဲျဖစ္ျဖစ္ ကန္႔သက္ခ်က္ေတြပါ၀င္ေနျခင္းဟာ Android ဖုန္း (သို႔) Tablet ကို သံုးတဲ့သူ လိုအပ္တဲ့ ပံုစံအတိုင္းေျပာင္းလဲဖို႔ႀကိဳးစားတဲ့ အခါ မ်ိဳး (သို႔) အဆင့္ျမင့္ တဲ့ ျပင္ဆင္မွဴျပဳ လုပ္ျခင္းမ်ိဳး ျပဳ လုပ္တဲ့အခါမ်ိဳးမွာ ကာစီေနတတ္ပါတယ္၊ ဒီလို အကာ အစီးကို ေက်ာ္ျဖတ္ပီး စိတ္ႀကိဳက္ထိန္းခ်ဳပ္ႏိုင္ေအာင္ Root access ရဖို႔ႀကိဳးစားၾကပါတယ္၊ Rooting လုပ္ျခင္းက Android သံုး ပစၥည္းထုတ္လုပ္တဲ့ကုမၼဏီေတြက ကန္႔သတ္ထားတဲ့ ကန္႔သက္ခ်က္ေတြကို ခ်ိဳးျဖတ္ပီး software ကို အကန္႔အသက္ မရွိအသံုးျပဳျခင္းပါပဲ၊ ဒီလို Rooting လုပ္ျခင္းအားျဖင့္ ကၽြန္ေတာ္တို႔ကို ကန္႔သက္ထားတဲ့ Android ပစၥည္း ရဲ့ အစိတ္ အပိုင္း မွာ ေရးခ်င္တာေရးႏိုင္သလို ျပဳျပင္လိုသမွ်ကို ျပဳျပင္သြားႏိုင္ပါတယ္။

Custom ROM နဲ႔ Stock ROM တို႔ ဘာကြာလဲ

Stock ROM နဲ႔ Custom ROM ဆိုပီးႏွစ္မ်ိဳးရွိမယ္၊ Stock ROM က ဖုန္း၀ယ္တုန္းက ပါလာတဲ့ Phone Operation System. Stock ROM မွာ Software Restriction ေတြထည့္သြင္းထားတဲ့ အတြက္ စိတ္ႀကိဳက္ အသံုးျပဳခြင့္ မရတဲ့ Operation System ျဖစ္ေနပါတယ္၊ Custom ROM ဆိုတာကေတာ့ OS Version တစ္ခုပါပဲ၊ Custom ROM ထဲမွာလဲ Stock ROM ေတြလိုပဲ Android Device တစ္ခုလံုးကို အလုပ္လုပ္ေစတဲ့ Kernel ပါတယ္၊ System Applications ေတြပါမယ္၊ Services ေတြပါမယ္၊ တစ္ခုပဲကြဲသြားတာက စိတ္ႀကိဳက္ တည္ေဆာက္ ထားတဲ့ ROM ျဖစ္ျခင္းနဲ႔ Software Restriction ေတြမပါျခင္းပါပဲ၊ ဒီေတာ့ Custom ဆိုတဲ့ စကားလံုးက ကဘာကိုရည္ညြန္းလဲ၊ Android က Open Source ျဖစ္တဲ့ အတြက္ Developers ေတြက Stock ROMS ေတြ အခမဲ့ယူလို႔ရတယ္၊ ပီးရင္ စိတ္ႀကိဳက္ ျပဳျပင္လို႔ရတယ္ ဖ်က္ပစ္လိုရာ ျဖတ္ထုတ္ႏိုင္တယ္၊ ထပ္ထည့္လိုတာထပ္ထည့္ႏိုင္တယ္၊ အရည္အခ်င္းရွိရင္ ရွိသေလာက္ စိတ္ၾကိဳက္ ျပဳျပင္ေျပာင္းလဲပီး စိတ္ၾကိဳက္ ROM ကို တည္ေဆာက္ယူႏိုင္တယ္၊ ဒီလို စိတ္ႀကိဳက္တည္ေဆာက္ထားတဲ့ ROM ကိုပဲ Custom ROM လို႔ေခၚတာပါ၊ADB ဆိုတာဘာလဲ ADB ရဲ့ မူရင္းစာလံုးကေတာ့ Android Debug Bridge ပါ၊ သူ နာမည္အတိုင္းပါပဲ သူက ဖုန္းကို ျပဳျပင္ဖို႔ အတြက္ ကြန္ျပဴတာနဲ႔ ဖုန္းၾကားခ်ိတ္ဆက္ ႏိုင္တဲ့ တံတား တစ္စင္းပါ၊ Android Phone က Linux Kernel ကို အေျခခံထားပါတယ္၊ ဒီေတာ့ computer adb server ကိုအသံုးျပဳျပီး ကြန္ျပဴတာကေန ဖုန္း ရဲ့ adb Client ကို Linux commands ေတြလွမ္းပို႔ႏိုင္ပါတယ္၊ ဒီလိုလုပ္ပီး commands ေတြကို အလုပ္လုပ္ေစႏိုင္ပါတယ္၊ ဖုန္း အလုပ္လုပ္ပံုေတြမမွန္ေတာ့တဲ့ အခါမ်ိဳးမွာ ဒီနည္းက ေတာ့ အမွားရွာပီး ျပင္ဆင္ဖို႔ တကယ့္ကို အသံုး၀င္တဲ့နည္းပါ၊ ဒီနည္းအတိုင္း ADB Server ျဖစ္တဲ့ Computer ကေန ADB Client ျဖစ္တဲ့ ဖုန္းကို Linux Commands ေတြပို႔ပီး အလုပ္မလုပ္ဖူးေသးရင္ေတာ့ မိတ္ေဆြ ADB ရဲ့ အသံုး၀င္ မွူကိုခံစားဖူးအံုး မွာ မဟုတ္ေသးပါဘူး၊Baseband ဆိုတာဘာလဲBaseband ဆိုတာကေတာ့ ဖုန္းေတြမွာသံုးတဲ့ Raido ကိုဆိုလိုပါတယ္၊ ဖုန္း Version နဲ႔ ထုတ္လုပ္တဲ့ ကုမၼဏီ အလိုက္ Raido Version ေတြလဲကြာပါတယ္၊ Raido File ေတြကို Recovery tools ေတြကေန Flash လုပ္ႏိုင္သလို ADB/ODIN တို႔ကလဲ Flash လုပ္ႏိုင္ပါတယ္၊ Raido (သို႔) Modem နဲ႔ ROM Version တို႔ ကိုက္ညီမွဴ မရွိရင္ ေတာ့ MMS, 3G data, VM နဲ႔ Network ျပသနာ တတ္ႏိုင္ပါတယ္၊ ဒါေၾကာင့္ အသံုးျပဳ ေနတဲ့ ROM နဲ႔ ကိုက္ညီတဲ့ Radio (သို႔) Modem ကို ေရြးခ်ယ္ႏိုင္ဖို႔လိုသလို ဖုန္းနဲ႔ ကိုက္ညီတဲ့ network နဲ႔ bandwidth တို႔ကိုလဲ ေရြးခ်ယ္ႏိုင္ဖို႔လိုအပ္ပါတယ္၊ Raido Firmware က Network ခ်ိတ္ဆက္ ဆက္သြယ္ေရးအတြက္ low-level functions ေတြကိုသံုးပီး Wi-Fi နဲ႔ GPS တို႔ ခ်ိတ္ဆက္အသံုးျပဳႏိုင္ေစပါတယ္၊ အကယ္၍ ဆက္သြယ္ေရး နဲ႔ ပက္သက္တဲ့ ျပသနာမ်ိဳး Android Device မွာ ေတြ႔ၾကံဳေနရပီဆိုရင္ေတာ့ Radio Firmware ကို Update လုပ္ဖို႔လိုပါပီ၊ Radio Firmware ကို Update လုပ္ျခင္းက Range နဲ႔ လုပ္ေဆာင္မွဴေတြကို ပိုမိုေကာင္းမြန္လာ မွာ ျဖစ္သလို Bettery အသံုးျပဳမွဴကိုလဲ ေရွာ့ခ်ေပးႏိုင္ပါတယ္၊ ဖုန္းထဲမွာ Baseband Radio Processor Chipsets ေတြပါ၀င္ပါတယ္၊ ဒီ Chipsets ေတြကို ထိန္းခ်ဳပ္ဖို႔အတြက္ Software မ်ိဳးစံုကိုလဲ ဖုန္းထုတ္လုပ္တဲ့ ကုမၼဏီေတြက Develop လုပ္ၾကပါတယ္၊

Xiaomi phone pin password unlock

Xiaomi ဖုနး္ေတြကို Password Lock ေတြ ျဖဳတ္လို႕ ရမယ္ Product Name ေတြ စစ္လို႕ရမယ္

ျပဳလုပ္နည္းက ဖုနး္ကို Volup + Power တြဲဖိျပီး recovery Mode ၀င္ပါ
ျပီးရင္ ၾကိဳးထိုး Tool ကိုဖြင့္ျပီး အသံုးျပဳနိုင္ပါသည္

Made by Chit Min Zaw
https://my.pcloud.com/publink/show?code=XZmxWX7Zmmb5ANNMluVeIky6j4Ef0jS2PGtk