製作 iBeacon for Linux 版本

製作 iBeacon for Linux 版本

iOS7之後,apple提出一個室內定位的解決方案iBeacon,它利用藍牙低功耗(BLE)的通訊方式,進行接收訊號,經過訊號強度來辦別距離,所以iBeacon可以達成趨近偵測定位的功能,間接解決當初Apple未加入NFC時,產生的一些疑問。 但iBeacon究竟是怎麼完成的?其實它只是在藍牙發射的封包做一些結構,當收到封包時將它解成有義意的資訊。以下為iBeacon封包的結構,我們會在Linux製作出相容的封包完成iBeacon的功能,

藍牙Dongle

準備一支有支援Bluetooth LE功能的藍牙USB裝置,而且必需要相容Linux的Bluez Stack,這建議使用Broadcom的產品,經過實驗,使用CSR的藍牙4.0 Dongle似乎有些問題存在。

(閱讀全文…)

 藍牙 BLE CoreBluetooth 初探

藍牙 BLE CoreBluetooth 初探

藍牙

Bluetooth 4.0之後就將通訊模式分為高速及低速,低速低耗能簡稱為BLE,可以連接一些量測型的感測器類型像:心跳計、血壓…等,使得iDevice可以不用再使用Dock方式製作產品,也不需要再經過MFi認證才能與iDevice連接,如此一來可以增加APP型態的多元,也能間階的降低一些成本,如果想要跟BLE週邊連接,iOS 5之後提供corebluetooth framework與週邊連接,整流程中為DiscoverConnectExploreInteract,下面文章將會從iDevice連線至BLE周邊讀取資料為例子介紹。

Discover/Connect

依照箭頭方向由上而下為順序依序完成Discover、Connect流程。

(閱讀全文…)

 CocoaPods新功能:Pod Try,使用Pods先執行範例程式

CocoaPods新功能:Pod Try,使用Pods先執行範例程式

前言

CocoaPods 0.29 已經更新一段時間,但它這次提供一個新的功能Pod Try,使用開發者提供的Pods時可以使用這個命令執行Demo程式了解這個Pod的功能,這可以改善開發者在發行Pod時,通常只有寫上一般文件及提供幾張擷圖後,使用的開發者卻不知道如何使用的問題。

(閱讀全文…)

 Pods Demo – CircularSliderDemo

Pods Demo – CircularSliderDemo

名稱 CircularSlider
適用版本 iOS7
原始碼 GitHub
授權 MIT

說明

CircularSlider 有三種顯示的方式提供,第一種是純單一數值顯示方式,第二種採用階段性索引顯示,最後一種是時間表示方式,直接整個範例下載後就會有這三種的展示方式。

CircularSlider 可以用手勢調整數值,就像範例擷圖滑鼠指標一樣的手勢,如果怕在調整過程中手勢不好調整,還可以利用上、下箭頭調整更細的細節。經由宣告的初始化方式來決定你要用的類型,並使用initWithFrame來決定Slider的顯示位置,之後再將整個View加入主要 的View。

上圖中可以用箭頭調整顯示的值。

(閱讀全文…)

 cp 拷貝檔案有進度顯示

cp 拷貝檔案有進度顯示

Linux下使用cp指令拷貝檔案時,往往都會不確定檔案在何時拷貝完成或是狀態如何?如何時使才能像Windows一樣有類似的狀態顯示?如果只靠cp的指令參數是無法達成的,下面的列子是利用rsync功能完成的方法:

方法1:

rsync -avP /來源目錄名稱 /目的路徑/

(閱讀全文…)

 ESXi VM 使用實體硬碟

ESXi VM 使用實體硬碟

前言

不管是實體進行虛擬化之後或是虛擬化之前,原有硬碟資料使用上除了可以將檔案備份至虛擬硬碟環境中使用,還可以直接將實體硬碟給虛擬機器使用,使用上也是利用vmkfstools並配合命令z來完成它。

使用實體硬碟時必需要建立與實體硬碟溝通的方式,所以使用工具建立一個.vmdk中介檔,它與虛擬硬碟提供的.vmdk是一樣,但它只是個中介檔,命令如下:

vmkfstools –z [硬碟掛載路徑] [產生連結的vmdk檔案]

(閱讀全文…)