Particle Photon 的IoT 基因

在Maker運動興起以後,3D Pinter以及DIY機器人相繼成為熱門的話題,而物聯網( Internet of Thing, 以下簡稱IoT) 則是另外一個熱門的話題之一。物聯網雖然目前並沒有一個統一的通訊協定或者規格,但是基本上能夠連上網路的設備就可以稱為是IoT設備。而各家廠商在看到IoT的這股浪潮當中也不斷推出各類不同的晶片組能夠幫助Maker以及專業人士開發IoT的專案。
說到開發IoT專案,就不得不提到Particle 開發的Photon。Photon算是一款在台灣Maker界較少被提起的開發版。Photon本身設計的主要目的就是針對開發IoT設備所必要的功能而設計出來的。這也意味著,WiFi是Photon主打的強項。

如果以規格來看,Photon所使用的MCU是以STM32F205為基礎去開發的,想像一下,你的MCU有1 MB的 flash以及128KB 的RAM,加上120Mhz的時序,你能夠在這個晶片上做的事情已經多到無法想像了。由於Photon本身所具備的條件就已經很好了,加上有Wi-Fi模組的加持,因此造就了Photon本身在IoT專案開發上極佳的先天優勢。

依照我自己的使用經驗來看,在使用Particle的Photon開發IoT的設備,可以說是無往不利,Particle Photon的P0模組已經包含了所有必要的功能,像是WiFi以及支援加密通訊協定,這讓Photon本身所具備的優勢更加如虎添翼,而使之優於其他市面上許多的開發版。除此之外,Photon還有本身具備的RTOS(Real Time Operating System: 即時作業系統),所以在開發原型的過程當中已經省去許多在記憶體管理上不必要的麻煩。
Photon的硬體,韌體到行動設備的App都是開放源,如果使用者想重新設計自己的電路或者App,這完全不會產生任何的限制。而在Photon 的程式編寫上面來說,語法本身是C/C++的語法,加上其編寫的方式與Arduino完全一樣,這讓原先使用Arduino的開發者以及Maker都可以輕易的轉換到Photon上,這樣大幅降低了轉換系統所要突破的難度壁壘。

由於 P0模組本身是可以單獨購買的,如果你需要做一塊與Photon韌體相容的商品,以現成的WiFi功能上來說,已經無形中省下許多時間。加上P0模組本身的價格相當划算(美金:$10),所以在開發新的商品上來說,時間與金錢的成本都已經大幅的降低了。這對新創公司來說,是特別有利的條件。
說了這麼多Photon的優點,好像這個商品本身都萬無一失一樣。但是一個產品總是會有一些缺點,依照我自己開發一家公司的IoT設備來看。Photon本身最好是可以透過Mac OS X或者Linux的Terminal 來執行CLI(Command Line Interface)程式碼的編譯會比較方便, 因為Photon自己提供的Web Compiler會有無法連線的顧慮,加上Particle 本身的雲端圖表的服務有很多時候無法按照需求來顯示數值甚在數值傳送的過程還會造成資料遺失,這些問題也都讓Paricle本身的雲端服務優勢大打折扣。但是開放硬體以及開放軟體的本質,讓許多專業人士以及非專業的人都可以藉由自身的能力把整套系統給完善,這是許多市面上的開發版所不及的部分。
