Friday, 19 February 2010

Plogg Energy Logging Device

E-Meter ပါပဲ။ က်ေတာ္ ပထမ သံုးတဲ့အမ်ိဳးအစားပါ။ အရမ္းကုိ User friendly ျဖစ္ပါတယ္။ အားနည္းခ်က္က Serial COM သီးသန္႔မပါတဲ့အတြက္ ZigBEE port မွာ bypass လုပ္ၿပီးသံုးရပါတယ္။ က်ေတာ္သူ႔ရဲ့ handshaking ကိုေသခ်ာနားမလည္တဲ့အတြက္ reply ေတြေနာက္က်ပါတယ္။ ဒါေပမယ့္ အလြန္တိက် (ဒႆမ ၄ ေနရာအထိ KWh ကိုျပႏိုင္ပါတယ္) တဲ့အတြက္ က်ေတာ့္ Project တစ္ခုရဲ့ Second Generation အထိ သံုးျဖစ္ခဲ့ပါတယ္။

ေနာက္ျပႆနာတစ္ခုက Ground isolation ေသျခာလုပ္ရပါတယ္။ အရမ္းႏုပါတယ္။ က်ေတာ္သံုးေနရင္းကို ၂ လံုးေလာက္ ေရွာ့ျဖစ္ပီး ပ်က္သြားပါတယ္။ ေနာက္ၿပီး meter firmware upgrade ပါ။ အကုန္လံုးကို ထုတ္လုပ္တဲ့ ကုန္ပနီေပၚမွီခိုေနရပါတယ္။ သေဘာက သူတို႔ firmware ေျပာင္းရင္ က်ေတာ္က protocol လိုက္ေျပာင္းေနရတာပါ။ လုပ္ေနရင္းကို ၂ ခါေျပာင္းပါတယ္။

ေနာက္ပိုင္းမွာ PLC base (RS-485 protocol e-meter) ေနာက္တစ္မ်ိဳးေျပာင္းသံုးခဲ့ပါတယ္။ လိုခ်င္တဲ့ IEC standard မရလို႔ပါ။ Terric Meter မဟုတ္တဲ့အတြက္ပါ။ သေဘာက အိမ္သံုးအတြက္ ပဲ အဓိကလုပ္ထားတာေၾကာင့္ က်ေတာ္သံုးမည့္ Project behavior နဲ႔ မကိုက္တာပါပဲ။

ေအာက္က ပံုက သူ႔ရဲ့ Full function ကို ျပထားတာပါ။ Bundle လိုက္၀ယ္ၿပီး အဆင္သင့္သံုးလို႔ရပါတယ္။ က်ေတာ္က Plogg OEM (Module & ZigBEE) သပ္သပ္၀ယ္ၿပီး သံုးခဲ့တာပါ။ အဲ့ဒီတုန္းကလည္း Customer က supply လုပ္လို႔ သံုးျဖစ္ခဲ့တာပါ။

Graphic LCD

သာမန္ Character display LCD ေတြနဲ႔ ကြာျခားတဲ့အခ်က္ကေတာ့ GLCD က Dot Matrix ပံုစံသြားပါတယ္။ ကၽြန္ေတာ္သံုးတာက Graphic LCD 128x64 Dot Matrix ပါ။ သူ႔ေပၚမွာ စာေရးတာပဲ ျဖစ္ျဖစ္ ပံုဆြဲတာပဲျဖစ္ျဖစ္ အဲ့ဒီ Dot Matrix ပံုစံနဲ႔ သြားရပါတယ္။ အရွင္းဆံုးေျပာရရင္ေတာ့ Dot (pixel) ေလးေတြကို ဆက္ၿပီးေတာ့ ပံုေဖၚလိုက္တာပါပဲ။ က်န္တဲ့သေဘာတရားေတြအကုန္လံုးက ပံုမွန္ LCD module ေတြနဲ႔အတူတူပါပဲ။ ေရးခ်င္ရင္ အနက္ေရာင္ေလးအုပ္၊ ဖ်က္ခ်င္ရင္ အျဖဴေရာင္ေလး ျပန္အုပ္ ဆိုတဲ့သေဘာေတြပါပဲ။ ဒီေကာင္ေလးကို သံုးရင္းနဲ႔ ဟိုးအရင္ ၁၉၉၇ ေလာက္က Pascal programming မွာ Graphic mode နဲ႔ DOS မွာ Windows, Buttons, Text boxes ေတြေရးခဲ့တာေလးေတြကိုေတာင္ ျပန္သတိရမိတယ္။

Thursday, 18 February 2010

Multi-Chip and Single Chip solutions

Embedded Application ေတြကို Mass production ထုတ္လုပ္တဲ့အခါမွာ Single Chip solution ကို သံုးၾကပါတယ္။ သေဘာတရားကေတာ့ ကိုယ္လုပ္ခ်င္တဲ့ လုပ္ငန္း ၂ခုကို Chip တစ္ခုထဲမွာ ေပါင္းၿပီးထဲ့လိုက္တဲ့သေဘာပါ။

ဥပမာ - Freescale က Energy meter ကိုထုတ္တဲ့ေနရာမွာ အရင္က 2 Chip solution ကို သံုးပါတယ္။ E-Meter အတြက္ ADC နဲ႔ဆိုင္တဲ့ Chip တစ္လံုးနဲ႔ Data collection, calculation, user interface ေတြအတြက္ MCU တစ္လံုးကို ခြဲၿပီးသံုးပါတယ္။ သေဘာကေတာ့ သူတို႔အရင္ ရွိၿပီးသား IC ေတြကို ယူသံုးလိုက္တဲ့သေဘာပါ။ R & D အဆင့္ေလာက္ေပါ့။ ေနာက္ပိုင္းက်ေတာ့ ခုန E-meter အဆင္ေျပသြားတဲ့ အခါ အဲ့ ၂ လံုးကို ေပါင္းလိုက္ၿပီးေတာ့ Chip တစ္ခုတည္းမွာ Embedded ထဲ့လိုက္တယ္။ Single chip solution ကိုေျပာင္းပစ္လိုက္တယ္။

အားသာခ်က္က ေစ်းသက္သာသြားတယ္၊ ေနရာပိုထြက္လာတယ္၊ power consumption က်သြားတယ္။ လိုအပ္ခ်က္က Mass production ထုတ္မွအဆင္ေျပတယ္။ ေအာက္ကပံုကေတာ့ Multi chip and single chip solution ကို ယွဥ္ျပထားတဲ့ပံုပါ။ ဒီစကားအသံုးအႏႈန္းက သပ္သပ္ အလုပ္လုပ္ႏိုင္ေနတဲ့ Chip ၂ လံုးကို တစ္လံုးတည္းမွာ ေပါင္းၿပီး သံုးတဲ့အခါမွာ ေျပာေလ့ရွိၾကပါတယ္။

Tuesday, 16 February 2010

Mifare Card A, B, C

Mifare ကဒ္ေတြ (ISO 14443 လို႔လည္း ေျပာၾကပါတယ္)က ခုေနာက္ပိုင္း အသံုးအမ်ားဆံုး Contactless Card အမ်ိဳးအစားေတြပါ။
Type A က Card ID ၈ လံုးပါပါတယ္။ ေစ်းေပါပါတယ္။ သိပ္အေရးမႀကီးတဲ့ Private လုပ္ငန္းေတြ Attendance system ေတြမွာ အသံုးမ်ားပါတယ္။
Type B က Transportation ေတြမွာ အသံုးမ်ားပါတယ္ (စကၤာပူက EZlink ကဒ္လိုေပါ့)။ တ႐ုတ္က ျပည္နယ္တစ္ခ်ိဳ႔၊ အိႏၵိယ၊ ဂ်ပန္၊ ကိုးရီးယားေတြမွာ အသံုးမ်ားပါတယ္။ Card ID ၁၆ လံုးပါပါတယ္။
Type C က E-Passport ေတြမွာ အသံုးမ်ားပါတယ္။ က်ေတာ္ေတြ႔ဘူးတာ ကိုးရီးယား ပါ့စ္ပို႔မွာပါ။ Card ID ၃၂ လံုးပါပါတယ္။

Felica (Sony) Card, Mifare ISO14443 A, B, C and CEPAS protocol

Singapore ရဲ့ public ကား၊ ရထားေတြမွာ ပိုက္ဆံေပးတဲ့စံနစ္မွာသံုးတဲ့ EZlink card အသစ္ (၂၀၀၉ စက္တင္ဘာမွ အၿပီးလဲေပးထားတဲ့ကဒ္) အမ်ိဳးအစားပါ။ ထုတ္လုပ္တဲ့ ကုန္ပနီက Sony ပါ။ အဲ့ဒါေၾကာင့္ အဲဒီကဒ္ကို ဖတ္တဲ့အခါ -

၁။ Sony ကထုတ္တဲ့ Protocol (Felica) ကိုအသံုးျပဳၿပီး ဖတ္ရပါတယ္။
၂။ ဒါေပမယ့္ ကဒ္အမ်ိဳးအစားက Mifare (B) or ISO 14443 B ပါ။ သေဘာက Mifare B ကဒ္အမ်ိဳးအစားဖတ္ႏိုင္တဲ့ Reader ေတြနဲ႔ပဲ ရပါလိမ့္မယ္။
၃။ CEPAS (Contactless ePurse Applications) ဆိုတာက Encryption method ပါ။ ဟက္ခ္ လုပ္ပိုင္ခြင့္မရွိပါ။

အဲဒီေတာ့ က်ေတာ္တို႔က အဲ့ဒီကဒ္ကို သံုးျပီး အလုပ္လုပ္တဲ့ System တစ္ခုဖန္တီးတဲ့အခါ အဲဒီကဒ္ရဲ့ နံပါတ္ကိုပဲ ဖတ္လို႔ရပါတယ္။ EZlink ကဒ္ေတြေပၚမွာ ေရးထားတယ္ နံပါတ္ ၁၆ လံုးေပါ့။ အထဲက တန္ဖိုးေတြကို ျပင္ခြင့္မရွိပါ။

EZlink ကဒ္ကို ဖတ္လို႔ရတဲ့ Reader ေတြ အမ်ားႀကီးရွိပါတယ္။ မွတ္ရမွာက Felica, ISO14443 A,B,C (C ကပါခ်င္မွပါပါ) ဆိုတဲ့စာေလးေတြ ပါမွ အဲဒီကဒ္ကို ဖတ္လို႔ရတယ္လို႔ သတ္မွတ္ရပါမယ္။
Sony (Felica) Card တည္ေဆာက္ထားပံုFelica Card Reader တစ္မ်ိဳး

Uni-directional And Bi-directional Energy Meter

Uni-directional energy meter ကေတာ့ ကမာၻမွာ (အထူးသျဖင့္ တ႐ုတ္ျပည္မွာ) အသံုးမ်ားၿပီးသား ပါ။ ရွင္းပါတယ္ ကိုယ္သံုးသေလာက္ ကိုယ္ရွင္းေပါ့။ သာမန္မီတာေတြနဲ႔ ကြာျခားခ်က္က တစ္လံုးခ်င္းကို လိုက္ဖတ္ေနစရာမလိုပဲ Group လိုက္ကို (wireless နည္းပညာတစ္ခုခု သံုးၿပီး) လိုက္ဖတ္သြားတဲ့ Digital Meter အမ်ိဳးအစားပါ။ Bi-directional engery meter ကအေနာက္ႏိုင္ငံေတြက စတင္ၿပီး ေခတ္စားေနတဲ့ စတိုင္လ္ေပါ့ဗ်ာ။

သေဘာတရားက Solar panel, Wind turbine ေတြကို အိမ္ေတြမွာတပ္ထားတယ္ (တစ္အိမ္လံုးေပါ့ဗ်ာ)။ ေန႔ပိုင္းဆိုရင္ electricity အသံုးနဲတဲ့အတြက္ (႐ံုးသြားၾကတာမ်ားသကိုး) အဲ့ဒီ solar, wind ေတြက ရတဲ့ စြမ္းအင္ကို အစိုးရ၊ ကုန္ပနီ ေတြကို ျပန္ေရာင္းတယ္ (Main power grids နဲ႔ တိုက္႐ိုက္ ခ်ိတ္ဆက္ထားေလ့ရွိတယ္)။ ညပိုင္းက်ေတာ့ အဲ့ဒီ grids ေတြကေန electricity ျပန္ဆြဲတယ္။ သေဘာက 2 ways ေပါ့ (အေရာင္းနဲ႔ အ၀ယ္)။

Bi-directional E-meter (ပံုစံက uni နဲ႔ အတူတူပါပဲ)

ေနာက္ပိုင္း solar, wind စတဲ့ renewable energy ေတြကို တစ္ႏိုင္တစ္ပိုင္ သံုးလာၾကရင္ bi-directional energy meter ေတြေခတ္စားလာလိမ့္မယ္ လို႔ယူဆရေၾကာင္းပါ။ စလံုးအေနနဲ႔ ျဖစ္ႏိုင္ေျခအေတာ္နဲပါတယ္။ ထိုစြမ္းအင္ေတြ ေပါမ်ားစြာရႏိုင္ေသာ ကၽြန္ေတာ္တို႔ ႏိုင္ငံမွာ (ဘယ္ေတာ့မွန္းမသိေသာ) တစ္ခ်ိန္ခ်ိန္မွာ ေခတ္စားလာလိမ့္မယ္၊ ေအာင္ျမင္လာလိမ့္မယ္လို႔ ေမွ်ာ္လင့္ရေၾကာင္းပါ။


Saturday, 13 February 2010

GSM/ GPRS (General packet radio service) Data Network Usage

ကမာၻေပၚမွာ ဘယ္ႏိုင္ငံ၊ ဘယ္ေနရာမွာေရာက္ေရာက္ ဆက္သြယ္လို႔ အဆင္ေျပဆံုးက GSM Network ပါ။ ႏိုင္ငံတိုင္းလိုလိုက Service Provider က GSM service နဲ႔ GPRS Data service ေတြကို ေပးေလ့ရွိပါတယ္ (ကၽြန္ေတာ္တို႔ ႏိုင္ငံေတာ္မွာေတာ့ မေပးပါ)။
ဥပမာ - ကၽြန္ေတာ့္ Device ေတ
ြကို ၾသဇီ၊ ဥေရာပ၊ ယူအက္စ္၊ ေဟာင္ေကာင္၊ စလံုး အကုန္လံုးမွာထားၿပီး အကုန္လံုးကို စကၤာပူကေန ထိန္းခ်ဳပ္ခ်င္တယ္ ဆိုပါစို႔။ အဲ့ဒီ Device ကလည္း WiFi မရွိတဲ့ ေနရာေတြမွာ ရွိခ်င္လည္း ရွိမယ္ဆိုပါစုိ႔ (WiFi က တစ္ၿမိဳ႕လံုးမွာ ရွိေနဖို႔ဆိုတာ ျဖစ္ႏိုင္ေျခနဲတာကိုး)။ အဲဒီအခါမ်ိဳးမွာ GPRS data network ကိုသံုးရပါတယ္ (ၿမိဳ႕ထဲမွာ ကေတာ့ GSM Network မိေနမွာပဲကိုး)။
ေအာက္မွာ GPRS Network ရဲ့အလုပ္
လုပ္ပံုအၾကမ္းကို ျပထားပါတယ္။ က်ေတာ့ Device ေတြက PDA လိုေကာင္မ်ိဳးေလးေတြပါ။ သက္ဆိုင္တဲ့ Data ေတြကို စုေဆာင္းထားၿပီး GPRS ကေန Database server ကို ျပန္ပို႔ပါတယ္။ က်ေတာ့ Device မွာသံုးထားတဲ့ GSM/ GPRS Module က SIM3XX series ပါ။ အဲ့ဒီ အေၾကာင္းကို ဆက္ေရးပါမယ္။

Sample GPRS Network Operation

SIM300 GSM/ GPRS Module

RCM5400W ေနာက္ဆက္တြဲ (၁)

RCM54XX ေတြရဲ့အားသာခ်က္က Zworld http mini server ေလးထဲ့လို႔ရပါတယ္။ ဒါေပမယ့္ အဲ့ဒီ Server ရဲ့ Foot Print က အေတာ္ႀကီးတဲ့အတြက္ တစ္ကယ္တမ္း အေသအေၾကသံုးၾကစတမ္းဆိုရင္ Storage Area မ်ားတဲ့ (၂ ဆ၊ ေစ်းလည္း ပိုပါတယ္) RCM5450 လိုေကာင္နဲ႔မွ အဆင္ေျပလိမ့္မယ္။ က်ေတာ္သံုးတဲ့ ပံုစံက FTP server ကို အဲဒီထဲမွာ ထဲ့ၿပီးေတာ့ Wireless Filer Transfer ေလာက္ပါပဲ။ http server ကို သံုးဖို႔ စဥ္းစားေပမယ့္လည္း Port forwarding ကိတ္စေတြမွာ ျပသနာရွိေနတဲ့အတြက္ တိုက္႐ိုက္ Data Access လုပ္တဲ့နည္းကို ေမ့ပစ္ၿပီး FTP နည္းစံနစ္ကို သံုးလိုက္ရတာပါ။

အားသာခ်က္ ေနာက္တစ္ခုက Embedded WiFi Module ျဖစ္တဲ့အတြက္ DHCP ကိုသံုးလို႔ရပါတယ္။ အရင္ 3700 ကေတာ့ Static IP ပဲ အဆင္ေျပပါတယ္။

Ref : http://www.rabbit.com/products/rcm5400W/


Introduction of RCM5400W

RCM5400W ကိုႀကိဳက္မိတာ ဒီရက္ပိုင္းမွပါ။ အရင္က်ေတာ္သံုးေနက်ေကာင္က RCM3700, 3720 ေတြ။ 3700 ေတြရဲ့အားနည္းခ်က္က သူ႔မွာ Ethernet Port ေတာ့ပါတယ္ ဒါေပမယ့္ ခုေနာက္ပိုင္းမွာ WiFi ေတြကိုပဲအဓိကထားၾကတာကိုး Cable ေတြကအဆင္မေျပေတာ့ေတာ့။ အဲ့ေတာ့ ဒီေကာင့္ကို အခုသံုးေနတဲ့ပံုစံက Acksys Wifi (Bridge) Card ကို ထပ္ထဲ့ေပးေနရတယ္။ Acksys က ေစ်းႀကီးတဲ့အျပင္ Setting လည္း ခ်ခ်ေပးေနရတာေၾကာင့္ ထပ္ရွာလိုက္တဲ့အခါ RCM5000 series ကိုေတြ႔တာပဲ။ ေနာက္ပိုင္းေတြမွာ b/ g အထိရလာေတာ့ အဲ့ေကာင္ကို ေနာက္ပိုင္းမွာ သံုးဖို႔ ဆံုးျဖတ္လိုက္တယ္။ ေစ်းကေတာ့ ၂ ဆေက်ာ္ရွိတယ္။


RCM5400W (Rabbit Core Module)

Saturday, 11 April 2009

XBee's AT commands and API command frame

XBee (Series 2, PRO) ကိုသံုးတဲ့အခါမွာ သူ႔ကို ခိုင္းဖို႔အတြက္ Command ေတြရွိပါတယ္။ သူ႔မွာက Command Mode ၂ ခုရွိပါတယ္။ AT နဲ႔ API ပါ။ သူတို႔ေျပာထားတာကေတာ့ AT mode က default mode လို႔ဆိုေပမယ့္။ ကၽြန္ေတာ္အခုသံုးတဲ့ မွာေတာ့ default က API mode ျဖစ္ေနပါတယ္။ အဲဒါနဲ႔ ကၽြန္ေတာ္လည္း API ကိုသံုးၿပီးပဲ ဆက္ေရးပါတယ္။

တစ္ကယ္ကေတာ့ AT mode က AT command ေတြကို တိုက္႐ိုက္ေပး႐ံုပါပဲ။ သူ႔ရဲ႕ command format က ဒီလိုပါ။

API ကက်ေတာ့ သူကိုယ္ပိုင္ frame ထဲကို AT command ေတြထည့္လိုက္တာပါပဲ။ API frame ရဲ႕ပံုစံက ဒီလုိပါ။

ဒါေပမယ့္ data ေတြကို ပို႔တဲ့အခါမွာေတာ့ API frame ကိုသံုးကိုသံုးရပါတယ္။ ဆိုလိုခ်င္တာက AT mode က XBee ကို လိုအပ္တဲ့ setting ေတြခ်ေပးတဲ့အခါမွာပဲ သံုးပါတယ္။ ဥပမာ - နာမည္ (ID) ေပးတာတို႔၊ (Channel, Power level) ၾကည့္တာတို႔အတြက္ပါ။
XBee ရဲ႕ User Manual ကို ေဒါင္းခ်င္ယင္ ဒီမွာ ယူပါ။

Friday, 13 March 2009

Create Free iTunes Account without Credit Card

Jailbreak လုပ္ထားတဲ့ ဖုန္းေတြအတြက္ေတာ့ iTune Account လိုအပ္ပါတယ္။ ဘာလို႔လည္းဆိုေတာ့ iPhone Crack application ေတြကိုထည့္တဲ့အခါမွာ ကိုယ္သံုးမည့္ ကြန္ပ်ဴတာရဲ႕ iTune ကေန application တစ္ခုကို အနည္းဆံုး download and install လုပ္ေပးရပါတယ္။ မလုပ္ေပးခဲ့ရင္ ဖုန္းထဲကို crack application ေတြ ထည့္လိုက္ေသာ္လည္းပဲ ဖြင့္လို႔မရဘူးလို႔ လာေျပာေနပါလိမ့္မယ္။ တစ္ကယ္လည္း မရပါဘူး။ (ဒီျပသနာက ကၽြန္ေတာ္ ၂ ရက္ေလာက္ ၾကံဳခဲ့ရတဲ့ ျပသနာပါ။)
ခုေျပာမွာက iTune account ကို Credit card မလိုပဲလုပ္လို႔ရတဲ့နည္းပါ။ အျပင္ကလူေတြအတြက္ Credit/ Debit card မခက္ေပမယ့္ ျမန္မာကလူေတြကေနနဲ႔က free လိုအပ္ပါတယ္။ နည္းကေတာ့ လြယ္ပါတယ္။

၁။ iTune ကို download/ Install လုပ္ၿပီး ဖြင့္လိုက္ပါ။

၂။ Country မွာ US ကိုေရြးပါ။ တစ္ျခားႏိုင္ငံေတာ့ မစမ္းဘူးဘူး။ US ကေတာ့ cards မရွိပဲ လုပ္လို႔ရပါတယ္။ Singapore, Thai, ... ေတြ ဆိုရင္ေတာ့ မရပါ။


၃။ Free ေပးတဲ့ application တစ္ခုခုကို ေရြးလိုက္ပါ။ Account မလုပ္ရေသးတဲ့အတြက္ New Account Register လုပ္မယ္ဆိုတာကို ႏွိပ္ပါ။

၄။ ေအာက္က ပံုေလးေတြအတိုင္းလိုက္သြားၿပီး Credit card ေရြးတဲ့ေနရာေရာက္ရင္ None ကိုေရြးပါ။ က်န္တာေတြကိုေတာ့ လည္သလိုသာထည့္လိုက္ပါ။

၅။ ၿပီးသြားတဲ့အခါမွာ ခုနေရြးထားတဲ့ application ကိုသူ႔ဟာသူေဒါင္းပါလိမ့္မယ္။ ၿပီးသြားရင္ ႀကိဳက္တဲ့ crack application ေတြကိုထည့္သံုးလို႔ရပါၿပီ။

(crack application ေတြ ထည့္လို႔ရေအာင္ ဖုန္းကို MobileInstallation patch လုပ္ရပါေသးတယ္။ ေနာက္တစ္ပို႔စ္မွာ ထပ္တင္ပါဦးမယ္။)


Jailbreaking iPhone with QuickPWN 2.2.5

Jailbreak ဆိုတာေတာ့ ဘာလည္းလို႔ မေရးေတာ့ဘူး။ သိၿပီးသား ျဖစ္ၾကဖို႔မ်ားပါတယ္။ ကၽြန္ေတာ္ေျပာမွာက iPhone ကို Jailbreak လုပ္တဲ့နည္းပါ။ တစ္ကယ္ကေတာ့ သိပ္မခက္ပါဘူး။ ဒါေပမယ့္ စလုပ္ရင္ေတာ့ ေၾကာင္တတ္ပါတယ္။ ကၽြန္ေတာ္အခုေျပာမည့္ နည္းေတြကေတာ့ ျမန္မာႏိုင္ငံက လူေတြအတြက္လည္း အဆင္ေျပမည့္နည္းပါ။ လိုအပ္ခ်က္ေတြကေတာ့ ...

၁။ ေဒါင္းလုတ္ လုပ္ရမည့္ Software မ်ား။ (QuickPwn, iPhone Firmware Version 2.2.1, WinSCP, MobileInstallation 2.2.1, iTune)
၂။ WiFi Access။ (ဒါကေတာ့ ျမန္မာႏိုင္ငံမွာ အခက္အခဲ နဲနဲရွိႏိုင္ပါတယ္။ ဒါေပမယ့္ ကၽြန္ေတာ္သိသေလာက္ တစ္ခ်ိဳ႕အင္တာနက္ ကေဖးေတြမွာ WiFi ရႏိုင္ပါတယ္။ အဲဒီကေနတစ္ဆင့္ သံုးရင္လည္း ရပါတယ္။)
၃။ iTune Account။ (ဒါကို ေနာက္ထပ္ ပို႔စ္တစ္ခုမွာ ထပ္တင္ေပးပါ့မယ္။ ရွည္သြားမွာစိုးလို႔ပါ။)
၄။ သံုးခ်င္တဲ့ iPhone Cracked Application မ်ား။ (အဲဒါေတြကေတာ့ ကိုယ္တုိင္ေဒါင္းခ်င္လည္း ရတယ္။ ရွိၿပီးသားလူဆီက ကူးသံုးရင္လည္း ရပါတယ္။ ကၽြန္ေတာ္ ေဒါင္းထားတာေလးေတြလည္း ျပန္တင္ေပးပါဦးမယ္။)
*** အေရးႀကီးတာတစ္ခုက ကိုယ့္ဖုန္းရဲ႕ Firmware version ကိုအရင္ၾကည့္ပါ။ တစ္ကယ္လို႔ Version 2.2.1 ထက္နိမ့္ေနခဲ့ရင္ iTune ကိုသံုးၿပီး Upgrade လုပ္ေပးပါ။ အဲဒီကိတ္စက ၾကာႏိုင္ပါတယ္။ ခုန Firmware 2.2.1 File ကိုသံုးၿပီးေတာ့ လုပ္ရင္လည္းရပါတယ္။ လုပ္တဲ့နည္းကို ကၽြန္ေတာ္ ထပ္တင္ေပးပါမယ္။ ***

ဒီပို႔စ္မွာ ၁ အတြက္အရင္ ေရးပါမယ္။ နံပါတ္ (၁) အတြက္ လင့္ေတြကေတာ့ ...
QuickPwn 2.2.5, iPhone Firmware Version 2.2.1, WinSCP, MobileInstallation 2.2.1, iTune

အဲဒါေတြရၿပီဆိုရင္ ပထမဆံုး QuickPwn ကိုဖြင့္ပါ။ ေအာက္ကပံုေပၚလာပါလိမ့္မယ္။

iPhone ကိုကြန္ပ်ဴတာမွာ တပ္ထားၿပီးရင္ OK ႏွိပ္ၿပီး Button မွ်ားေလးထပ္ႏွိပ္လိုက္ပါ။ ေအာက္ကပံုထပ္ေပၚလာမယ္။ (အမွန္ျခစ္အစိမ္းက ခုအခ်ိန္မွာ မေပၚေသးပါ။)

အဲဒီမွာ Browse ထဲကေန ခုနေဒါင္းထားတဲ့ iPhone Firmware Version 2.2.1 ဖိုင္ကို လင့္ေပးလိုက္ပါ။ ခနေစာင့္လိုက္ရင္။ ဖုန္းေပၚမွာ အမွန္ျခစ္ေလး ေပၚလာၿပီး မွ်ားကို ဆက္ႏွိပ္ပါ။ ေအာက္က ပံုထပ္ေပၚမယ္။ Install Cydia, Install Installer ကို ေရြးပါ။ ၿပီး မွ်ားကို ႏွိပ္ပါ။

မွ်ားေလးကိုပဲ ထပ္ႏွိပ္လိုက္ပါ။ ေနာက္ Screen တစ္ခုထပ္ေပၚလာမွာပါ။ အဲဒီထဲမွာပါတဲ့ အဆင့္ေလးေတြအတိုင္း ခလုတ္ေလးေတြ ႏွိပ္သြားပါ။

- Recovery Mode ထဲ၀င္သြားဖို႔ ခနေစာင့္ပါ။ (ေရာက္သြားတဲ့အခါ ေနာက္အဆင့္တစ္ခုကို အလုိလို ေျပာင္းသြားပါလိမ့္မယ္။)
- Home button ကို 5 seconds ႏွိပ္ထားပါ။
- Home ကို မလႊတ္ပဲ Power Button (Wake-up button) ကို 10 seconds ထပ္ႏွိပ္ပါ။ ႏွိပ္ထားပါ။ (အဲဒီအခ်ိန္မွာ ဖုန္းက restart ခနျဖစ္သြားပါလိမ့္မယ္။ ဂ႐ုမစိုက္ပါနဲ႔။)
- Power ကိုလႊတ္လိုက္ၿပီး Home ကို 20 seconds ႏွိပ္ထားပါ။ (ဒီအဆင့္ေတြက သူ႔ထဲမွာလည္း အလိုလိုေျပာင္းသြားတာပါ။ မွတ္စရာေတာ့ သိပ္မလိုလွပါဘူး။)
- အဆင့္အားလံုးမွန္ရင္ သူ႔ဟာသူ ဆက္ၿပီး Jailbreak လုပ္ေနပါလိမ့္မယ္။ ၿပီးသြားရင္ ေအာက္ကပံုအတိုင္း ျဖစ္သြားပါလိမ့္မယ္။ (မမွန္ရင္ေတာ့ ျပန္စရမွာေပါ့။)

ဖုန္းမွာေတာ့ ေအာက္ကပံုေလးေတြ အဆင့္ဆင့္ေပၚေနပါလိမ့္မယ္။ ကိုယ္က ဘာမွဆက္လုပ္စရာ မလိုေတာ့ပါဘူး။













ေနာက္ဆံုးမွာ ဖုန္းက Restart ျဖစ္သြားၿပီး Cydia နဲ႔ Installer ဆိုတဲ့ icon ၂ ခု အပိုပါလာပါလိမ့္မယ္။ ဒါဆို Jailbreak လုပ္တာၿပီးသြားပါၿပီ။ Cydia store ထဲမွာ Free ေပးထားတဲ့ application ေလးေတြ အမ်ားႀကီးပါပါတယ္။ Vido Recording, Blacklisting, Forward mail စတဲ့ Application ေလးေတြ Free ေပးထားပါတယ္။

iPhone Cracked Applications တင္တဲ့ ကိတ္စကို ကၽြန္ေတာ္ေနာက္ ပို႔စ္တစ္ခုမွာ ထပ္တင္ပါမယ္။
(iPhone Buttons and Interface)
“ လုပ္နည္းေတြကို သင္ေပးတဲ့ ကိုေက်ာ္မ်ိဳးလိွဳင္ ကိုေက်းဇူးပါ။ ”

Tuesday, 10 March 2009

Key Bouncing Problem on Switches and How to Debounce

Bouncing problem ဆိုတာကေတာ့ Embedded application ေတြမွာ ျဖစ္တတ္တဲ့ ကိစၥပါပဲ။ သေဘာကေတာ့ ခလုတ္ (switch/ key) ကို တစ္ခ်က္ႏွိပ္ေပမယ့္ pulse ေတြအမ်ားႀကီး ၀င္သြားတဲ့ ျပသနာပါ။ Keyboard ခလုတ္ ကပ္သြားသလို ျဖစ္တာေပါ့။ အဲဒါကို key bouncing လို႔ ေခၚပါတယ္။ အဲဒီ ျပသနာကို ျပန္ေျဖရွင္းတာကိုေတာ့ debouncing လို႔ေျပာတာေပါ့။

Microcontroller application ေတြမွာ Debounce လုပ္တဲ့နည္း ၃ မ်ိဳးရွိပါတယ္။
၁။ ပထမဆံုး Key (pulse) တစ္ခ်က္ ႏွိပ္တာကိုပဲ အတည္ယူပါ။ ေနာက္ထပ္ ၀င္လာတဲ့ pulse ေတြကို ignore လုပ္ပစ္ပါ။ (ေနာက္ထပ္ Key မလႊတ္မခ်င္း လုပ္ငန္း မၿပီးေသးဘူးလို႔ သတ္မွတ္ၿပီး ဘာမွဆက္မလုပ္ပဲ ရပ္ (nop) ထားပါ)
၂။ တစ္ခ်က္ႏိွပ္ၿပီး ခနေစာင့္ေနပါ။ ( ၁ စကၠန္႔၊ ဒါမွ မဟုတ္ ၀.၅ စကၠန္႔ေပါ့။ Switch ရဲ႕သဘာ၀ေပၚမူတည္ၿပီး ေစာင့္ရတဲ့ အခ်ိန္ကို ညွိပါ)
၃။ ပထမ Key တစ္ခ်က္ႏိွပ္ရင္ အလုပ္လုပ္ၿပီး ဒုတိယ Key တစ္ခ်က္မႏွိပ္ခင္အထိ ေစာင့္ခိုင္းထားပါ။

Bouncing ကို Hardware ေရာ Software ေရာနဲ႔ ထိန္းလို႔ ရပါတယ္။ Software နဲ႔ကေတာ့ ပိုလြယ္ပါတယ္။ Hardware နဲ႔ဆိုရင္ေတာ့ ေအာက္မွာ ျပထားတဲ့ အတုိင္း တပ္ဆင္ၿပီး ထိန္းလို႔ရပါတယ္။ HCF4093 ကေတာ့ အိုင္စီပါ။

Software နဲ႔ဆိုရင္ေတာ့ ေအာက္မွာ ျပထားတဲ့အတိုင္း ေရးလို႔ရပါတယ္။ ဒီ program မွာက active low ကိုယူထားပါတယ္။

//////////////////////////////////////////////////////////////////////
void init_ports(void) {
TRISIO = (1<<5);>// set as output except bit 5 GP5=i/p

//////////////////////////////////////////////////////////////////////
int get_key(void) {

// Is GP5 low - no so exit
if (GPIO & (1<<5))>

delay_ms(1); // wait for key to settle

// Is GP5 high ? yes so exit = false key.
if ( (GPIO & (1<<5))>0 ) return 0; // was a false key so restart

return 1; // key ok so return valid
}
//////////////////////////////////////////////////////////////////////

Monday, 16 February 2009

RTC, Timer And External Oscillator

RTC နဲ႔ TIMER ေတြ အေၾကာင္းကို ကၽြန္ေတာ္ ခဏခဏ ေရးေလ့ရွိပါတယ္။ အခုေျပာျပခ်င္တာက RTC ကို Timer နဲ႔ေရးတဲ့အခါ လိုအပ္တဲ့ လိုအပ္ခ်က္ေတြပါ။ အမ်ားအားျဖင့္ RTC သံုးခ်င္တဲ့အခါ External RTC chip ကိုသံုးေလ့ ရွိၾကပါတယ္။ ဒါေပမယ့္ Hardware overload ကိုေလွ်ာ့ခ်ခ်င္တဲ့ အခါမွာျဖစ္ျဖစ္၊ Boom Price ကိုေလွ်ာ့ခ်င္တဲ့အခါမွာ ျဖစ္ျဖစ္ RTC ကို routine ေရးၿပီးသံုးၾကပါတယ္။

အဲဒီအခါမွာ Timer တစ္ခုကို သံုးၿပီး ေရးရပါတယ္။ ေအာက္မွာ RTC ေရးရတဲ့ Assembly source codeကို ျပထားပါတယ္။ C language အျဖစ္လည္း ေျပာင္းၿပီးေရးလို႔ရပါတယ္။ ဒါေပမယ့္ RTC routine အမ်ားစုကို Assembly ေရးေလ့ရွိပါတယ္။ Instruction cycle ကိုေလွ်ာ့ခ်ခ်င္လို႔ပါ။

အဲလို ေရးတဲ့အခါမွာ Timer ရဲ႕ အခ်ိန္ကို တိက်ေအာင္ External Crystal (Oscillator) တစ္ခုကို ခ်ိတ္ဆက္ေပးရပါတယ္။ ေအာက္မွာ ျပထားတာကေတာ့ Timer1 ကိုသံုးၿပီးေတာ့ RTC routine ကိုေရးတဲ့အခါ လိုအပ္တဲ့ Crystal ခ်ိတ္ဆက္ေပးရတဲ့ ပံုပါ။



Friday, 6 February 2009

PIC18F85J90 Plug-In Module

TQFP (Thin Quad Flat Pack) MCU ေတြနဲ႔ အလုပ္လုပ္တဲ့အခါ။ Mass production (standard PCB လုပ္ၿပီးတဲ့အခါ) မွာေတာ့ သိပ္စဥ္းစားစရာ မလိုေပမယ့္ R & D လုပ္တဲ့အခါမွာေတာ့ တစ္ခ်က္စဥ္းစားရပါတယ္။ အဲဒါက TQFP ေတြက prototype PCB ေပၚမွာ solder လုပ္ဖို႔ အရမ္းခက္ခဲပါတယ္။ ရတယ္ထားဦး ၾကာမယ္ေလ။ အဲဒီေတာ့ သူ႔အတြက္ Daughter board (Plug-In Module) ေတြရွာရပါတယ္။ အဲဒီ Module ေလးေတြက Demo, Evolution Board ေတြမွာတပ္သံုးတာပါ။ ရွိရင္ေတာ့ အိုေကပါတယ္။ မရွိရင္ေတာ့ prototype board မွာပဲရေအာင္ solder လုပ္ရမွာေပါ့။ ဒါကေတာ့ အလုပ္ကေလး တစ္ခုလုပ္ဖို႔ ကၽြန္ေတာ့ အတြက္လိုအပ္တဲ့ PIC18F85J90 PIM ပါ။ သူက I/ O pin ေတြကို ေနာက္ေက်ာမွာ ထုတ္ေပးထားတဲ့အတြက္ က်န္တဲ့ Device ေတြနဲ႔ I/ O pin ေတြကေနတစ္ဆင့္ ဆက္ေပး႐ံုပါပဲ။ ဒီ Module ကေတာ့ LCD Interface အတြက္အဓိကပါ။

သတိထားရမွာက Interface တစ္ခုခ်င္းစီအတြက္ အဓိကထားၿပီး PIM ေတြက ရွိတတ္ပါတယ္။ ၀ယ္ရင္ေတာ့ ေသခ်ာစစ္ၿပီးမွ ၀ယ္သံုးပါ။