天天看點

OpenWrt開發者沙龍:ApFree微信路由劉登豐演講

  主持人:感謝何總的分享,那接下來是我們的重頭戲,是信路由的創始人,他對整個隻能路由的開發都有一些很精深的研究,我們現在就有請他來給我們介紹整個智能路的技術發展的趨勢和一些問題。

hoowa:用信路由好。這個大家要記住了,大概2005年2006年的時候我會經常參與一些開發語言類的會議,我也是第一次參加這個openwrt會議,因為之前也沒有,今天有了我就介紹一下,但是我這個人講東西大家要有心理準備,我的廢話比較多,經常講一講跑題,如果真的跑題了你們大家千萬别提醒我,我這個人特别小心眼兒,我還記住你要提醒我,就是他抄了我的圖,抄了我的話題你說我怎麼講?我這個話題講不下了,我想問問大家什麼是智能路由有沒有定義?這樣大家如果沒有人想講的話我就抓一個講,兄弟你說一下。

聽衆:智能路由現在比較火,無論是360還是阿裡還是小米,各個大公司都在做智能路由,到底什麼是智能路由呢?我想我給定義可能也不太準确,我隻能說它實作了一些我們所希望能夠自動實作的功能,我就把它叫做智能路由,大家夥這些公司都在搶路由器的入口,實際是什麼?是通道,在搶最後一次接入,我們現在移動網際網路的時候,最後一次接入是什麼?一個是營運商提供的資料鍊路由,另外一個就是wifi路由。這是我的解釋。

hoowa:你講得很對,我們要不再找一個人講,因為今天男的比較多,女的比較少,恰好離我這樣比較近還有一個女生。你來講一講,你認為什麼是智能路由?

聽衆:對,我們的豌豆就是智能路由。

hoowa:可以,講這個可以的。那你介紹介紹豌豆,因為我比較out。

聽衆:我感覺以前像傳統的路由器,就是作為一個網絡連接配接,但是現在智能路由我們可以做一些外設的東西,可以用它做自己想做的事情,當然可以用到wifi來,它的功能。

hoowa:謝謝謝謝,講得也很對。但是我覺得我站在這邊,男左女右,這邊是我的左邊,我在這裡講。我就說一點,從2012年下半年開始,以極路由為首的廠商,他們就開始去搞這個智能路由的概念,他們在推廣,在極力的向大家宣傳,我的智能路由很智能,智能1、2、3、4,我有好多智能的功能。我們從意義上來講,我們對路由器的劃分其實是劃分為功能路由和智能路由兩種的,所謂的功能路由,就是路由器當中的功能是固定的固定的,而路由器的硬體,隻是為現有固定的功能而設計的,而智能路由是指在上面可以使用各類通用的軟體,通用的硬體,去組合成不同想要做的産品或者不同的玩法,我們可能會有這樣一個考慮。但是跟何總講的不一樣,何總剛才已經把我否了。因為我現在自身,我接觸到的這些産品,以我的角度來看,我沒有說找到一個真正的智能,就是智能路由到底什麼地方智能了,什麼地方是它創造出來的,我沒有看到,所有的産品、所有的想法、所有的方案,市場上都有,玩家手裡也有,沒有什麼特别的地方。這是我拿到的一個圖表,我選了幾個,名字我就不提了。我們可以看一下,比如7620a用的人很多,還有用9344的,不過磊科的那個我是不知道用什麼晶片的。

點評我這裡面也寫了,360這款特性是安全,其實我不知道安全在哪裡,路由器怎麼安全得了?什麼時候路由器安全過?我們的路由器都很容易破解,不論多少強大的路由器,都很容易破解。果殼搞了一個帶螢幕的,有一個液晶屏,很高科技;小米牛逼帶閃電,我有一個螢幕。不過我記得好象頭幾年深圳有個廠家它的路由器也都帶螢幕,這玩意兒牛逼在哪兒呢?極貳,我沒搞清楚賣點在哪裡,這個說實話,了解不太多。是以這個先過去;磊科這個是最牛逼了,你看它産品叫什麼名字?磊科no,no,意思就是磊科的東西大家都不能買,不好用,那就no了;如意雲那個外型有點老土;小米那個東西最大的問題是發熱量太高了,它用的博通的處理器,那東西性能是很好很強型的,甚至可以用來打《紅警》,這個沒什麼問題的,《cs》能不能玩,這個我評估不了。

而且它上面有一個問題,它裡面有一個風扇,它産品最多的問題就在風扇上,這種風扇機械式裝置,他使用的是一個台灣廠商的裝置,這種風扇日本做得是很好的,問題在于,風扇如果使用超過一年以上,它的穩定性會下降,風扇不轉的幾率是非常非常高的,一旦風扇不轉,以他那款處理器,當機是很容易的,是以可改裝性,我們看看。改裝性就是360用的9344cpu可以差不多到1個g,它的處理器性能我記得應該是550兆;果殼可以改成家庭媒體音樂播放器,可以,因為有一個小螢幕,至少看一看現在放的什麼音樂;極貳不知道;磊科不知道;如意雲我也不知道;最好的是小米那個東西,可以改裝成電腦,它那個系統我進去看了一下,還是挺強的,帶一個cpu,有2核處理器,就可以改一改玩一玩;這些東西我為什麼先講呢?讓大家了解一下現有的産品到底有多少可玩性,真正這些東西能玩出來什麼花樣,我相信在座的各位可能以後可以玩出來很多花樣,不見得是我們玩出來花樣,因為我這個人不是太愛玩智能類型的東西。我用的手機都是好多年前淘汰的,因為我真的不願意用太智能的東西。

我們就簡單說一說openwrt,因為之前幾位老大都講過了,我發現都講過了之後我确實真的不好講;我們可以簡單說一下,它是一款專門為路由器cpu所設計的開源的作業系統,它的功能很豐富。這些廠商可以借由openwrt開發出智能路由的産品,原因是什麼?不是說這些廠商産品做得好,而是因為openwrt很強大,大家要意識到這一點,不是他們的産品做得好,因為産品不是他們做的,電路闆是有設計公司設計的;生産也有廠商去做的,那他們做了什麼事情?他們其實是有一個idea,想了一個想法,做了一個漂亮的界面,把一系列公關組織起來,去針對一些特定的市場去做。我這個圖畫得還是不全,這上面介紹了一些openwrt系統到底能做多少東西,我們可以看一下,它可以連接配接列印機做列印共享,可以連接配接攝像頭做監控做安防,連接配接電話機撥打電話,盡享通信,可以連接配接加濕器、空氣淨化器、電腦上網、手機、音箱,或者是通過3g、4g,無線上網。這些東西都是openwrt系統,它系統自身實作的功能。

大家可以看一下,openwrt裡面,大約已經內建了4000個服務類的人聯盟,這些服務類者聯盟可以滿足目前現有的大部分企業和個人愛好者,當然軟體包括品質是有待上升。是以說這些智能路由廠家的産品,我認為沒有什麼神奇的地方,沒有什麼讓你覺得它很強大。就像剛才羅未同學說的一樣,一個人,你隻要鼓搗這個事,你有一台電腦、你有一個闆子,你再有若幹的裝置,其實每個人都可以做智能路由,沒有說一定很高科技的一些公司才能做得了,這些話我就不講了,大家自己看一看就可以了。

我現在講一講晶片場,因為涉及到智能家居、智能路由這些硬體,一定要跟晶片廠打交道,看一看,有一個路由器晶片廠。,可能也就三四個技術支援,啟動了一兩個還在給大省做服務,是以一般情況下,現在屋子裡的好多人,都是行内的吧,其實都知道就是很難從晶片廠拿到技術支援,對他的晶片提供服務,這是這個晶片廠。你比如同樣一款晶片,它賣給華為,他可以買20塊錢,賣給你不好,因為你沒有量,他賣給你多少錢,誰要你沒有量呢,他賣你賣的很貴。還有一個晶片,台灣廠商出的,使用率非常高,這個晶片呢,他的wifi驅動有一個bug,無線一長,無線的信号就沒了,資料也沒了,廠商隻能給個解決方案,他說你把緩存加大一些,然後他說了,你這樣,你用64m記憶體,我說你媽的,我做很多應用軟體的,你讓我用64m,軟體在哪裡跑,都給你wifi了,那我們解決不了,這就是晶片廠家的wifi晶片。

美國有一個晶片廠家,跟國内一個一線大廠簽了一個協定,這個協定是幹了一件什麼事情呢,這個協定就說他有一款晶片成本效益很高,但是隻能賣給其中一家計算機廠商,你别人想拿到這個晶片拿不到,他說如果你要這個晶片做産品,那你就會遇到很多問題,因為你産量高了,你發現你買不到晶片,你産品做不出來。行了,這句話就不講了,大家看一看就行了。

我們講一講,可能會要今年出一個晶片,明年的。據說mtk會在今年下半年釋出并且比其他的高2.5倍,這款晶片的樣版已經出來了,但是還沒有上市。我覺得下半年肯定有上市的産品。我之前就看到過一個官方的公版。應該還是有些問題。

然後下一個是高通的lc9331,這是我們現在用來做教學開發的晶片,他性能不是很強,但是這個晶片性能比較穩定了,最大特點是功率比較低,整體功率在1w以内,這樣的話你可以用電池,帶一個路由器的晶片,做一個什麼産品,可以帶的時間比較長,還有工作時期很久,就是現在小米的裝置,他的功率值達到1800了。1800大概的情況,趕上了早期的英特爾,是以已經很強了。不過小米呢,晶片好多功能小米沒做出來,因為那個晶片資料裡你看很強,太強了,應該給電腦公司。這是最後一個晶片,但是這些個晶片廠商保密工作做得太好了。目前它是成本效益是最高的一款處理器,用來做智能路由,也是目前使用最多的,不過這個産品他有一個問題,就是wifi驅動是有版權的,也就是說在開着wrt系統當中是沒有他的wifi驅動的,一定要支援移植。那麼如果有人想玩呢,手裡又拿不到官方驅動怎麼辦呢,我告訴你個好的方案,你們找個東西,有個闆子就行了,市面上賣的那個便宜路由器是用那種處理器的,然後去淘寶,有人賣200塊錢賣驅動,花200塊錢買下來,之後放到網上,賣給别人,我這是不會幹了,我幹了會告死我的。

我們現在看一看wrt已經做了什麼東西,前面隻是其中的一部分,因為趕不及,幻燈片是昨天才趕出來的。比如說做(雲之助)的方案,他們用的是openwrt的系統,去連接配接外部裝置,可以使用usb使用光纖一類的接口,給你個計算機,給你個手機,平闆提供這種資料管理和資料存儲,比如雲上這些方案,那wrt很适合,做起來其實也是蠻好做的我覺得。或許做無線音箱的這些,安卓的無線音箱,apple的無線音箱,那麼在下面wrt可以支援他的apfree技術,可以使這個你的蘋果手機和蘋果平闆電腦的自動路由器進行同步,然後通過路由器播放,比如你可以通過iphones接口,帶解碼器的這種音箱,或者簡單的通過usb接口連接配接音箱,然後去播放你想播放的音樂。上面這個主方案是我想到的,因為我有時候在家裡我喜歡煮點吃的,煮點吃的呢,我喜歡開着音樂,心情好一點,尤其是掃掃地拖拖地心情好一點,但是這個時候還可以控制我想放的一首歌曲,我覺得很舒服了。然後昨天何總跟我提了一個方案,我覺得他的方案比我提的好,就是你把音箱裝在你的浴室裡面,你洗澡的時候,放開音樂,這個挺好,你一洗澡他就唱歌,而且你洗跟你老婆洗唱的歌不一樣,還有跟小妞,這樣你一回家,就知道誰在洗澡,有道理。

然後可以做一些家居控制類的,你可以用路由器的晶片,再回來,我剛才這個有一點沒講,就是可以把路由器的晶片跟音箱做在一起,市面上不是有一些手機播放器嗎,但是他們一般都使用藍牙方式放,但是你把它做到一起就ok了,不需要藍牙,你隻要手機連上你家裡的wifi了,手機就可以播放了,因為音箱是跟你的路由是在一起的。是以我覺得這個産品不錯,有人有興趣可以做一做這種産品,我肯定買。因為合同買的話你必須可以在衛生間放音樂的功能,我們講的這個,比如我們現在可以連一些南方的天氣比較潮濕啊,北方的比較幹燥啊,有霧霾啊,有除濕器,有加濕器,好多嘛。

那我們就通過這種接口,加一個傳感器,然後通過雲端的資料處理分析出來目前的空氣處理方式,你是要加濕還是要除濕,還是要說去做一些空氣淨化呀,我覺得這玩意在北京應該有市場吧,然後可以做一些是非常好用的系統,因為合同已經示範了,它的那個東西,那麼在wrt系統可以運作webserver啊php啊,sql啊,然後可以有不同的資料庫,有不同的外部引擎,性能還是很好地,不見得比我們的大型機器好。那或者企業辦公,你的企業使用辦公電話系統,需要列印,需要用進廠要打卡,或者要設定什麼監控,或者要做企業的資料中心,做資料處理,存儲啊這些資料,等等這些功能都會由openwrt開發一個系統進行實訓。上面這個有什麼問題沒有,我講的太通俗了,沒問題,那鼓下掌吧。好。以後咱們商量好,我說鼓掌馬上,我喊停馬上就停。鼓掌。停。行行。各位你們太配合了。

我們講一講一些個跟技術有關的問題,就是我個人認為軟體是比硬體更難的事情,因為硬體本身有一個特點,一個晶片到底能做多少事情,在硬體上都是固化好的,沒有說選擇,每個晶片的功能側重點都是晶片設計那樣設計出來的,到你手裡你就隻能按照他的方法去用,而軟體不是,你隻要有好的點子,你把你的點子實作出來,那隻要大家接受,市場接受,軟體愛好者接受,那軟體可以做得好,是以說相比之下,軟體的人更高,硬體的人其實,硬體隻有能做和不能做兩種差別,軟體是能做、不能做、能做好、不能做好,做一段死了。

是以說呢,學openwrt系統,我認為有兩個條件,一就是linux作業系統,第二就是擅長一門程式設計語言,某一門都可以,大部分程式設計語言都是相通的,但是擅長java需要多點時間。因為java語言嘛,我順便講一下,為什麼java時間長一些,因為java語言他的一個特性是對人友好的語言,他不是對機器友好的語言,而對人友好的語言呢,他有一個很大的問題,他的想法是好的,對人友好,但問題是每個人都是一個個體,每個人都不一樣,兩個朋友之間還要相處好長時間才知道對方怎麼想的呢,我用我的思想寫了一套java的代碼,我離職了,一口鍋裡吃飯都沒吃過,我幹嘛你能看得懂嗎,是以說這個車java語言的問題。我跑題了,我剛才講哪了。

是以說在我做這個之前呢,因為市面上沒有openwrt系統化的教程。那麼為什麼沒有呢,那時候openwrt系統寫的也挺亂的,有些東西亂七八糟,然後改的也很快,每個班改動很大,大部分之前玩wrt系統的人呢都是從事過一些跟嵌入式有關的人,那我希望我的教程呢,來讀來看我教程的人,就是說可以不是學過這種嵌入式的人,你隻需要做網際網路領域,甚至你隻能寫一個簡單的php或者一個簡單的cci這樣的人,都可以做得了這些事情,為什麼我說可以做的了呢,因為我就是寫php出身的。我就會寫這一個語言,别的語言我啥也不會寫,你看我們也幹得了嘛,我又不比你們多個鼻子多個眼睛,是以這個事情所有人都可以幹得了。

教程采用一些循序漸近的方法,因為我自己學的時間,我走了很多彎路,真的有的東西學的早學得完,方式可能有不同,那麼我大概設了六個部分。第一個部分是了解晶片,裝置怎麼運作;第二就是基本的指令,基本指令是一部分linux指令,還有是怎麼刷機;第三就是路由器的基本功能,你怎麼配置怎麼用啊;第四個,就是說我提供11種玩法,這11種玩法呢,現有智能路由器當中所涵蓋的大部分功能你怎麼去自己玩出來,11種玩法;那第五部分呢,我就教大家怎麼變wrt系統,怎麼自己做産品;到第六部分就加了一些傳感器,gdlad,智能家居類的各種傳感器一類的可玩的一些東西,放在第六部分。

那整個這個下來呢,前幾章可能跟基礎方面比較多,到後面大部分都是動手操作,我認為看基礎不能再看了,一定要上機動手操作。其實我以前沒寫過核心驅動的時候,我感覺這東西太他媽高科技了,小母牛騎電線,我寫了一個我發現這玩意也挺好寫的嘛,列印一個hello world就好了嘛,你隻要能列印hello world,你已經學會50%了,一般都會了,後邊那半琢磨琢磨就會了。為此我還專門做了一個定制系統,用于本身教學的系統,這個系統會涵蓋所有教學的章節的課程裡的所有内容,并且這個系統做到已經程度之後,我會把整個系統開放出來,讓大家可以自己去編譯自己去玩。然後有些個網址和位址大家可以記錄一下,就說整個教學計劃的釋出的方法和得到資料的方法,大家可以記一記。有沒有什麼問題。那就鼓掌,停,說問題。

提問:wrt開完了對吧?

hoowa:對。

提問:那個開源位址在什麼位置?

hoowa:不知道。上去自己找吧。位址我怎麼能記得住嘛。我确實不知道。沒什麼問題了嗎?

提問:還有一個問題。

hoowa:說。

提問:你這個課程是怎麼進行啊?

hoowa:已經進行了,現在大概到,對到第九章了,大概一共是34章到37章。

提問:還要再開嗎?

hoowa:還要再開,我們都是在網上免費釋出的這個教程,是以你這隻要願意跟進,你都可以跟進下來。

提問:在官網上都有,免費的嗎?

hoowa:免費的,肯定是免費的。不一定非得在網上,别的方式也可以的。

提問:我想問一下有沒有開發代替的産品?

hoowa:有啊。在第三章的地方介紹了一下。那兄弟麻煩你通路以下這個資料位址用浏覽器,看手機那個。通路一下這個位址,資料下載下傳這個位址。