2012年6月15日 星期五

hiMedia HD600A, HD600F, HD900A, HD910A 比較

資料來源:
http://www.mobile01.com/topicdetail.php?f=347&t=2136027&m=f&r=2&p=54#34912679

aszcc 分享:

HD600A 
DDR2 RAM 256MB / NAND 256MB / 1000M LAN / RTD1185 500Mhz / 12V 2A POWER / 300M WIFI / 裸接SATA 
HD600F
DDR2 RAM 256MB / NAND 256MB / 1000M LAN / RTD1185 500Mhz / 5V 2A POWER / 300M WIFI / ESATA
HD900A
DDR3 RAM 512MB / NAND 4GB / 1000M LAN / RTD1186 750Mhz / 12V 2A POWER / 300M WIFI / 裸接SATA / Android / 3D 
HD910A
DDR3 RAM 512MB / NAND 2GB / 100M LAN / RTD1186 750Mhz / 12V 2A POWER / 300M WIFI / 裸接SATA / Android / 3D 

效能 HD900A=HD910 > HD600A = HD600F
支援 HD900A>HD910 > HD600A > HD600F


PS:
裸接SATA = 不需要額外電源 , 可以接 3.5寸 SATA II/SATA III 硬碟 , SATA DVD 或 藍光機
ESATA = 外接硬碟需要另外準備一顆電源 


HD600F 沒有 WIFI , 沒有裸接SATA(用的是 ESATA)
HD600F 對於只想接USB硬碟看片是沒什麼問題.






HD900 系列的比較表:

功能 /  型號
HD910A
HD900A
HD900B
HD900C
Main Chip
Realtek 1186
Realtek 1186
Realtek 1186
Realtek 1186
Memory
512MB DDR3
512MB DDR3
512MB DDR3
512MB DDR3
Nor Flash
2MB
2MB
2MB
2MB
NAND Flash
2GB
4GB
1GB
1GB
LAN
100M
1000M
1000M
1000M
USB Host 2.0
Yes
Yes
Yes
Yes
USB 3.0 Host
Yes

No
No
No
USB 3.0 Device
No
No
Yes
No
PCIE WIFI
802.11N
802.11N
802.11N
802.11N
Internal HDD Docking
No
No
Yes
Yes
BD LOADER
No
No
No
No
External SATA
Yes
Yes
Yes
No
CVBS
Yes
Yes
Yes
Yes
YPbPr
Yes
Yes
Yes
Yes
HDMI 1.4
Yes
Yes
Yes
Yes
L/R stereo Audio
Yes
Yes
Yes
Yes
Spdif output
Yes
Yes
Yes
Yes
Coxial Spdif output
No
No
Yes
Yes
CARD Reader
MS/MMC/SD
MS/MMC/SD
MS/MMC/SD
MS/MMC/SD
VFD display panel
No
No
Yes
Yes
Touch screen key
No
No
Yes
Yes
MCU
Yes
Yes
Yes
Yes

聽說: 規格上雖然是 1000M LAN 用起來的效率跟 100M LAN差不多.


HD900系列 Android下安裝 MX VIDEO PALYER 可以軟解比較多的影片格式(例如: sony DV-AVI 格式), 但由於 CPU 可能不夠力, 所以透過軟體解碼(SW or SW fast)時遇到畫質太好影片的應該還會是 lag.



HD910a, 大約600rmb, (約 2770台幣)
HD600a, 大約399 ~ 450rmb, (約 2070台幣)
價格上 HD600a 比較便宜, 功能上 HD910a 比較多.

2012年6月9日 星期六

CyanogenMod Compiler 輕鬆編譯客製化的CyanogenMod ROM

http://freemymind.cc.cc/2011/12/cyanogenmod-compiler-cyanogenmod-rom.html

很多人可能會覺得編譯一個客製化的 CyanogenMod ROM 是一件很複雜的事,因此遲遲不敢動手進行,只能等待別人編譯好的 ROM 來下載使用,測試後覺得不滿意就再換另一個人的 ROM 使用。您可能要試過幾個不同的 ROM 之後,才能找到一個適合自己的 ROM。不過,現在不用這麼麻煩了,國外有人把編譯 CyanogenMod 的流程寫成一個 script 檔,名為 Cyanogenmod Compiler (CMC) ,只要動手按幾個按鈕,就可以輕鬆編譯出屬於自己的 ROM 了

有了 Cyanogenmod Compiler 後,編譯 CyanogenMod 變得很簡單,只要執行以下命令即可:
git clone https://github.com/lithid/CMC.git
cd CMC
./CMCompiler
不過,在執行 Cyanogenmod Compile 之前,有一些相依套件要安裝,根據您的環境而有所不同
32 bit:
git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool
64 bit:
g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3-multilib
如果您是使用 ubuntu 11.04 或是更高的版本,以下有兩點要注意:
  • "lib32readline5-dev" 在 ubuntu 11.10 中,已經被 "lib32readline-gplv2-dev" 所取代
  • 從 ubuntu 11.04 之後的版本,不再需要 "gcc-4.3-multilib g++-4.3-multilib" 這兩個套件
成功執行 Cyanogenmod Compiler 後,就可以開始作一些客製化的動作,包含移除不需要的語言、桌面及動態桌面…等,詳細功能如下:
  • Check for repo installation on startup / or create a repo
  • Add and remove devices quickly and easily
  • Remove all non english languages
  • Remove live wallpapers
  • Remove cm wallpapers
  • Check if adb is running or not
  • Update the repo
  • Compile cyanogenmod
  • Add unsupported device trees via plugin!
  • Built in color themes. > http://goo.gl/cED8t
  • Plugin support. (More information on this to come)
  • local config file for saving settings or manually editing them
  • Odex plugin built into the package. This will take your connected cyanogemod installed phone and odex the rom on the phone
作者目前還在持續增加功能當中,預計下一版會實現的功能如下:
  • Check for installed tools and tell you which are still needed
  • Installer/Remover
  • Updated information about CMC and plugin support
  • Pure AOSP via plugin
  • Adb installer
  • Better error checking support
  • Check for errors during compile and point to places to fix
  • Edit the name of your kanged rom!


參考資料來源:
http://forum.xda-developers.com/showthread.php?t=1415661

2012年6月7日 星期四

修改 Android開機畫面

http://blog.xuite.net/yfchen0621/blog/34828695-%5B%E8%BD%89%5D%E4%BF%AE%E6%94%B9+Android%E9%96%8B%E6%A9%9F%E7%95%AB%E9%9D%A2


Android系統開機動畫包括兩部分:
  開機顯示的 ANDROID 文字;
  ANDROID發光動畫。
  這篇文章說的開機動畫是第一種,下面開始正文!
  1. 製作當前螢幕圖元的圖片(模擬器默認為320*480)
  使用PS製作一張320*480的圖片,保存時選保存為 Web 所用格式,然後在彈開的視窗上,預設項選擇“PNG-24”,保存為android_logo.png
  注:好像只支持png-24,其他格式生成的rle檔顯示不正常,有興趣大家可以再驗證一下。
  2. 將圖片轉換為raw格式
  使用linux下的ImageMagick自帶的convert命令,進行raw格式轉換,命令為:
  convert -depth 8 android_logo.png rgb:android_logo.raw
  注:ubuntu 10.04 默認已經安裝ImgageMagick工具,如果當前系統沒有安裝,可以執行下面的命令安裝:
  sudo apt-get install imagemagick
  3. raw格式轉化為rle
  需要用到android編譯後的rgb2565工具,在android/out/host /linux-x86/bin目錄下(android為當前源碼所在目錄),轉換命令如下:
  rgb2565 -rle < android_logo.raw > initlogo.rle
  到目前為止,啟動需要顯示的圖像已經做好了,就是initlogo.rle,注意檔案名必須是這個,如果想改檔案名,需要修改android/system/core/init/init.h中的宏:
  #define INIT_IMAGE_FILE "/initlogo.rle"
  下面需要將initlogo.rle加入的android檔系統中
  4. 找到ramdisk.img文件(android/out/target/product/generic/ramdisk.img),將檔案名改為 ramdisk.img.gz,然後使用下面的命令解壓:
  gunzip ramdisk.img.gz
  解壓後得到 ramdisk.img,可能有人要問,怎麼檔案名又改回去了?其實不然,使用file ramdisk.img查看一下就知道了:
  解壓前:ramdisk.img: gzip compressed data, from Unix
  解壓後:ramdisk.img: ASCII cpio archive (SVR4 with no CRC)
  跑題了,還是說正事兒。
  5. 使用cpio提取檔:
  新建一個temp目錄:
  mkdir temp
  cd temp
  cpio -i -F ../ramdisk.img
  6. 導出文件列表:
  cpio -i -t -F ../ramdisk.img > list
  注:list是一個文字檔案,裏面存儲了ramdisk.img的檔結構,我們需要在這個檔中加入initlogo.rle這一行,修改後的檔如下:
 data
  default.prop
  dev
  init
  init.goldfish.rc
  init.rc
  initlogo.rle
  proc
  sbin
  sbin/adbd
  sys
  system
  7. 生成ramdisk.img
  cpio -o -H newc -O ramdisk.img < list
  注:根據list檔的描述,生成ramdisk.img文件
  8. ramdisk.img覆蓋sdk目錄下的ramdisk.img(android-sdk-windows/platforms/android- 2.1/images/ramdisk.img),最好先備份一下。
  9. 啟動模擬器,就可以看到我們自己做的的開機介面了。

2012年6月6日 星期三

ROM打包简易教程

http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack%2C_Edit%2C_and_Re-Pack_Boot_Images
本帖最后由 s2k7 于 2012.3.20 12:38 编辑

1. 原厂boot.img
用这里的工具分解原厂img:
http://【】slatedroid.com/topic/29364-rom-tools-to-make-a-rom-use-them-at-your-own-risk
RFSFAT16_BOOT_00000000000就是boot.img

2. 编辑修改打包boot.img
这个boot.img和其他Android的完全一样。上网下载相应的工具。

  511  cd 0.8b-boot
  512  split_bootimg.pl boot.img
  513  mkdir ramdisk
  514  cd ramdisk
  515  gzip -dc ../boot.img-ramdisk.gz |cpio -i
          →修改init.rc, init.suni.rc
  516  cd ..
  518  mkbootfs ramdisk | gzip > new.boot.img-ramdisk.gz
  525  mkbootimg --kernel boot.img-kernel --base 0x40000000   --ramdisk new.boot.img-ramdisk.gz --cmdline "console=ttyS0,115200 rw init=/init loglevel=8" -o myboot.img

myboot.img 就是新的boot.img

3. 尝试编译modules
如果想用USB蓝牙或自己的3G网卡,可尝试编译modules。
ICS的源程序没有完全公布,目前不能编译kernel。
forum.xda-developers.com/showthread.php?t=1490886
forum.xda-developers.com/showthread.php?t=1378594
rhombus-tech.net/allwinner_a10/kernel_compile/

2012年6月1日 星期五

Bluetooth

https://sites.google.com/site/bifferboard/Home/desktop-linux-distributions/slackware/bluetooth

"You are in a maze of twisty little kernel and userland components, all remarkably..."  
    --- Colossal Cave


Introduction

So, you want to communicate with your Bifferboard via Bluetooth for remote control or whatever. Unfortunately it's not quite as simple as plugging in a cable.  This guide only scratches the surface of Bluetooth, but it's hopefully enough to give you some inspiration about what you might achieve with your Bifferboard.

Extra packages

First, you are going to need some extra packages:

root@darkstar:~# slapt-get -i dbus
root@darkstar:~# slapt-get -i bluez-utils
root@darkstar:~# slapt-get -i bluez-libs
root@darkstar:~# slapt-get -i which

Missing kernel modules

Depending on which version of the slackware rootfs you're using, you may already have these.  If not, download them from this page and load them:

root@darkstar:~/bt# insmod bluetooth.ko
root@darkstar:~/bt# insmod btusb.ko
root@darkstar:~/bt# insmod hci_uart.ko
root@darkstar:~/bt# insmod l2cap.ko
root@darkstar:~/bt# insmod rfcomm.ko

Services

Next up, you need to run some services to manage the bluetooth kernel stack.  First dbus (messagebus) and then the various bluetooth services which run ontop of it::

root@darkstar:~# chmod 755 /etc/rc.d/rc.messagebus
root@darkstar:~# chmod 755 /etc/rc.d/rc.bluetooth
root@darkstar:~# /etc/rc.d/rc.messagebus start
Starting system message bus:  /usr/bin/dbus-uuidgen --ensure ; /usr/bin/dbus-daemon --system
root@darkstar:~# /etc/rc.d/rc.bluetooth start
Starting Bluetooth subsystem:  hcid sdp rfcomm passkeys.

Note that changing the permissions on these startup scripts will mean they get run on the next boot as well. Change them back to 644 if you don't want that.

Now the Dongle!

Now it's time to plug in your USB dongle.  Assuming 'dmesg' says that it's been plugged in and recognised, hciconfig is the equivalent of ifconfig for the ethernet world:

root@darkstar:/etc/rc.d# hciconfig hci0
hci0:   Type: USB
        BD Address: 00:15:83:B3:D0:B6 ACL MTU: 384:8 SCO MTU: 64:8
        UP RUNNING
        RX bytes:348 acl:0 sco:0 events:11 errors:0
        TX bytes:38 acl:0 sco:0 commands:11 errors:0     

If you see the 'BD' address as all zeros then it's likely hcid isn't running.  Go back and try to figure why that might not have happened.

Now we're getting somewhere - it seems like we're talking to the hardware.

But how to make it actually do something?  Well, you can always start by having a look if your neighbour has their mobile switched on:

root@darkstar:/etc/rc.d# hcitool scan
Scanning ...
        00:24:EF:55:A7:2D       Mac+211

But this isn't too interesting.

Point-to-point Link

You can use the rfcomm utility to get a connection between the Bifferboard and a nearby PC (assuming you have two dongles).  Of course the 'nearby PC' is also running Slackware 13.0 to make this guide a bit simpler, however most modern Linux systems should recognize your dongle and connect something to it when you plug it in.

P-to-P Communication is via 'rfcomm' devices, that's why you loaded the kernel module above.  The bluetooth standard defines a serial port profile, and in that profile 30 channels that you can use for point-to-point communication.  You must designate one side to be the server, in other words waiting for a connection.  You do that with the 'rfcomm' utility:

# rfcomm listen rfcomm0 <channel>
example:
# rfcomm listen rfcomm0 1
Waiting for connection on channel 1
Next, you can connect from the other machine, also using the rfcomm utility:
# rfcomm connect rfcomm0 <bt address> <channel>
example:
# rfcomm connect rfcomm0 00:15:83:B3:D2:DD 1
Connected /dev/rfcomm0 to 00:15:83:B3:D2:DD on channel 1
Press CTRL-C for hangup
That's right, you need both the channel and the 'bt' address, which you can get from running hcitool on the first machine.  Now you may be wondering about that 'rfcomm0' parameter.  That's the name of a special device file that gets created under /dev when the connection is established, e.g. /dev/rfcomm0.  You can now write programs that read/write from these devices in much the same way as you'd read/write /dev/ttyS0 or /dev/ttyUSB0.   

If you want a quick test, on one machine type:

# cat /dev/rfcomm0

Then on the other type:

# echo "Boo hoo" > /dev/rfcomm0

You should see the characters printed on the first machine.

Summary

I'm afraid that's as simple as it gets when it comes to Bluetooth communication. Hopefully someone will be able to use this to come up with some neat project involving wireless, e.g. remote control cars, and so on.  Happy hacking!

製作Android平板zip刷機包(卡刷包)及懶人包教程

http://www.99pad.com/thread-35149-1-1.html

製作ZIP刷機包和懶人包的好處就是方便刷機,一鍵即可美化
以下詳細介紹方法

ZIP刷機包格式應當如下
updata/META-INF 
          /system 
          /boot.img 

主要是system和boot. img, system文件夾結構應當如下
桌面文件即Launcher2.apk應當放在system\app下
字體即DroidSansFallback.tts(這個是中文)應當放在system\fonts下
framework-res.apk美化文件應當放在system\ framework下,同理services.jar(字體顏色)也放在這一目錄下
開機動畫應當放在system\media下
開機音樂應當放在system\media\audio\ui ,並且格式應為mp3 
想修改版本信息可在system下的build.prop中修改
最後所有都修改完成,不要打包,用WINRAR打開原刷機包,將修改文件替換原文件 最後用recovery體驗刷機之旅吧


接下來是懶人包(帶recovery的機器適用)
懶人包製作方法簡單,適合大眾,主要都是在手機端完成。步驟
1.用手機將美化文件全部搞定
2.進入recovery模式,
選擇備份還原----備份
3. 
重啟,用文件管理器進入
SD/clockwoekmod/backup/時間文件夾(有些機器不是這個文件夾,自己變通)4. 壓縮此文件夾,發到網上即為懶人包懶人包使用方法
1. 
下載
2. 
解壓3.將得到的文件解壓放在SD/clockwoekmod/backup(有些機器不是這個文件夾,自己變通)下
4.進入recovery模式,
選擇備份還原----還原,選擇剛剛下載的文件,還原
5. 
重啟