顯示具有 beagleboard 標籤的文章。 顯示所有文章
顯示具有 beagleboard 標籤的文章。 顯示所有文章

2012年4月18日 星期三

Cloud Projector

最近都在弄硬體的東西,反倒是忽略了這個blog,先放一兩張之前用BeagleBoard做的projector,理想上就是利用BB加連上投影機,然後用瀏覽器,比如說平板上面的瀏覽器來作遠端遙控,至於投影片是放在網際網路上面的
螢幕試用台代替投影機,可以看到BB只有外加上一個USB無線網卡,本來電源是想要用電池的,可惜市面上買到的電池組裝起來電流不夠穩定,所以電源還是接到變壓器,改天有空自己再來作一個。可以看到平板上面會顯示跟投影機上面一樣的縮圖

可以看到上面細項的參數,主要就是一個URL跟一個頁數還有目前頁數的顯示以及一些簡單的跳頁、上一頁、下一頁

目前可以轉換網頁跟pdf檔案,以後應該開始考慮轉換google的投影片,一樣有空在研究吧

2012年3月9日 星期五

新玩具~對岸的友善之臂micro2440

剛剛到貨,一收到,哇~一大箱,心裡就涼了一半,不會是很大台吧@@a,拆開~果然是很大台,來跟beagleboard xm (BB)打個招呼吧
體積:
很明顯,BB不到micro2440的一辦大小,高度也是BB比較低
I/O port:
介面也不會比micro2440遜色(micro2440 com port倒是多了兩個)
CPU & memory:
可是BB可是雙核心阿A8(1G)+DSP,micro2440只有400MHz的A8還是A9,記憶體也比BB來的少
價格:
當然價格也差了許多,BB可以買兩台micro2440了,但是如果可以,我還是寧願使用BB

如果要學習,或許micro2440比較無所謂,玩壞了也不心疼,但是如果要當玩具,我想BB比較耐用。簡單的說,BB我會想要把它裝殼子(但是殼子好貴,國外的金屬外殼,快要可以再買一台BB),但是micro2440就讓它裸奔吧

2012年3月6日 星期二

beagleboard xm的輸出悲劇

話說~想要讓beagleboard xm輸出d-sub訊號,但是可能還是不可能呢?我不知道,但是.....至少就線材上就挑錯了,這樣就悲劇了
詳細情形請上wikipedia他就會告訴你哪種dvi接頭有可能可以輸出d-sub訊號,但是~但是~要從hdmi訊號轉成d-sub訊號,還是相當有可能失敗,我網路上看到一個可能性,等我試驗後再報告,最後一條路就是印象中網路上有看到人自已DIY d-sub輸出,最不得已的選項

2012年2月26日 星期日

beagleboard xm的解析度設定

根據網站的spec寫的,他支援1280x720是可以的(再上去有問題,不過網路上印象中有人號稱hack了chip pin腳的信號,可以上到更高的解析度),但是很多人裝了ubuntu的image之後,解析度設定的問題一大堆,我自己本身也是,其實我猜應該是uboot的設定檔案讀取出了問題
很多設定為
1024x768MR-16@60
這樣之類的,我這樣設定也會出問題,最簡單的設定應該是
hd720
這個設定最沒有問題,他是1280x720MR-32@60,其他解析度呢?其實直接寫
1024x768@60
反而可以,但是如何設定16bits或者24bits我倒是不知道了(這個預設為32bits)

2012年2月17日 星期五

架設tftp

這東西比ftp還不如,如他的名字一樣trivial ftp,照道理說,應該很快被淘汰的東西,但是還是屹立不搖主要是因為有其應用價值存在,如同RS232一樣
這個主要是用來把資料放到嵌入式系統內的,比方說beagleboard,如果每次要放一個檔案上去,就得把卡片拔下來,或者從新打包rootfs,真的是花費太多時間了
在PC/NB上面架設tftp server,跟著在beagleboard上面放上tftp client就可以了,假設兩者在同一個LAN底下,由同一台DHCP server配給IP

[PC/NB]
假設IP:192.168.1.100
apt-get install tftpd-hpa
然後檢查
/var/lib/tftpboot目錄在不在跟著確定權限
chown nobody:nogroup tftpboot/
chmod 777 tftpboot/

可以試著在該目錄下隨便新增一個文字檔案,待會可以測試

[beagleboard]
假設已經安裝了ubuntu,IP 192.168.1.103
apt-get insall tftp
然後tftp 192.168.1.103,跟著把之前的文字檔案抓下,然後檢查有沒有錯就大公告成了

參考資料:
http://suntosh.livejournal.com/26186.html

BeagleBoard XM刷上Ubuntu

主要參考這裡
http://elinux.org/BeagleBoardUbuntu#Maverick_10.10
過程出乎意料的簡單,但是也發現了寫入速度真的還不算快哩
先抓下需要的檔案
wget http://rcn-ee.net/deb/rootfs/oneiric/ubuntu-11.10-r5-minimal-armel.tar.xz
細心的話作個md5sum的檢查,然後解開壓縮檔
tar xJf ubuntu-11.10-r5-minimal-armel.tar.xz
我利用了beagleboard給的microsd to sd的轉卡,所以必須要知道SD卡的位置(我的位置再/dev/sdb)
sudo ./setup_sdcard.sh --mmc /dev/sdb --uboot beagle_xm
接下來就是慢長得寫入過程,大概幾分鐘吧,完成之後就可以接上板子,直接開機測試囉

armel,這是啥?

因為老是在玩模擬的話感覺有點無聊,所以就買了個beagleboard mx,接著想要開始爬文怎樣把我想要的系統放上去,因為beagleboard xm本身硬體算是蠻強悍的,所以跟我本來預設的貴的多跟強悍的多,我本來預期有個64MB ram、cpu 400MHz就可以玩玩了,想不到是一個1G MHz的cpu加上一個800MHz的DSP。其實講了那麼多,我主要是看上了USB-OTG跟DVI output,很可惜沒有wifi的interface。
講了那麼多竟然還沒提到armel 囧,armel是我開始想要編譯自己的kernel跟rootfs的時候發現的,已經有人port ubuntu到這個平台上,而其中就有用到armel,就google一下,armel到底是何方神聖,跟著就得到了解釋
============

ABI
ABI,application binary interface,應用程式和作業系統的"low-level interface"。意思是,ABI有一套規則,如果遵循這個規則產生出的object,就能在相對應的系統上正確的運作。這個規則包括了data type的size,alignment,calling convention,function參數傳遞與回傳值,system call的調用等。很明顯的,這跟平台很有關係。比如說,不管用哪一個compiler,只要能生出符合ELF格式的binary,就可以在Linux上 跑,或呼叫其library。
而EABI,embedded-application binary interface則規定了embedded software program的規則。跟一般的作業系統的主要差異為: 應用程式可以使用privileged instruction,dynamic linking不是required,更簡潔的stack frame用以省下memory。

ARM EABI
而arm 的EABI有些改進,特別是floating point的運算。現在的arm應該都有實作FPA(Floating Point Accelerator),但如果compiler使用了FPU來做floting的運算,且CPU沒有FPU時,就會產生exception。其 panelty會是將指令轉為software的floating運算,當然系統也就變慢了。所以支援EABI的kernel與Cross- compiler,加上支援有實作FPA的arm,performance就會好很多。

armel
在lenny之後,就多了armel這個字,其與以前的arm差別就在於EABI這個interface。如前述,這個interface與硬體(CPU)的設計是很有關係的,對於arm不同的版本就會產生限制,因此EABI都常是建議在armv4t以後的版本。

============
ABI目前感覺好像還沒有很流行,聽說intel跳下去弄過一下,我想要弄到兩大巨頭arm跟intel同一格式恐怕有很大的難度(不是技術難度,應該是商業難度)

題外話,我很希望哪天嵌入式系統可以像是樂高積木玩具一樣,有眾多便宜的硬體元件可以整合再一起,像是現在一個beagleboard wifi的板子竟然要50USD以上,真的有貴到

beaglebone的價格就還不錯,很可惜的是硬體介面缺很大,勉強算是"堪用",我想除非很熟悉,不然就是特別的應用,不然beaglebone真的是只能"玩玩",不類似beagleboard xm可以玩很大XD