http://blog.xuite.net/lapuda.chen/PaulBlog/221866406-%E5%A6%82%E6%9E%9C%E7%9C%8B%E4%BA%86%E6%AD%A4%E6%96%87%E4%BD%A0%E9%82%84%E4%B8%8D%E6%87%82%E5%82%85%E9%87%8C%E8%91%89%E8%AE%8A%E6%8F%9B(Fourier+Transform)%EF%BC%8C%E9%82%A3%E5%B0%B1%E9%81%8E%E4%BE%86%E6%8E%90%E6%AD%BB%E6%88%91%E5%90%A7!
2016年12月19日 星期一
2016年11月17日 星期四
BLE White List note
1. Chinese article
http://thinkingiot.blogspot.tw/2015/02/ble-security-3-ble-denial-of-service.html
http://www.deyisupport.com/question_answer/wireless_connectivity/bluetooth/f/103/t/87181.aspx
http://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/p/414562/1475140
http://thinkingiot.blogspot.tw/2015/02/ble-security-3-ble-denial-of-service.html
http://www.deyisupport.com/question_answer/wireless_connectivity/bluetooth/f/103/t/87181.aspx
http://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/p/414562/1475140
2016年11月8日 星期二
The difference between .net framework 4.0 and client profile (Chinese)
https://dotblogs.com.tw/regionbbs/2010/03/25/vs2010_net_4_client_profile
2016年10月4日 星期二
C code static - Chinese
Good content explain static.
http://archerworks.blogspot.tw/2010/07/cstatic.html
http://archerworks.blogspot.tw/2010/07/cstatic.html
2016年9月8日 星期四
1. Advertising package detail: (Chinese)
http://www.race604.com/ble-advertising/
2. Device name:
Assuming that you are able to get connected with the GATT Server, when you parse the GAP profile of the device, you will find an attribute for Device Name under Generic Access Profile (GAP).UUID for GAP is 0x1800, and that for the Device Name Characterstic is 0x2A00. This pageexplains that the Device Name characteristic is a part of the GAP.
from http://stackoverflow.com/questions/33113141/how-do-you-get-the-actual-name-of-a-bluetooth-low-energy-device
|
https://www.bluetooth.com/zh-cn/specifications/gatt
4. ScanRSP local name and GATT device name (Chinese)
http://www.deyisupport.com.edgekey.net/question_answer/wireless_connectivity/bluetooth/f/103/p/61359/136416.aspx
4. For TI update device name use APIs.
GAPRole_SetParameter( GAPROLE_SCAN_RSP_DATA,);
GAP_UpdateAdvertisingData();
GGS_SetParameter( GGS_DEVICE_NAME_ATT, GAP_DEVICE_NAME_LEN,name);//attDeviceName );
GGS_SetParameter( GGS_DEVICE_NAME_ATT, GAP_DEVICE_NAME_LEN,name);//attDeviceName );
用这三个函数 就可以了
2016年9月5日 星期一
Nordic nRF51 dongle for NUS peripheral solution
1. Evaluate feasibility -
https://devzone.nordicsemi.com/question/44948/ble_peripheral-on-pca10031-dongle/
2. Virtual COM
Refer to user manual
http://infocenter.nordicsemi.com/pdf/nRF51_Dongle_UG_v1.0.pdf
P0.09 TXD
P0.11 RXD
https://devzone.nordicsemi.com/question/44948/ble_peripheral-on-pca10031-dongle/
2. Virtual COM
Refer to user manual
http://infocenter.nordicsemi.com/pdf/nRF51_Dongle_UG_v1.0.pdf
P0.09 TXD
P0.11 RXD
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
https://developer.android.com/ reference/android/nfc/tech/ NfcV.html
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.
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.
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
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
2016年7月28日 星期四
Windows BLE solution
Bluesoleil - software SDK and tools
http://www.bluesoleil.com/products/S0001201005190001.html
C# driver interface for BLED112 solution
https://github.com/ahouben/BleDriver.NET
EXPERIMENT 01 – HEART RATE NOTIFICATIONS WITH PYTHON AND BLE DONGLE (BLED112)
http://angelsensor.com/blog/2015-06-08/experiment-01-heart-rate-notifications-with-python-and-ble-dongle/
Microsoft windows HRS solution
https://code.msdn.microsoft.com/windowsapps/Bluetooth-Generic-5a99ef95
ceriboo HRM APP
https://www.microsoft.com/zh-tw/store/p/heart-beat-monitor/9wzdncrdkw2v
BLED112 dongle
https://www.bluegiga.com/en-US/support/
https://www.bluegiga.com/en-US/products/bled112-bluetooth-smart-dongle/
application
http://www.silabs.com/Support%20Documents/RegisteredDocs/UG208.pdf
http://www.bluesoleil.com/products/S0001201005190001.html
C# driver interface for BLED112 solution
https://github.com/ahouben/BleDriver.NET
EXPERIMENT 01 – HEART RATE NOTIFICATIONS WITH PYTHON AND BLE DONGLE (BLED112)
http://angelsensor.com/blog/2015-06-08/experiment-01-heart-rate-notifications-with-python-and-ble-dongle/
Microsoft windows HRS solution
https://code.msdn.microsoft.com/windowsapps/Bluetooth-Generic-5a99ef95
ceriboo HRM APP
https://www.microsoft.com/zh-tw/store/p/heart-beat-monitor/9wzdncrdkw2v
BLED112 dongle
https://www.bluegiga.com/en-US/support/
https://www.bluegiga.com/en-US/products/bled112-bluetooth-smart-dongle/
application
http://www.silabs.com/Support%20Documents/RegisteredDocs/UG208.pdf
2016年7月13日 星期三
Responsive Web Design free template
Most of RWD web template is not free.
You could find some free samples from here.
https://html5up.net/
2016年7月3日 星期日
WeChat Hardware Developer Note
For new version of WeChat platform (7/4/2016), they provide the server application and platform to build up the server application without handling the communication by manufactures themselves. This job normally needs to do by manufactures or their 3rd party company.
--> 以下內容取自於 WeChat website
设备厂商在使用测试帐号进行开发调试的过程中,可通过“设备直连微信硬件云通道”或“设备商云连接微信硬件云通道”接入微信硬件平台
-->
微信硬件平台是基于微信公众号体系的智能硬件平台,在公众号的技术架构里,设备厂商必须要有自己的服务器。
微信硬件平台将提供基于各个硬件平台上的微信硬件直连SDK,通过SDK硬件设备直接连接到微信硬件服务器,打通设备到云端的通道,SDK提供连接登录、鉴权、状态上报、命令发送、固件更新等基础联网功能。
消息接收能力:即设备接收微信图片、音乐、文件、地理位置消息的能力。
微信硬件平台在连接千万设备的过程中,提出了"每个硬件都是一个APP"的全新概念。这意味着每个硬件都能像APP一样,可以把消息分享到微信,同时可以接收并处理微信内的原生消息。
http://iot.weixin.qq.com/wiki/new/index.html?page=2-2
Air Kiss 技术的应用场景
随着移动互联网与物联网技术的发展,越来越多的设备具有了无线网络的接
入能力。这些设备的特点是小型化以及低功耗,大多数类似的设备都没有配置屏
幕以及键盘等输入外设,因此如何将无线网络的 ssid 与密码传输到这类设备成为
一大难题。
Air Kiss 技术对应用设备的硬件几乎没有额外的要求,仅需在设备上配置一
个按键,用户在长按后会进入 Air Kiss 模式,如下图所示。在本例中,智能插
座在按下了 Air Kiss 按键之后,指示灯闪烁,成为了 Air Kiss 技术中信息的接收
方。另外,用户需在手机端(或者其它具有无线网络接入能力的设备)安装 Air Kiss
软件,安装完成之后,手机端便具有了 Air Kiss 信息传输能力,成为 Air Kiss 技
术中的信息发送方。用户使用 Air Kiss 的交互流程如下:
①按下智能插座上的 Air Kiss 模式按键,Air Kiss 指示灯闪烁,智能插座进入信
息接收状态。
②打开手机端进入 Air Kiss 的 ssid 与密码发送界面中,当前无线网络环境下 AP
的 ssid 已经帮用户填入,用户只需要填写密码,然后点击发送即可。整个 Air Kiss
过程将在 15 秒内完成。
http://iot.weixin.qq.com/wiki/doc/wifi/AirKissDoc.pdf
- 在硬件设备固件中添加微信AirKiss 3.0 SDK,使其支持微信转发的消息格式,同时允许被微信发现 - 由于Airkiss3.0 SDK需要根据设备的硬件平台来专门编译提供,目前采用线下邮件申请的方式。请填写申请表,并发送邮件至wxthings@foxmail.com,邮件标题请注明“微信Airkiss3.0 SDK申请”。
- . 每个型号统一的二维码----型号二维码是指一个二维码对应某一个类别/型号的产品,不包含某个具体设备的信息,因此在设备生产过程中,不需要二维码与设备进行一一对应。用户使用扫一扫,扫描品类二维码时,微信客户端会通过局域网发现技术搜索该类别/型号的设备,发现后再进行绑定。因此,使用型号二维码的设备必须支持微信AirKiss局域网发现(即AirKiss2.0)---
- 2.3 开发流程
- 2.3.1 设备授权
- 使用型号二维码,需要在设备授权时,添加产品编号字段"product_id": “****”。
Reference - Chinese
http://iot.weixin.qq.com/wiki/new/index.html?page=1-4
Solution vendor:
http://iot.weixin.qq.com/wiki/new/index.html?page=6-2-1
2016年6月24日 星期五
nRF51x - nRF51422 and nRF51822 IC revisions compatibility with SDK and SoftDevices
Nordic separate BLE stack and application.
nRF51x IC also has compatible issue for software version.
Check here about IC and Soft compatible matrix.
https://www.nordicsemi.com/eng/nordic/Products/nRF51822/ATTN-51/41917
nRF51x IC also has compatible issue for software version.
Check here about IC and Soft compatible matrix.
https://www.nordicsemi.com/eng/nordic/Products/nRF51822/ATTN-51/41917
2016年6月23日 星期四
2016年6月21日 星期二
Bluetooth certification - on board or module - note- Chinese
- 公司已取得認證之Bluetooth Module組裝產品(Keyboard)是否須再次申請NCC認證?
不需要,B公司向A公司取得該認證之Bluetooth Module的使用授權即可
Bluetooth certification list:
If the profiles and design are the same, don't need to certificate again.
One ID could list a lot of products. But if would like to assign new model with new ID, it needs to apply new ID.
Module if has RF regulation test certification, the product without changing RF antenna and module design, be able to use the certification.
http://thinkingiot.blogspot.tw/2016/05/bqb.html
http://www.quietek.com/chinese/cert/ncc.aspx?cpid=14&dpid=18
http://www.app-device.com/bluetooth-deepblue/
http://raytac.pixnet.net/blog/post/72467033-%E9%96%8B%E7%99%BC%E8%97%8D%E8%8A%BD4.0-(%E8%97%8D%E7%89%994.0)-%E7%94%A2%E5%93%81%E7%9A%84%E5%AE%89%E8%A6%8F%E6%B8%AC%E8%A9%A6%E8%B2%BB%E7%94%A8%E5%A6%82
2016年6月20日 星期一
Bluetooth 5.0 is coming
- SIG is going to release 5.0 in June, 2016.
- Expect to see new device next year.
- Improve 4 times the connection range compare to 4.0.
- Improve the data speed to double than 4.0.
- Design for IOT application.
- That demand stems in large part from devices connected to the Internet of Things, especially low-power beacons.
- Bluetooth 5 will make beacons, location awareness, and other connection-less services effortless and seamless.
- Instead of automatically requesting to pair with a device, Bluetooth 5.0 will be smart enough to analyze the type of connection required to transmit the information.
https://www.bluetooth.com/news/pressreleases/2016/06/16/-bluetooth5-quadruples-rangedoubles-speedincreases-data-broadcasting-capacity-by-800
Bluetooth 4.0, Bluetooth 4.1 and Bluetooth 4.2; What's the difference?
Bluetooth 4.0 has new hardware design and software design for low energy use.
The SIG creates two kinds of device at 4.0 including Bluetooth Smart Ready and Smart.
Smart Ready is used at most platform such as smart phone or laptop, could support traditional Bluetooth and Bluetooth 4.0 both.
Bluetooth Smart is only Bluetooth 4.0 device and could not connect with traditional Bluetooth device.
Bluetooth 4.0, its name Bluetooth low energy, means remove some hardware and software capability and redesign the system for low energy device compared to traditional Bluetooth.
Bluetooth 4.1 vs Bluetooth 4.0?
The job of Bluetooth 4.1 is to drive the ‘Internet of Things’ (Io, namely the thousands of smart, web connected devices – from fridges to toothbrushes – that are expected to enter our lives over the next decade.
1. Coexistence
Bluetooth 4.1 eliminates this by coordinating its radio with 4G automatically so there is no overlap and both can perform at their maximum potential. It's about phone Bluetooth spec.
2. Smart connectivity
Rather than carry a fixed timeout period, Bluetooth 4.1 will allow manufacturers to specify the reconnection timeout intervals for their devices. This means devices can better manage their power and that of the device they are paired to by automatically powering up and down based on a bespoke power plan.
3. Improved Data Transfer
Bluetooth 4.1 devices can act as both hub and end point simultaneously. This is hugely significant because it allows the host device to be cut out of the equation and for peripherals to communicate independently.
Bluetooth 4.2, what's new?
Why use BLE 4.2 instead of BLE 4.1? The Bluetooth SIG recommends implementing Bluetooth 4.2 in all new designs and requires the same qualification process as all other Bluetooth designs. Devices using Bluetooth Smart will be backward compatible with Bluetooth 4.0 or 4.1 devices that also implement the low energy features. Devices implementing the (BR/EDR) Core Configuration will be backward compatible to all adopted Bluetooth Core versions beginning with 1.1 that also implement Bluetooth BR/EDR.
It means the upgrade may not just F/W upgrade, hardware may also need to change.
The iPhone 5 is using Bluetooth 4.0 [1].
Using a device that has a newer version would not work unless it is backwards compatible; for instance, if a device you are trying to connect was using Bluetooth 4.2 and needed Data Length Extension (it may, not entirely sure) then it would not work with the iPhone because that is hardware not software limited [2].
IoT Capabilities:
Low-power IP (IPv6/6LoWPAN)
Bluetooth Smart Internet Gateways (GATT)
With BLE 4.2 Bluetooth Smart sensors can transmit data over the internet.
Security:
LE Privacy 1.2
LE Secure Connections
With new, more power efficient and highly secure features, BLE 4.2 provides additional benefits allowing only trusted owners to track device location and confidently pair devices.
Speed:
250% Faster
10x More Capacity
Compared to previous versions, BLE 4.2 enables 250% faster and more reliable over-the-air data transmission and 10x more packet capacity.
Apple support BLE 4.2 news.
http://www.phonearena.com/news/Did-you-know-Apple-has-added-Bluetooth-4.2-to-iPhone-6-iPhone-6-Plus-and-iPad-Air-2_id74601
iPhone 6 series most support Bluetooth 4.2
http://www.apple.com/iphone/compare/
Reference:
1. (from https://www.quora.com/What-are-the-main-differences-between-Bluetooth-4-0-4-1-and-4-2-in-the-Layers-Baseband-LMP-L2CAP-app-Layer)
2. SIG Bluetooth Q&A
The SIG creates two kinds of device at 4.0 including Bluetooth Smart Ready and Smart.
Smart Ready is used at most platform such as smart phone or laptop, could support traditional Bluetooth and Bluetooth 4.0 both.
Bluetooth Smart is only Bluetooth 4.0 device and could not connect with traditional Bluetooth device.
Bluetooth 4.0, its name Bluetooth low energy, means remove some hardware and software capability and redesign the system for low energy device compared to traditional Bluetooth.
Bluetooth 4.1 vs Bluetooth 4.0?
The job of Bluetooth 4.1 is to drive the ‘Internet of Things’ (Io, namely the thousands of smart, web connected devices – from fridges to toothbrushes – that are expected to enter our lives over the next decade.
1. Coexistence
Bluetooth 4.1 eliminates this by coordinating its radio with 4G automatically so there is no overlap and both can perform at their maximum potential. It's about phone Bluetooth spec.
2. Smart connectivity
Rather than carry a fixed timeout period, Bluetooth 4.1 will allow manufacturers to specify the reconnection timeout intervals for their devices. This means devices can better manage their power and that of the device they are paired to by automatically powering up and down based on a bespoke power plan.
3. Improved Data Transfer
Bluetooth 4.1 devices can act as both hub and end point simultaneously. This is hugely significant because it allows the host device to be cut out of the equation and for peripherals to communicate independently.
Bluetooth 4.2, what's new?
Why use BLE 4.2 instead of BLE 4.1? The Bluetooth SIG recommends implementing Bluetooth 4.2 in all new designs and requires the same qualification process as all other Bluetooth designs. Devices using Bluetooth Smart will be backward compatible with Bluetooth 4.0 or 4.1 devices that also implement the low energy features. Devices implementing the (BR/EDR) Core Configuration will be backward compatible to all adopted Bluetooth Core versions beginning with 1.1 that also implement Bluetooth BR/EDR.
It means the upgrade may not just F/W upgrade, hardware may also need to change.
Chris Carini, Touched over 4000 iPhones in under a year.
15.5k Views
Using a device that has a newer version would not work unless it is backwards compatible; for instance, if a device you are trying to connect was using Bluetooth 4.2 and needed Data Length Extension (it may, not entirely sure) then it would not work with the iPhone because that is hardware not software limited [2].
IoT Capabilities:
Low-power IP (IPv6/6LoWPAN)
Bluetooth Smart Internet Gateways (GATT)
With BLE 4.2 Bluetooth Smart sensors can transmit data over the internet.
Security:
LE Privacy 1.2
LE Secure Connections
With new, more power efficient and highly secure features, BLE 4.2 provides additional benefits allowing only trusted owners to track device location and confidently pair devices.
Speed:
250% Faster
10x More Capacity
Compared to previous versions, BLE 4.2 enables 250% faster and more reliable over-the-air data transmission and 10x more packet capacity.
Apple support BLE 4.2 news.
http://www.phonearena.com/news/Did-you-know-Apple-has-added-Bluetooth-4.2-to-iPhone-6-iPhone-6-Plus-and-iPad-Air-2_id74601
iPhone 6 series most support Bluetooth 4.2
http://www.apple.com/iphone/compare/
Reference:
1. (from https://www.quora.com/What-are-the-main-differences-between-Bluetooth-4-0-4-1-and-4-2-in-the-Layers-Baseband-LMP-L2CAP-app-Layer)
2. SIG Bluetooth Q&A
2016年6月14日 星期二
Nordic NUS service
Compare to standard UUID 128 bit
The Bluetooth_Base_UUID is: 00000000-0000-1000-8000 00805F9B34FB
TI base UUID of F000XXXX-0451-4000-B000-000000000000 where XXXX is the initial 16-bit UUID.
=============================================================================
#define BLE_NUS_MAX_DATA_LEN (GATT_MTU_SIZE_DEFAULT - 3) ==> 23-3=20
UART configuration:
Notification:
ble_uart_c_rx_notif_enable
uint8_t rx_data[20];
reference:
1. http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk51.v10.0.0%2Fble_sdk_app_nus_c.html&cp=4_0_1_4_2_0_3
2. Old doc
https://devzone.nordicsemi.com/documentation/nrf51/6.0.0/s110/html/a00066.html
3. App: nRF UART app
4. https://github.com/NordicSemiconductor/ble_app_uart_c_S120/commit/f2a82961aba22e3457a3bfdc1bcad3180121075f
5. Demo App from Youtube:
https://www.youtube.com/watch?v=pcuXUIP61IA
6. ANCS NUS code
https://github.com/NordicSemiconductor/nrf51-ble-ancs-nus/blob/master/nrf51-ble-ancs-nus/ble_nus.c
#define | NUS_BASE_UUID {{0x9E, 0xCA, 0xDC, 0x24, 0x0E, 0xE5, 0xA9, 0xE0, 0x93, 0xF3, 0xA3, 0xB5, 0x00, 0x00, 0x40, 0x6E}} | ||||||||||
#define | BLE_UUID_NUS_SERVICE 0x0001 | ||||||||||
#define | BLE_UUID_NUS_TX_CHARACTERISTIC 0x0002 | ||||||||||
#define | BLE_UUID_NUS_RX_CHARACTERISTIC 0x0003
|
UUIDs used are:
- 6E400001-B5A3-F393-E0A9-E50E24DCCA9E for the Service
- 6E400002-B5A3-F393-E0A9-E50E24DCCA9E for the TX Characteristic Property = Write without response
- 6E400003-B5A3-F393-E0A9-E50E24DCCA9E for the RX Characteristic Property = Notify
Information from Android App description, the notify setting is different from the nordic official doc.
The Bluetooth low energy shield is available from Seeed Studio and Maker Shed
UUIDs used are:
- 6E400001-B5A3-F393-E0A9-E50E24DCCA9E for the Service
- 6E400003-B5A3-F393-E0A9-E50E24DCCA9E for the TX Characteristic
Property = Notify (TX is from pheriperal site sent data to App)
- 6E400002-B5A3-F393-E0A9-E50E24DCCA9E for the RX Characteristic
Property = Write without response (RX is got data from App site)
UUIDs used are:
- 6E400001-B5A3-F393-E0A9-E50E24DCCA9E for the Service
- 6E400003-B5A3-F393-E0A9-E50E24DCCA9E for the TX Characteristic
Property = Notify (TX is from pheriperal site sent data to App)
- 6E400002-B5A3-F393-E0A9-E50E24DCCA9E for the RX Characteristic
Property = Write without response (RX is got data from App site)
UART configuration:
The application uses the following UART settings:
- Baud rate: 38.400
- 8 data bits
- 1 stop bit
- No parity
- HW flow control: RTS/CTS
Notification:
ble_uart_c_rx_notif_enable
uint8_t rx_data[20];
#define SEC_PARAM_BOND 0 /**< Perform bonding. */ #define SEC_PARAM_IO_CAPABILITIES BLE_GAP_IO_CAPS_NONE /**< No I/O capabilities. */ |
reference:
1. http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk51.v10.0.0%2Fble_sdk_app_nus_c.html&cp=4_0_1_4_2_0_3
2. Old doc
https://devzone.nordicsemi.com/documentation/nrf51/6.0.0/s110/html/a00066.html
3. App: nRF UART app
4. https://github.com/NordicSemiconductor/ble_app_uart_c_S120/commit/f2a82961aba22e3457a3bfdc1bcad3180121075f
5. Demo App from Youtube:
https://www.youtube.com/watch?v=pcuXUIP61IA
6. ANCS NUS code
https://github.com/NordicSemiconductor/nrf51-ble-ancs-nus/blob/master/nrf51-ble-ancs-nus/ble_nus.c
SEO - register your website (chinese)
Baidu web manager - http://zhanzhang.baidu.com
Bing Webmaster Tools - http://www.bing.com/toolbox/webmaster
Google search console - https://www.google.com/webmasters
2016年5月24日 星期二
oximeter - HR monitor concept note - Chinese
光學式心跳量測簡介(PPG, Photoplethysmography)
http://urclazz.blogspot.tw/2015/09/ppg-photoplethysmography.html基于反射式原理的腕式血氧饱和度采集装置 Wrist Reflection-type Blood Oxygen Detector
http://oaps.lib.sjtu.edu.cn:8000/oaps/bitstream/123456789/334/1/2013-029-071.pdf
2016年5月23日 星期一
Install chromium on old PC
Chromium is open-source as like Chrome OS (closed).
We can't install Chrome OS now, could use Chromim to replace it.
1. Find old desktop or laptop and backup the files to avoid install erasing the files on your device.
2. Download ChromeOS build version, you could refer below link I found from Internet.
3. Download Win32diskimage tool, use this tool could select build Chromium image to write to USB disk.
4. Set up boot sequence to let USB disk priority high then plug in USB and reboot system.
5. After boot up, the system will go into Chromium mode. That could let you install Chromium OS on your device.
links:-
ChromeOs daily builds
http://chromium.arnoldthebat.co.uk/
Win32diskimager:
http://sourceforge.net/projects/win32...
We can't install Chrome OS now, could use Chromim to replace it.
1. Find old desktop or laptop and backup the files to avoid install erasing the files on your device.
2. Download ChromeOS build version, you could refer below link I found from Internet.
3. Download Win32diskimage tool, use this tool could select build Chromium image to write to USB disk.
4. Set up boot sequence to let USB disk priority high then plug in USB and reboot system.
5. After boot up, the system will go into Chromium mode. That could let you install Chromium OS on your device.
links:-
ChromeOs daily builds
http://chromium.arnoldthebat.co.uk/
Win32diskimager:
http://sourceforge.net/projects/win32...
Nordic nRF51 development tutorial
Setting up an example project on the nRF51 DK
https://devzone.nordicsemi.com/tutorials/2/
nRFgo Studio --> Program software device / program application
Testing and using a simple BLE application
https://devzone.nordicsemi.com/tutorials/4/
BLE Advertising, a beginner's tutorial
https://devzone.nordicsemi.com/tutorials/5
Debugging with Real Time Terminal
https://devzone.nordicsemi.com/tutorials/6/
Development with GCC and Eclipse
https://devzone.nordicsemi.com/tutorials/7/
BLE Services, a beginner's tutorial
https://devzone.nordicsemi.com/tutorials/8/
Setting up device firmware update(DFU) on the nRF51 DK
https://devzone.nordicsemi.com/tutorials/9/
The below information is from Nordic, good reference.
https://devzone.nordicsemi.com/tutorials/
https://devzone.nordicsemi.com/tutorials/2/
nRFgo Studio --> Program software device / program application
Testing and using a simple BLE application
https://devzone.nordicsemi.com/tutorials/4/
BLE Advertising, a beginner's tutorial
https://devzone.nordicsemi.com/tutorials/5
Debugging with Real Time Terminal
https://devzone.nordicsemi.com/tutorials/6/
Development with GCC and Eclipse
https://devzone.nordicsemi.com/tutorials/7/
BLE Services, a beginner's tutorial
https://devzone.nordicsemi.com/tutorials/8/
Setting up device firmware update(DFU) on the nRF51 DK
https://devzone.nordicsemi.com/tutorials/9/
The below information is from Nordic, good reference.
https://devzone.nordicsemi.com/tutorials/
Tutorials
Here you can find tutorials written by Nordic employees. If you have a question about or feedback on a tutorial, please ask a question in the questions section and link to the relevant tutorial.
We are regularly adding new tutorials and will try to cover as many areas as possible. Please give us feedback on which topics you are missing here.
Also have a look at the videos on our Youtube channel.
Getting Started
Covers topics on how to get started.- Setting up an example project on the nRF51 DK
- Testing and using a simple BLE application
- Development with GCC and Eclipse
- Debugging with Real Time Terminal
Bluetooth Low Energy
Covers different features of BLE, and how to implement these features with the SoftDevice.- BLE Advertising, a beginner's tutorial
- BLE Services, a beginner's tutorial
- BLE Characteristics, a beginner's tutorial
- BLE central tutorial
Software Development Kit
Covers examples, libraries and hardware drivers in our SDK.- Application Timer Tutorial
- Setting up device firmware update(DFU) on the nRF51 DK
- Radio Notification
- Scheduler Tutorial
- Setting up the Timeslot API
- Board support package (BSP)
- Implementing the device manager
- Migrating to Peer Manager
- Migration from µESB to nrf_esb
Hardware and layout
Covers hardware related topics and guidelines for layout.- Current measurement guide: Introduction
- Current measurement guide: Measuring current with PCA10040 v0.9.0
- Current measurement guide: Measuring current with nRF52832 Engineering B and S132 v2.0.0-7.alpha
- nRF51 current consumption guide
- General PCB design guidelines for nRF51
Design Examples
Covers how to implement different use cases with the nRF52IPX - content (Chinese)
http://blog.xuite.net/kiwishih/bloglife/20649195-%E6%88%B6%E5%A4%96%E4%BC%91%E9%96%92%E6%96%B0%E7%9F%A5+-+IPX+%E9%98%B2%E6%B0%B4%E5%AE%9A%E7%BE%A9
2016年5月13日 星期五
Google search tips
https://support.google.com/websearch/answer/2466433?hl=en
Every day I use Google to find information, research and study the new thing. Until now I found the good tips for improve your searching result. If you are like me using Google search every day, recommend you to read about this tip.
For me, I learn about $, -, * symbols, :site.
Every day I use Google to find information, research and study the new thing. Until now I found the good tips for improve your searching result. If you are like me using Google search every day, recommend you to read about this tip.
For me, I learn about $, -, * symbols, :site.
Symbol | How to use it |
---|---|
+ |
Search for Google+ pages or blood types
Examples: +Chrome or AB+ |
@ | Find social tags Example: @agoogler |
$ | Find prices Example: nikon $400 |
# |
Find popular hashtags for trending topics
Example: #throwbackthursday |
- | When you use a dash before a word or site, it excludes sites with that info from your results. This is useful for words with multiple meanings, like Jaguar the car brand and jaguar the animal. Examples: jaguar speed -car or pandas -site:wikipedia.org |
" | When you put a word or phrase in quotes, the results will only include pages with the same words in the same order as the ones inside the quotes. Only use this if you're looking for an exact word or phrase, otherwise you'll exclude many helpful results by mistake. Example: "imagine all the people" |
* | Add an asterisk as a placeholder for any unknown or wildcard terms. . Example: "a * saved is a * earned" |
.. | Separate numbers by two periods without spaces to see results that contain numbers in a range. Example: camera $50..$100 |
Operator | How to use it |
---|---|
site: | Get results from certain sites or domains. Examples: olympics site:nbc.com and olympics site:.gov |
related: | Find sites that are similar to a web address you already know. Example: related:time.com |
OR | Find pages that might use one of several words. Example: marathon OR race |
info: | Get information about a web address, including the cached version of the page, similar pages, and pages that link to the site. Example: info:google.com |
cache: | See what a page looks like the last time Google visited the site. Example: cache:washington.edu |
2016年5月11日 星期三
CC2640 VS CC2540 VS CC2650
from https://e2e.ti.com/support/wireless_connectivity/bluetooth_low_energy/f/538/p/417820/1486886#1486886
http://processors.wiki.ti.com/index.php/CC26xx_FAQ
cc2640 vs cc2541 differences
Good afternoon!
I want to decide between the CC2640 and the cc2541. Because of this, I would like your opinion on several subjects :)
- Where do the power savings in RF come from? In other words, why does cc2541 require so much power compared to cc2640?
- How is it possible having 2 ARM in cc2640 consumes a similar value than 8051-based cc2541? I'm not an architecture guy so be kind here ;)
- I guess the change to simpleLink came from the need for more memory to fulfill v4.1 and v4.2 features and requirements. I heard cc2640 handles most of v4.1 and it will be able to manage v4.2. What about cc2541 for these two versions?
- How many BLE devices may handle the cc2640? There was a limit of.... 3 (AFAIR) in cc2541?
- Does the RTOS in cc2640 provide a huge difference in application performance? :) I'm more interested in your subjective opinion here, the "feeling" you have when debugging and running your applications.
- Which is the future of cc2541 at TI? In other words, should we discard this chip for new designs? I guess I will be able to extract this information from your previous answers but let me know them explicitly ;)
- I'm also interested in any additional thought and/or opinion and/or interesting issue I have not asked about and you may tell me! :)
Well, have the nicest day! :)
1) Basically because the radio is totally redesigned.
2) This is just because the modern ARM processors are more efficient than the old 8051. Additionally we are using new production process, new technology, etc. Adding a built-in DCDC regulator also increases efficiency. Keep in mind though, that none of the numbers in the datasheet are for running both cores simultaneously.
3) You are correct on CC2640. CC2541 will not be able to fulfill all of 4.1 due to RAM limitations.
4) Our current number is 8
5) Everything is faster in the CC2640 compared to the CC2541. Really.
6) The CC2541 will still be supported by us. We also plan to update the BLE stack for CC254x to 1.4.1 this year. It you prefer a device that have been in the market for several years and is mature, and you can live with the current consumption and the 8051 core, the CC2541 is still a good part to use.
7) You can get the CC26xx SensorTag for $29 with a low cost debugger for just additional $15. Get a kit and check it out!
Cheers,
Fredrik
2) This is just because the modern ARM processors are more efficient than the old 8051. Additionally we are using new production process, new technology, etc. Adding a built-in DCDC regulator also increases efficiency. Keep in mind though, that none of the numbers in the datasheet are for running both cores simultaneously.
3) You are correct on CC2640. CC2541 will not be able to fulfill all of 4.1 due to RAM limitations.
4) Our current number is 8
5) Everything is faster in the CC2640 compared to the CC2541. Really.
6) The CC2541 will still be supported by us. We also plan to update the BLE stack for CC254x to 1.4.1 this year. It you prefer a device that have been in the market for several years and is mature, and you can live with the current consumption and the 8051 core, the CC2541 is still a good part to use.
7) You can get the CC26xx SensorTag for $29 with a low cost debugger for just additional $15. Get a kit and check it out!
Cheers,
Fredrik
- The multi-standard CC2650 wireless MCU supports BLE as well as other wireless protocols, such as 802.15.4. The CC2640 supports Bluetooth Low Energy only.
- The CC2640 & BLE-Stack v2.0.0 supports BT4.1. At this time, TI has not made any announcements regarding CC2640 support or capability of BT specifications beyond BT4.1.
2016年4月20日 星期三
Ultrasound Study
1. How Ultrasound Works (1:40)
https://www.youtube.com/watch?v=I1Bdp2tMFsY
2. Ultrasound Podcast - Physics Basics
https://www.youtube.com/watch?v=HcQ3SHPgHbY&ebc=ANyPxKqhti7EgbbtYiC8SfKoZ4AFq6268OdidcYp070sGkHf0uPApYcU4qXerblF4t85DHlAN0Jciy8X0R86piQegNDaYjpeLA
3. Basics of ultrasound machine
https://www.youtube.com/watch?v=JqVGgq5bE-Y
https://www.youtube.com/watch?v=I1Bdp2tMFsY
2. Ultrasound Podcast - Physics Basics
https://www.youtube.com/watch?v=HcQ3SHPgHbY&ebc=ANyPxKqhti7EgbbtYiC8SfKoZ4AFq6268OdidcYp070sGkHf0uPApYcU4qXerblF4t85DHlAN0Jciy8X0R86piQegNDaYjpeLA
3. Basics of ultrasound machine
https://www.youtube.com/watch?v=JqVGgq5bE-Y
2016年4月19日 星期二
power generator - Chinese
http://www.materialsnet.com.tw/DocPrint.aspx?id=7338
【主要技术参数】
(一)电气参数:(灯来后摇动一分钟)
1.充电电池规格镍氢3.6V,40mAh;
2.线圈最高输出电压5~6V;
3.最高贮存电压4.5V;
4.最大工作电流:20-30mA;
5.最高亮度:≥45000~60000MCD;
6.光亮时间:≥30分钟;(单灯30分;三灯约20分钟)
from http://www.wjw.cn/product/mbr060918193230163980/pro070302133723118655.xhtml
A mechanically powered flashlight. This uses a linear generator and is charged by shaking along its long axis.
【主要技术参数】
(一)电气参数:(灯来后摇动一分钟)
1.充电电池规格镍氢3.6V,40mAh;
2.线圈最高输出电压5~6V;
3.最高贮存电压4.5V;
4.最大工作电流:20-30mA;
5.最高亮度:≥45000~60000MCD;
6.光亮时间:≥30分钟;(单灯30分;三灯约20分钟)
from http://www.wjw.cn/product/mbr060918193230163980/pro070302133723118655.xhtml
A mechanically powered flashlight. This uses a linear generator and is charged by shaking along its long axis.
訂閱:
文章 (Atom)