2019年4月28日 星期日

MacBook Air更換SSD教學 - 不用三千直上512G

難以擴充/升級算是MacBook系列的一大特色,但是舊款的MacBook Air與MacBook Pro其實還是有一些改裝的空間,本篇便以2018款的Macbook Air為例,介紹如何更換Macbook Air的SSD。

注意事項

1. 拆機之後會失去保固
要更換SSD勢必要把電腦拆開,在此提醒保固期還沒到的朋友不要輕易嘗試,否則省了儲存空間的錢卻失了維修費。

2. 並非每一款SSD都相容
舊版的macOS系統並不支援NVMe SSD,因此有考慮要更換SSD的朋友請先把自己的MacBook更新的最新版本(撰寫這篇文章時macOS版本為Mojave)。

哪些MacBook可以這樣換?

基本上,非Retina的MacBook Air跟非蝶型鍵盤的MacBook Pro都可以換,但MacBook型號百百種,在照著這篇教學更換SSD之前建議先去Google "ifixit [你的MacBook型號] teardown"來看這款MacBook的SSD是否可以拆卸,並且順便學一下如何把自己的MacBook拆開,更換SSD時會比較得心應手。

需要用到哪些材料?

1. 一張M.2 NVMe PCIe SSD
Macbook air原裝的SSD廠牌為三星,據傳如果新裝上去的SSD品牌不是三星的話會有睡眠死機的問題。然筆者不信邪仍然選擇威剛出產的xpg sx8200 pro 512GB這款SSD,使用了兩個多月到目前都沒遇到什麼問題。

▲本次拿來更換的SSD

2. 一張SSD轉接卡
由於Macbook air使用的SSD是特殊規格,一般的SSD連接時需要額外使用轉接頭才能使用,這種轉接卡網路上很容易買到,關鍵字用"Mac ssd 轉接"通常就可以找到對的東西。

▲我用的是這款轉接卡,在蝦皮上的商品標題為底下這個,淘寶也不少人在賣
MAC SSD轉接卡 M.2 NGFF轉MAC 2014/15 Macbook AIR A1465/1466 NVME

3. 一個夠大的行動硬碟
為了讓舊硬碟裡的資料可以搬運到新的硬碟上,這裡使用Macbook自帶的Time Machine功能將整台電腦備份到行動硬碟中。因此,需要的行動硬碟大小取決於舊硬碟中的資料量,大約準備一個舊資料量1.5倍大的行動硬碟就已足夠。

4. 五星、六星起子
這兩把起子大概是這四樣材料裡面最難找到的,坊間很多五金材料行或是電子材料行都不一定能找到尺寸剛好合適的起子,建議可以買一組有各種尺寸的起子組,免得買來發現尺寸不合要再多跑一趟。

▲這組就剛好兩個需要的起子都有,很方便


更換流程

1. 用Time Machine備份你的Macbook (需三小時)
這個部分就不詳述,只要插上行動硬碟,打開Time Machine照著提示步驟做下去接著只需等待它備份完成就行了,等待備份的過程相當費時,建議早點做好這個步驟。

2. 將新的SSD換上去 (需五分鐘)
備份完成後,先將電腦關機,接著就可以拿出事前準備好的SSD、轉接卡、起子來把新硬碟裝上去。
首先將被蓋拆除,拔電電源線,將舊的SSD取下。
▲記得把左邊的電源線先拔除,再將SSD拆下

將SSD接在轉接卡上並插入原本位置,把電源線插回,最後鎖回背蓋就完成了。
▲換上另一顆SSD,電源線插回,準備裝上背蓋

在拆解過程遇到問題可以參考ifixit的拆解教學,或是參考這則YouTube影片。


3. 硬碟分割、還原舊資料 (需一個半小時)
請先插上用來備份的行動硬碟,接著按住option鍵開機。開機後會進入一個選擇網路連線的頁面,選好Wi-Fi網路後即可開始進行Online Recovery。
▲等待下載......

這段時間它會上網下載修復用的一些資料,整個傳輸的資料量蠻大的,建議使用網速較快的Wi-Fi環境進行這個操作。
下載完成之後會進入macOS Utilities的頁面,直接點選左上方狀態列的Utilities,並選擇Terminal打開終端機,輸入diskutil list這個指令確定剛剛插上的SSD有顯示在列表中。
▲進入macOS Utilities後直接打開Terminal


▲輸入diskutil list之後可以看到新硬碟已出現在/dev/disk0這個位置

抓到硬碟之後,接著進行切割硬碟的操作。這裡一樣是在Terminal中使用diskutil partitionDisk 硬碟代號 1 GPT JHFS+ 硬碟名稱 100%這個指令進行切割,如下圖所示,我使用的指令是
diskutil partitionDisk disk0 1 GPT JHFS+ macOS 100%

等到它出現"Finished partitioning on disk0"就代表完成了

使用command+w關閉terminal,再按command+q回到macOS Utilities頁面,選擇Restore From Time Machine Backup就可以將舊系統還原到新硬碟之中,整個還原過程大約會需要一個小時。

4. 打完收工
還原完畢之後可以開機確認一切是否正常,硬碟容量是否變大等等的,做到這一步基本上是功德圓滿了,可以把舊的SSD好好收起來免得新硬碟哪一天掛掉可以拿來備用。

結語

Macbook最讓人不滿意的點就是它後續升級困難重重,而且一開始購買時如果要升級儲存空間真的是貴到不行,從128GB升級到512GB就要花一萬元左右。坊間也有很多Macbook的儲存空間升級方案,不過價格也只比原廠便宜一些些而已,令人卻步。相較之下這次用不到三千元的價格就升級到512GB,瞬間讓人覺得MacBook的CP值好像蠻高的,有興趣的朋友不妨跟著流程操作自己DIY看看。
這些步驟大多是從網路資源學來的,然而用Terminal分割硬碟這個步驟還沒看到網路上有人這麼做,就筆者所知目前這個流程應該是所有更換SSD的方法中最簡單快速的,不需另外準備開機碟、Ubuntu碟等等,最後也附上一些當初的學習資源供大家參考,若有不清楚之處可以回覆發問。
▲另外使用Ubuntu來切割硬碟,比較繁瑣,但紀錄的很詳細

▲MacBook Pro + 美光1TB SSD的例子,一樣不會休眠死機

2018年5月21日 星期一

Buddy Meter破解 - 直接看答案教學 更新:改分數方法於留言中

最近在instagram上很熱門的BuddyMeter問卷,讓大家測試朋友們對他的暸解程度,但其實只要善用瀏覽器的Console功能,人人都能深入了解他

1. 首先前往BuddyMeter網頁並打開console

關於打開console的方式
*使用Chrome瀏覽器,在空白處按右鍵,選檢查(Inspect)


*或是使用firefox,一樣在空白處按右鍵,選檢測元素
*以下以Chrome為範例

2. 在Console中輸入"questionArray"並按下Enter

左邊的answer就是每一題的答案~

-- 以下為原理解析 --


上圖是這個網站的原始碼,可以看到每當按下一個選項時它就會呼叫"option_clicked"這個函式。
於是在原始碼中搜尋option_clicked
可以看到一開始就有一個if(questionArray[....])這樣的判斷式,而這個questionArray顯然很可疑,直接在console中print出來果真就得到答案。

2017年6月11日 星期日

RC522 RFID模組圖文教學2 - 使用Mifare白卡複製UID,拷貝門禁卡、學生證等RFID卡片

相信大家都曾有過弄丟感應扣、門禁卡的經驗,有許多鎖店也因此提供複製門禁卡的服務,但其實利用RC522這個RFID模組,自己在家就可以輕鬆複製卡片。
*本教學只複製UID資料,若自家門禁系統是讀取其他區塊的資料則仍然無法完全複製

1.所需器材
    (1)RC522 RFID模組

    (2)Arduino UNO或其他版本

    (3)可寫入Sector 0的Mifare白卡

*這種卡片比較特殊,雖然與市面上的RFID卡長相相同,但它留有"後門",使得UID可以被修改。要購買這種卡片可能須上網訂購,或者找有在販售的鎖店。

2.線路圖

3.Arduino程式
    (1)打開Arduino IDE,點選"檔案 -> 範例 -> MFRC522 -> ChangeUID"

*若尚未安裝MFRC522程式庫,請參考RC522 RFID模組圖文教學1

    (2)在"#define NEW_UID"後面打上想要複製的UID,在此以01 02 03 04為例

*若不知道要拷貝的卡片的UID,請參考RC522 RFID模組圖文教學1

    (3)將Arduino連接至電腦並上傳

4.拷貝卡片
    (1)打開"序列埠監控視窗"

    (2)將白卡靠近RC522.....

若出現上圖的結果,表示寫入成功!!

反之,若是出現像下圖這樣......

則表示這張卡的Sector 0並不能寫入,不是所謂的"白卡"

本教學在此告一段落,希望大家都能成功,如有任何問題都歡迎留言

RC522 RFID模組圖文教學1 - 使用Arduino讀取Mifare卡的UID與資料

生活中的門禁卡、悠遊卡,其實都使用了RFID,而Mifare公司所生產的卡片則是最為普遍。這篇教學將會使用Arduino中的MFRC522 Library輕鬆讀取RFID卡片的資料。

1.所需器材
   (1)RC522 RFID模組

    (2)Arduino UNO 或其他版本

    (3)RFID卡 (悠遊卡、一卡通、門禁卡等等)

2.線路圖

3.安裝MFRC522 程式庫
    (1)打開Arduino IDE,點選"草稿碼 -> 匯入程式庫 -> 管理程式庫"

    (2)搜尋"MFRC522",並安裝


    (3)安裝完成後,回到Arduino IDE並點選"檔案 -> 範例 -> MFRC522 -> DumpInfo"

4.將Arduino連接電腦,上傳完畢後打開"序列埠監控視窗"

用門禁卡接觸模組......

可以看到此卡片的UID為96 4D F5 93
*若什麼事情也沒發生,請確認模組與線路之間的連接是否正常

用悠遊卡接觸模組......

除了UID外什麼資料都看不到,因為悠遊卡的資料是有加密過的,需要特定密碼才能夠讀取

本教學在此告一段落,希望大家都能成功,如有任何問題都歡迎留言


2017年6月9日 星期五

ESP8266 Wi-Fi模組圖文教學 - 使用Arduino UNO進行Serial連接、AT指令輸入

在剛接觸ESP8266時,最容易遇到的問題就是接線,要用什麼東西才能與ESP用AT指令溝通。
筆者在剛接觸這個模組時也在這裡卡了許久,在此整理我使用的接線方式,供大家參考,希望能幫助到各位,如有問題也歡迎留言。

0.前置作業
先開啟Arduino IDE,在「檔案->新增」開啟一個空白檔案並上傳到Arduino,確保Arduino本身不佔據Serial連接。

完成後,打開Arduino 的序列埠監控視窗,右下角分別選擇為"NL & CR" 跟 "115200 baud",前置作業到此完成。
*有些版本的ESP8266可能會使用不同Baud rate,在接下來的步驟中若發生問題可能是Baud rate不同所導致


1.接線圖


將CH_PD與Vcc分別接至Arduino的3.3V腳位,GND接GND,TX、RX分別與Arduino的TX、RX(1、0腳位)連接。

2.完成連接後,視窗中應該會出現一些亂碼,最後會顯示ready字樣,表示ESP8266工作狀態正常

3.輸入 AT ,模組應會回傳 OK,到此大功告成!

同場加映

官方提供的AT指令列表:
*冗長但很詳細

網路上整理過後的常用列表:
*因AT指令版本不同有些指令可能無法使用