2016年8月29日 星期一

Android NFC sample code

1. Read Tag ID
http://www.java2s.com/Open-Source/Android_Free_Code/Development/data/com_nathansizemore_nfcvreaderMainActivity_java.htm

transceive()

TI -
NFC Type 5 Tag Platform After pressing the R/W button, present a NFC tag (doesn't have to be formatted). in this example we are presenting an unformatted NFC Type 5 (ISO15693, TI HF-I) tag. Note that the tab automatically flips to R/W: Legacy and the type of card is displayed graphically along with the Unique ID (in this case, E007000017F4E0E4). Press the Format NDEF button to make the tag NFC-V type. This puts a Capability Container with empty NDEF in the user memory.
http://www.ti.com/lit/ug/slou386/slou386.pdf

https://e2e.ti.com/support/wireless_connectivity/nfc_rfid/f/667/p/427665/1755155
https://e2e.ti.com/support/wireless_connectivity/nfc_rfid/f/667/t/427665

source code
http://blog.chinaunix.net/uid-87897-id-4652300.html
http://stackoverflow.com/questions/15689582/reading-a-nxp-icode-sli-l-tag-with-android
http://stackoverflow.com/questions/35235284/ti-nfc-write-single-block-with-android-nfcv-iso-15693


read multiple blocks command
Use Read Multiple Blocks to get value, it's ISO15693 standard command
Read Multiple Blocks (Addressed) otherwise will get 0x02 response. I don't know why.
The blue background bytes will be generated by byte[] transceive (byte[] data).

buf[0] = 0x8f; /* Reset FIFO command */ 
buf[1] = 0x91; /* Send with CRC */ 
buf[2] = 0x3d; /* Write continuous from register 1D */ 
buf[3] = (char) (size >> 8); /* Data for register 1D */ 
buf[4] = (char) (size << 4); /* Data for register 1E */
buf[5] = 0x00; /* ISO15693 flag with option flag not set*/ 
buf[6] = 0x23; /* Read multiple blocks command code */ 
buf[7] to buf[14] contains UID 
buf[15] = First block number 
buf[16] = Number of blocks
http://www.ti.com/lit/an/sloa138/sloa138.pdf
code example and also refer to the attached.
http://www.itstrike.cn/Question/d024832d-a8ed-446c-95d8-cbafb1b01724.html
Send raw NFC-V commands to the tag and receive the response.
Applications must not append the CRC to the payload, it will be automatically calculated. The application does provide FLAGS, CMD and PARAMETER bytes.
https://developer.android.com/reference/android/nfc/tech/NfcV.html

2016年8月4日 星期四

Does RF module needs shielding cover? (Chinese)

If for module to get RF certification, I think module need to add shielding case according to regulation require.
If use module on the system, it may not need the cover. It's depending on the test result.

提案編號:09611077 主旨:LP0002 模組認證之規定,發射器模組射頻元件部份必須具有自己的屏蔽外殼(RF shielding)。若 該模組不使用屏蔽外殼依然能通過相關測試,如某些功率極低的藍牙模組,是否強制要求加屏蔽 外殼?
結論:模組認證有其獨立性,為了避免模組與平台產生耦合現象,維持現有規定,即發射器模組 射頻元件部份必須具有自己的屏蔽外殼(RF shielding)。
from http://www.etc.org.tw/_library/K00/%E9%9B%BB%E4%BF%A1%E7%B5%82%E7%AB%AF%E8%A8%AD%E5%82%99%E5%AF%A9%E9%A9%97/11030.pdf
-電信終端設備審驗-

5.11.1 發射機模組射頻組件部份應具有屏蔽外殼(RF shielding)。
http://www.bsmi.gov.tw/wSite/public/Data/f1401325024931.pdf

問:無線模組有遮蔽的金屬蓋(Shielding cover)是必要的嗎? 答:是的。無線模組的金屬遮蔽蓋是為避免外在環境的 RF 訊號影響無線 模組的運作效能,因此是必要的。
from 康景科技 ( CONJIGN NETWORKS INC.)

RF module design
http://www.emcfastpass.com/rf-modules/
RF Module Shielding
RF Module shieldingThe radio elements of the transmitter must be shielded. There are a few parts that are permitted to be external to the shield such as PCB antenna (if that’s the type you’re using) and tuning capacitors. But for the most part, all components associated with your transmitter should be housed beneath a shield. This is to limit any emissions from the design. I’ve seen FCC submissions where the OEM has claimed that a ground plane is sufficient for a ‘shield’, and they got away with it. But they must have caught the TCB (the body that issues the certification) on a good day. In my experience I would say not many TCBs would let you away with that.

2016年8月3日 星期三

Team Foundation Service - Chinese

1. Good introduction
http://kevintsengtw.blogspot.tw/2012/11/team-foundation-service.html

http://blog.miniasp.com/post/2011/09/01/TFS-2010-Version-Control-Notes-How-to-update-many-unversioned-files.aspx

http://www.syscom.com.tw/ePaper_New_Content.aspx?id=347&EPID=191&TableName=sgEPArticle