Agama 硬件简介
Loading the player...
将在30s后自动为您播放下一课程
好 5.0就是三个口号 所以至少今天你在 花这个时间来听我们的 介绍 你至少 记得什么是5.0 两倍的距离 这个 弄错了 要改 好 两倍的throughput啊 就data rate 然后4倍的距离 然后8倍的广播资料 那为什么它可以达到2倍的距离 因为它的data rate 2M PHY这边它从 一面杠support两面杠的模式 那刚刚有提到说 data rate throughput跟距离 是鱼与熊掌 不可兼得 因为它是用跳变的方式 去产生一个比较告诉的两面杆 5 rate data rate 所以它的距离就会 比较短一些 那它另外一个好处 比较告诉 所以空气中传输的时间就 变短 那这样也会让device更省电 那在距离方面 它的跳变呢 有两种 一个是S2 S2就是除以2 什么除以2 1MG除以2 1MG除以2就变成500K 500K的模式 另外一个是除以8 就125K的模式 OK 那你牺牲掉的throughput 换回来的就是 可以传比较高的距离 然后 相对的 你空气中传输的时间就会 增长了 第三个功能就是广播封包 资料量乘以8倍 那后面介绍你会更了解说 它不止是乘以8倍 加上它一个新的packet的封包格式呢 它叫做chain 就是把它连接起来 它可以更长 那包括你要用新的PHY 可以用两面杆 或者是 coded S2或者8 然后在非连接的模式下 然后它这边增加了一些封包型别 待会可以跟各位讲 那它为什么可以做这样 这就类似我们新研的软体一样 它有pointer 指标 跟pointee 被指到的物体 它就是广播的实体的payroll 像这种概念 可以让你 你的广播的资料可以更 封包量更大 可以传到1560个byte 那这边介绍它怎么做到 2M的模式 就是它把symbol rate呢 double 本来就是1M 然后把1个signal代表的bit呢 给它double 那所以 对它变两倍 是不是传输的时间就缩短一半呢 我们来看啊 当然有一些特性的 底下是传统1M的模式 它的传输 那这个是2M模式 的确这个封包的长度变短了 但是蓝牙有一些特性的 规范 你封包跟封包之间 至少要相隔150个纳秒 好 你看 所以整体来讲 这个时间到下个时间 虽然你一半的时间 把该传的资料传完 但你还是要等这个时间 因为刚刚有讲过 5.0的device必须要跟4.2相同 所有有4.2的一些 你可以说它是 规范或者包袱也好 它都必须要follow OK 所以它一定可以变成 两倍快速吗 要几个要素要考虑到 一个是连线的间隔 还有封包的size 还有每个连线的connection 通联的时间它可以 带几个封包 都要纳入考量 好 那再来 Coded PHY刚刚讲都是通过 symbol rate 的调整 那 这个S2呢 就是我们一个bit用两个 symbol来代表 那我们再用FEC Forward error connection来做补偿 所以 即使你封包 即使你bit有掉几个 它一样可以把它矫正回来 那所以 这就好像说 现在流行一句话就是 因为很重要 所以说几次 很多次 对不对 所以当你说很多次 那个对方漏掉一次 他还有机会catch up回来 就是这个意思 所以这个 但是它里面涵盖的 通讯的储存的 那个理论在里面 OK 所以另外一个就是 除以8倍的就是 125K的模式 OK 这个是详细的一个封包里边 的栏位 那因为无线通信在idol的时候 它为了让你收到讯号跟类似sync 同步的功能 所以封包前面都会有preamble· 所以这个东西是不管 1M 还是S2 S8都要 follow的 都要用一样的preamble 后面就是 它用S8 来规范 另外 后面就可以用S2或S8来 传输 所以你看 标准的1M的模式 是这么长的话 所以你看 这边的间隔要150纳秒嘛 然后这个是150纳秒 所以因为这个荧幕容不下那么大 所以我们类似把S2这边呢 缩小一半 所以真正呢 这个S2比这个S1 不是S1 是1M的模式呢 大概要将近4倍的时间 OK 好 这边就讲掉 这边150纳秒相对 相应这边代表150纳秒 OK 所以 这边就是你 换的可以有远距离 那你的side effect就是缺点就是 传输的时间真的变得很长 好 这边是一个 线上的影片 大概是将近6分钟 那我不在这边播出 这边有link的网址 连接 那各位会后可以去观赏 那我们这个老外呢 在挪威 那他在冬天的一个环境呢 一个人站在山顶上 另外一个人站在湖面 那山顶到湖面的距离 大概是1公里远 OK 那当然这边有一点出题就是 在冬天 下雪的话 它的湿度是比较低的 那这也要注意RF的传输 然后中间会有 这个老外呢 他会跟各位讲述 这个S2到S8的原理 帮助你 1呢 我们就变成10或01 然后S8呢 再把它展开 所以就真的是一句话来讲 重复讲了好几遍的意思 OK 好 然后这边是讲第三个部分 LE5.0 第三个部分 就是广播封包 变长的特色 好 这边是recap 就是复习一下 传统就是5.0之前 它的封包呢 用到哪些型体 有这几种 OK 好 那它的特性就是 它只用1M的data rate来传 然后payroll就是你塞在封包里面的 资料 就是内容物 一个封包只能塞31个byte的 就是8位元 31个byte 然后你只能在37 38 39 的封包来做那个广播 OK 好 所以这是31个byte 好 那这是5.0之前的 针对广播封包的规范 好 那各位可以想说 这边跟大家复习一下 37 38 39 它并不是在 在频谱上看 它并不是连续的3个channel 37呢 是在2402就是 24频带的最前面 38是在三分之一的部分 39是在最后边 2480 那边 那为什么它是这样分配的 因为21.4 它是 有蓝牙 也有WiFi使用 那WiFi 它的频宽 最少都是20MG 甚至现在是40MG 所以利用率呢 我们只能插空隙 因为它的power比较小 所以就塞在最前面 最后面 三分之一的部分 OK 那另外就是 37 38 39 是大家公用的channel 所以 37 38 39的资源是非常重要 跟珍贵的 那新的呢 5.0针对A1 就是 广播延长这个功能啊 它定义了几个风暴型别 你可以看到EST啊 或者这个AES辅助的 都是5.0新加的封包型别 那刚才有讲 就是说 它为什么可以这样做啊 然后要能够相容旧的 就是它利用pointer就是指标 跟pointee 被指到的标记物 这种概念 所以它会在原来的 我们叫primary channel 我们叫37 38 39 Secondary channel 就是非37 38 39 的部分的channel 所以 37 38 39它只会说什么 哎 我什么时候 即将在哪个channel做广播 就只讲这件事情而已 因为37 38 39是很珍贵的 就是大家公用嘛 你如果把这个37 38 39狂用的话 就会塞爆 OK 那各位来看 这些都是 红色的框代表是在 37 38 39这是 主要的data channel来做广播 它的封包型别呢就是ADV EXT Extension 意思是advertisement extension indication 就是identify 通知 然后 它指到哪里 就是指标嘛 它就是里面的封包的内容 会带着 会跟你讲 什么时候 在哪里 在第几个channel 我会传的这个封包 OK 我会传这个封包 所以这些指标 这是pointee 被指的地方 OK 那它的封包就是 AUX ADV 刚才讲 AUX就是615 才有的定义的封包 OK 那这边就 刚刚讲 EST呢 因为它为了相容 4.0 4.1 4.2 所以它一开始只能在哪里广播 primary data channel 37 38 39 OK 那它里面带到内容会 有两个 会PHY 会跟你讲 我是谁 我即将在哪里 什么时间 哪个地点 因为地点就是channel 来做我要延伸的封包 OK 那这个东西可以 是1M 也可以是 S2 S8 为什么 因为想一个场景 就是 如果你的device跟 就是你的PHY跟你的central连线的 连完线之后 你把那个Coded PHY设成 S2或者S8 那这样才会把距离拉远 对不对 那距离拉远之后呢 如果不小心断线的时候 如果它只有1M会怎样 1M的距离比较近 对不对 两个资料在走进 连线在拉远 这样子是失去了长距离的特性 对不对 所以它这个advertisement extension 一定要支援S2或者S8的data rate OK 然后再来 我们另外有辅助的AS 你看我们 传统的ADV IND对不对 那么我们加一个AUX 就是5.0才有的 它就是pointee 就是被指到的地方 那它会在哪里出现呢 它就可以在 PHY广播封包 37 38 39 为什么 因为你 37 38 39占用太多的话 你其他的就没办法广播 没办法广播就没办法连线 所以各位如果去 蓝牙的一些seminar看 如果有布置 如果你有时间去看去听的话 你可以看到37 38 39 几乎都塞爆了 因为现场一定有什么 什么demo mash 61的mash 所以[听不清}的mash 你看 mash号称只要support 4.0的device 就可以增加[听不清]mash 因为它就是 因为它就是在用37 38 39 把它塞爆了 OK 那后果怎样 效率就不好 OK 好 那在这里 因为我们前面的pointer 已经把它引导到后面的 所以它就是 就是辅助的ADV 就可以配合前面来 指定 比如说 这面是S8 后面就引用S8 这样子 那另外还有一个 SYNC跟Chain 那刚刚有讲到 CHAIN字面上就是链条嘛 它就把封包再一次地 所谓的connection interval 在同一个连线的时段里面 我可以用CHAIN的方式 一次传七八个封包 所以刚刚有讲 乘以8 只有乘以8吗 可以更长 我们这个就把 纵轴是channel 还有一个channel的意思 然后这边是时间轴 横轴是时间轴 我在37 38 39 广播 这是pointer 广播的内容里面呢 有PHY 我即将多久 shift就是间隔 多久在哪一个channel 来做广播 那如果我要送长封包呢 我已经搜到 我接受这个指示呢 接受这个pointer的封包 我只是来 来到这边 对不对 那我这个就要善用啊 我是不是还有资料一直一直这样 类似像chain把它串起来 这个意思 所以 5.0的这个长封装就是利用这个 pointer加pointee的方式 那再加上这个chain 就可以让你达到 一次可以传送1650个byte 这么大的一个资料量 好 那 另外一样 旧的 就是在5.0之前 所有的scan request scan response 5.0一样也有 那一样哦 看到这个AUX开头的 都是5.0才有的封包 OK 那我们看看它怎么应用啊 前面是extension 对不对 ADV EXT的 IND的封包 就pointer 然后 跟人家讲 我会在哪里 做这个 广播 然后就进来了 那对方呢 如果是收到的scan request 然后发 你那个 广播者呢就回应 跟response data 一样哦 我们可以用chain的方式 这个黄色就是chain chain的封包 把这个 待续 continue就是 后面我要送的资料呢 一口气把它丢出去 所以这样你就可以串好几个 最长可以1560个板 OK 好 所以我们做个summary啊 那AE可以support哪几种 型别呢 可连线的 然后non scannable 就是没办法回应 scan response 所以当对方收到这个是non scannable 他不会发scan response scan request 如果发的话 就违反space OK 所以它要用到基本的ESD跟 AUX辅助的ADV 然后它这个connectable嘛 所以 就是可以连线 所以 很正常嘛 它可以连线 所以你有什么悄悄话 你可以都现在去讲 就不用通过这个广播封包来讲这个一些的话 OK 然后scannable呢 它就可以去听 Scan request 那也可以 让人家去连线 那这边它为什么可以到1650个呢 你看啊 这个数字乘以8 刚刚记得吗 我们传统的话 一个只能 payroll只能塞31个对不对 31乘以8 就是243 所以乘以8就是这里 所以一个packet可以传243 那多个packet呢 透过这个chain呢 它就可以传到1650个byte OK 这里应该写大B啊 指的是Byte OK 另外一个就是broadcast就是类似 beckon的应用 w/chain同样可以传到1650个 那么因为它是broadcast 像beckon 它不会让人家来scan request 也不会回应这个connection 它的角色就是一直broadcast 好 接着我们就要讲 我们的SDK提供了哪些范例 就是我们的SDK提供的 好 Autobus就是我们的SDK 里面开箱呢就有一些范例 那肯定是包括在我们的preview里面 我们就有AE跟coded PHY 的特色 那一样还记得吗 刚刚有讲到 我们的TI Resource 资源里面就有一些范例 我等下会再跟各位介绍 那另外只要你follow这个peripheral SIMPLE Peripheral跟simple central 你就需要去验证BLE5.0的 三个特性 好 那这个是我们透过 Ellisys的tracker 抓到的封包 这个纵轴是channel 就是RF channel 还记得吗 37 38 39 37是最前面 38在三分之一的部分 39是280 最后一个channel OK 所以在37 38 39 这个是1M的 广播 我们来看 如果用S2来讲 哎 你有没有发现这个封包变长了 对不对 因为它有S2 200K 所以它传输的时间就变长了 那这个指标是代表什么意思呢 还记得刚才跟大家讲的 5.0它的广播延长的特性就是 就是用pointer 对不对 它的封包就要像一个指标一样 跟你讲我什么时间点 什么地点会送这个封包 所以它里面的内容就像一个 pointer 指标 指到这里来 这个呢 指到这里来 这个应用 OK 好 那再来呢 我们就 讲针对前面那个图 还记得吗 pointer跟pointer pointer跟pointer经过的passer呢 它的封包[听不清] 就讲这边 那这是黑的部分 它的header PDU type 这个跟 这个都是ADV的一个extension 这两个都是一样 两个差异在哪里呢 在这边广播跟广播 第一个是channel 对不对 好 它在38 它在39 然后还有 这两个东西 都会指到哪一个 指到这里 这个时间比较前面 这个时候比较后面 所以 什么会不一样 让我们来看 offset 这里要隔多久 1.74毫秒 这里隔多久 870us嘛 因为 我这个pointee要来的时间越来越短 好 那其他呢 一个一个去看 都不一样 好 为了怕人家听的人呢 去这边听 那万一刚好又有别的地方 别的device也在这边送的话 哎 他怎么知道哪个是对方要听的 从这里 DID跟SID 从这里来判别 DID最大距离的时候 这个东西是我要听的 好 误听到别人的悄悄话 OK 好 好 那再看 刚刚在做这两个封包 对不对 我们看这个东西 是什么 辅助AES 就是5.0才有的 一个是ADV indication 然后你看这里 这边就是它的payroll 它的payroll 它传的资料在这里 OK 好 那这边就有带 带我是谁 广播者的address 这边没有带哦 这边没有带 所以你在这边才会知道 这个是谁 好 那再看我们针对 软体的部分 就是 API 那API的话 这个是 我们之前旧的API 一直在用setParameter setParameter 把广播的资料 scan Rsp的资料 最后再把它制冷 然后有一个GAP的task 去处理这个API 哦 那这个是legacy抓下来的 当你呼叫这些东西之后 就针对分包出来了 从37 38 39 37 38 39 来送 哦 还记得吗 我们的payroll只有31个 byte 那它可能有加载一些heater 所以这边才需要33 好 那新的呢 新的API要达到刚刚那个功能的话呢 我们做了一些修改 因为5.0它的那个 一些需求比较多 所以我们把这个做成一个schedule 做成419 然后首先要考虑一个 我们用handle来处理 你看后面都是透过handle 来设定 OK 那它刚刚的set 对不对 出现在这里 就变成了structure OK 然后inable 智能之后 就可以在37 38 39 做广播 OK 所以 各位如果没有接触过我们之前的SDK的话 那就比较没有前面的这些帮助 就可能需要做一些小调整 好 那如果这边你要改 1M变2M 你要怎么改 我们来看 这边有 primary secondy的PHY 都是1M 所以它走的 都是1M 我们来看 哎 还记得吗 这是它们的parameter的资料架构 把里面资料架构的栏位 secPHY把它设成这个 好 然后在create的时候 它就会 而且我们让它可以做 scannable 可以回应这个scan request的 所以它就这样 广播广播 然后到这里 就是gap adv 对不对 所以别人呢 就可以发送request 后面就一直传 为什么它可以这样连续传 它用的是什么 CHAIN对不对 刚才也讲到的 CHAIN 像链条一样 OK 好 那我们就针对刚刚的一个条件 就scan request来做 更深度的那个解释 那这边也是一样 在37 38 39 做广播 对不对 然后这里 这里是AES EST ADV的一个indication 然后这边就request 因为我们是scannable嘛 所以这边就是 scan request 这个封包 OK 那前面就是 这个是照顺序来的 第一个是packet 在37 这一个38 39 然后这个 AUV scan REQ这里 它就跑到哪里 21了 那大家全部都到21去了嘛 所以它后面呢 request啊 response啊 然后这个CHAIN统统都在21的部分 OK 你看哦 这边253 加起来 就可以到1650个Byte OK 然后它就在 把[听不清]输掉呢 再重新传输一遍 这个是一个summary 整个的 在这里 然后它这个从前面开始 就是ADV EXT IND 这三个 所以这里你回顾一下 它的新的封包型别 那它是一个pointer对不对 一个指标嘛 那它可以被扫描 然后它里面的识别码就是SET ID DATAID 那pointer什么时候 在哪里 在哪个channel 什么时候 就在offset这里 offset 然后how就用什么 PHY 所以这三个类似的 可以让人家知道 我即将在哪里呢 做广播 好 那第二个 它就跳到这个 广播37 38之后呢 就到这里来 那有没有会说它如果没有跟到怎么办 它也一样啊 37 38 39 到20 假如刚好到21 刚好到21 哎 没有人要资料 对不对 它再回去 37 38 39 37 38 39到这里 那有人跟到了 有兴趣了 在这边 再回答 就是回应 回应一下给对方的封包 广播封包 OK 所以再看这里 21 channel的第一个 那21channel的第二个 就是scanREQ 对方有兴趣的 我会发这个scan request 再问详细一点 而且它会讲哦 我是谁 scanner 然后 发广播的是谁 OK This is me 因为它是带了scander 然后要跟这个讲话 然后再来 它就发scan 它就 前面的request之后就 response 就应该是response 这边错掉了 然后它这边就发response 的封包 就是6127 6127回的 6127回的 然后 它在 channel 16 OK 那这个是跟对方讲 我这一包 还没有结束哦 我将会在1.35毫秒后传第二包 OK 这个是它的raw data 这个是里面的payroll raw data OK 所以它这边会在 会在带我 后续还有 更多的资料 那后面呢 就是CHAIN了 用CHAIN的方式 用CHAIIN的方式把它串起来 传更多的封包 OK 那也一样 下一包会在多久之后会出来 那如果没有呢 就没有这个offset 所以收的人就知道 最后一笔了 不会再有 所以我们从这个 配合RF channel就是 纵轴呢 是频率 channel 横轴是时间 我们来看 它的封装 37 38 39 做pointer 然后跳到这里来 如果有人要我的资料 他就发scan request 然后呢 我就回scan response 因为我还有资料 所以 我就用CHAIN CHAIN CHINA 把它串起来 OK 所以这个完全是什么 pointer 和pointee的应用 好 所以它也可以让那个 4.0相容嘛 因为如果4.0看到这个封包 它听不懂啊 对不对 所以它只给一样听得懂5.0的人听 好 那这边是讲 我用2M的频率在传 我在时间轴呢 在头尾大概花了10.8毫秒 如果用最慢的呢 头尾花了116毫秒 差了10倍 差了10倍
好 5.0就是三个口号 所以至少今天你在 花这个时间来听我们的 介绍 你至少 记得什么是5.0 两倍的距离 这个 弄错了 要改 好 两倍的throughput啊 就data rate 然后4倍的距离 然后8倍的广播资料 那为什么它可以达到2倍的距离 因为它的data rate 2M PHY这边它从 一面杠support两面杠的模式 那刚刚有提到说 data rate throughput跟距离 是鱼与熊掌 不可兼得 因为它是用跳变的方式 去产生一个比较告诉的两面杆 5 rate data rate 所以它的距离就会 比较短一些 那它另外一个好处 比较告诉 所以空气中传输的时间就 变短 那这样也会让device更省电 那在距离方面 它的跳变呢 有两种 一个是S2 S2就是除以2 什么除以2 1MG除以2 1MG除以2就变成500K 500K的模式 另外一个是除以8 就125K的模式 OK 那你牺牲掉的throughput 换回来的就是 可以传比较高的距离 然后 相对的 你空气中传输的时间就会 增长了 第三个功能就是广播封包 资料量乘以8倍 那后面介绍你会更了解说 它不止是乘以8倍 加上它一个新的packet的封包格式呢 它叫做chain 就是把它连接起来 它可以更长 那包括你要用新的PHY 可以用两面杆 或者是 coded S2或者8 然后在非连接的模式下 然后它这边增加了一些封包型别 待会可以跟各位讲 那它为什么可以做这样 这就类似我们新研的软体一样 它有pointer 指标 跟pointee 被指到的物体 它就是广播的实体的payroll 像这种概念 可以让你 你的广播的资料可以更 封包量更大 可以传到1560个byte 那这边介绍它怎么做到 2M的模式 就是它把symbol rate呢 double 本来就是1M 然后把1个signal代表的bit呢 给它double 那所以 对它变两倍 是不是传输的时间就缩短一半呢 我们来看啊 当然有一些特性的 底下是传统1M的模式 它的传输 那这个是2M模式 的确这个封包的长度变短了 但是蓝牙有一些特性的 规范 你封包跟封包之间 至少要相隔150个纳秒 好 你看 所以整体来讲 这个时间到下个时间 虽然你一半的时间 把该传的资料传完 但你还是要等这个时间 因为刚刚有讲过 5.0的device必须要跟4.2相同 所有有4.2的一些 你可以说它是 规范或者包袱也好 它都必须要follow OK 所以它一定可以变成 两倍快速吗 要几个要素要考虑到 一个是连线的间隔 还有封包的size 还有每个连线的connection 通联的时间它可以 带几个封包 都要纳入考量 好 那再来 Coded PHY刚刚讲都是通过 symbol rate 的调整 那 这个S2呢 就是我们一个bit用两个 symbol来代表 那我们再用FEC Forward error connection来做补偿 所以 即使你封包 即使你bit有掉几个 它一样可以把它矫正回来 那所以 这就好像说 现在流行一句话就是 因为很重要 所以说几次 很多次 对不对 所以当你说很多次 那个对方漏掉一次 他还有机会catch up回来 就是这个意思 所以这个 但是它里面涵盖的 通讯的储存的 那个理论在里面 OK 所以另外一个就是 除以8倍的就是 125K的模式 OK 这个是详细的一个封包里边 的栏位 那因为无线通信在idol的时候 它为了让你收到讯号跟类似sync 同步的功能 所以封包前面都会有preamble· 所以这个东西是不管 1M 还是S2 S8都要 follow的 都要用一样的preamble 后面就是 它用S8 来规范 另外 后面就可以用S2或S8来 传输 所以你看 标准的1M的模式 是这么长的话 所以你看 这边的间隔要150纳秒嘛 然后这个是150纳秒 所以因为这个荧幕容不下那么大 所以我们类似把S2这边呢 缩小一半 所以真正呢 这个S2比这个S1 不是S1 是1M的模式呢 大概要将近4倍的时间 OK 好 这边就讲掉 这边150纳秒相对 相应这边代表150纳秒 OK 所以 这边就是你 换的可以有远距离 那你的side effect就是缺点就是 传输的时间真的变得很长 好 这边是一个 线上的影片 大概是将近6分钟 那我不在这边播出 这边有link的网址 连接 那各位会后可以去观赏 那我们这个老外呢 在挪威 那他在冬天的一个环境呢 一个人站在山顶上 另外一个人站在湖面 那山顶到湖面的距离 大概是1公里远 OK 那当然这边有一点出题就是 在冬天 下雪的话 它的湿度是比较低的 那这也要注意RF的传输 然后中间会有 这个老外呢 他会跟各位讲述 这个S2到S8的原理 帮助你 1呢 我们就变成10或01 然后S8呢 再把它展开 所以就真的是一句话来讲 重复讲了好几遍的意思 OK 好 然后这边是讲第三个部分 LE5.0 第三个部分 就是广播封包 变长的特色 好 这边是recap 就是复习一下 传统就是5.0之前 它的封包呢 用到哪些型体 有这几种 OK 好 那它的特性就是 它只用1M的data rate来传 然后payroll就是你塞在封包里面的 资料 就是内容物 一个封包只能塞31个byte的 就是8位元 31个byte 然后你只能在37 38 39 的封包来做那个广播 OK 好 所以这是31个byte 好 那这是5.0之前的 针对广播封包的规范 好 那各位可以想说 这边跟大家复习一下 37 38 39 它并不是在 在频谱上看 它并不是连续的3个channel 37呢 是在2402就是 24频带的最前面 38是在三分之一的部分 39是在最后边 2480 那边 那为什么它是这样分配的 因为21.4 它是 有蓝牙 也有WiFi使用 那WiFi 它的频宽 最少都是20MG 甚至现在是40MG 所以利用率呢 我们只能插空隙 因为它的power比较小 所以就塞在最前面 最后面 三分之一的部分 OK 那另外就是 37 38 39 是大家公用的channel 所以 37 38 39的资源是非常重要 跟珍贵的 那新的呢 5.0针对A1 就是 广播延长这个功能啊 它定义了几个风暴型别 你可以看到EST啊 或者这个AES辅助的 都是5.0新加的封包型别 那刚才有讲 就是说 它为什么可以这样做啊 然后要能够相容旧的 就是它利用pointer就是指标 跟pointee 被指到的标记物 这种概念 所以它会在原来的 我们叫primary channel 我们叫37 38 39 Secondary channel 就是非37 38 39 的部分的channel 所以 37 38 39它只会说什么 哎 我什么时候 即将在哪个channel做广播 就只讲这件事情而已 因为37 38 39是很珍贵的 就是大家公用嘛 你如果把这个37 38 39狂用的话 就会塞爆 OK 那各位来看 这些都是 红色的框代表是在 37 38 39这是 主要的data channel来做广播 它的封包型别呢就是ADV EXT Extension 意思是advertisement extension indication 就是identify 通知 然后 它指到哪里 就是指标嘛 它就是里面的封包的内容 会带着 会跟你讲 什么时候 在哪里 在第几个channel 我会传的这个封包 OK 我会传这个封包 所以这些指标 这是pointee 被指的地方 OK 那它的封包就是 AUX ADV 刚才讲 AUX就是615 才有的定义的封包 OK 那这边就 刚刚讲 EST呢 因为它为了相容 4.0 4.1 4.2 所以它一开始只能在哪里广播 primary data channel 37 38 39 OK 那它里面带到内容会 有两个 会PHY 会跟你讲 我是谁 我即将在哪里 什么时间 哪个地点 因为地点就是channel 来做我要延伸的封包 OK 那这个东西可以 是1M 也可以是 S2 S8 为什么 因为想一个场景 就是 如果你的device跟 就是你的PHY跟你的central连线的 连完线之后 你把那个Coded PHY设成 S2或者S8 那这样才会把距离拉远 对不对 那距离拉远之后呢 如果不小心断线的时候 如果它只有1M会怎样 1M的距离比较近 对不对 两个资料在走进 连线在拉远 这样子是失去了长距离的特性 对不对 所以它这个advertisement extension 一定要支援S2或者S8的data rate OK 然后再来 我们另外有辅助的AS 你看我们 传统的ADV IND对不对 那么我们加一个AUX 就是5.0才有的 它就是pointee 就是被指到的地方 那它会在哪里出现呢 它就可以在 PHY广播封包 37 38 39 为什么 因为你 37 38 39占用太多的话 你其他的就没办法广播 没办法广播就没办法连线 所以各位如果去 蓝牙的一些seminar看 如果有布置 如果你有时间去看去听的话 你可以看到37 38 39 几乎都塞爆了 因为现场一定有什么 什么demo mash 61的mash 所以[听不清}的mash 你看 mash号称只要support 4.0的device 就可以增加[听不清]mash 因为它就是 因为它就是在用37 38 39 把它塞爆了 OK 那后果怎样 效率就不好 OK 好 那在这里 因为我们前面的pointer 已经把它引导到后面的 所以它就是 就是辅助的ADV 就可以配合前面来 指定 比如说 这面是S8 后面就引用S8 这样子 那另外还有一个 SYNC跟Chain 那刚刚有讲到 CHAIN字面上就是链条嘛 它就把封包再一次地 所谓的connection interval 在同一个连线的时段里面 我可以用CHAIN的方式 一次传七八个封包 所以刚刚有讲 乘以8 只有乘以8吗 可以更长 我们这个就把 纵轴是channel 还有一个channel的意思 然后这边是时间轴 横轴是时间轴 我在37 38 39 广播 这是pointer 广播的内容里面呢 有PHY 我即将多久 shift就是间隔 多久在哪一个channel 来做广播 那如果我要送长封包呢 我已经搜到 我接受这个指示呢 接受这个pointer的封包 我只是来 来到这边 对不对 那我这个就要善用啊 我是不是还有资料一直一直这样 类似像chain把它串起来 这个意思 所以 5.0的这个长封装就是利用这个 pointer加pointee的方式 那再加上这个chain 就可以让你达到 一次可以传送1650个byte 这么大的一个资料量 好 那 另外一样 旧的 就是在5.0之前 所有的scan request scan response 5.0一样也有 那一样哦 看到这个AUX开头的 都是5.0才有的封包 OK 那我们看看它怎么应用啊 前面是extension 对不对 ADV EXT的 IND的封包 就pointer 然后 跟人家讲 我会在哪里 做这个 广播 然后就进来了 那对方呢 如果是收到的scan request 然后发 你那个 广播者呢就回应 跟response data 一样哦 我们可以用chain的方式 这个黄色就是chain chain的封包 把这个 待续 continue就是 后面我要送的资料呢 一口气把它丢出去 所以这样你就可以串好几个 最长可以1560个板 OK 好 所以我们做个summary啊 那AE可以support哪几种 型别呢 可连线的 然后non scannable 就是没办法回应 scan response 所以当对方收到这个是non scannable 他不会发scan response scan request 如果发的话 就违反space OK 所以它要用到基本的ESD跟 AUX辅助的ADV 然后它这个connectable嘛 所以 就是可以连线 所以 很正常嘛 它可以连线 所以你有什么悄悄话 你可以都现在去讲 就不用通过这个广播封包来讲这个一些的话 OK 然后scannable呢 它就可以去听 Scan request 那也可以 让人家去连线 那这边它为什么可以到1650个呢 你看啊 这个数字乘以8 刚刚记得吗 我们传统的话 一个只能 payroll只能塞31个对不对 31乘以8 就是243 所以乘以8就是这里 所以一个packet可以传243 那多个packet呢 透过这个chain呢 它就可以传到1650个byte OK 这里应该写大B啊 指的是Byte OK 另外一个就是broadcast就是类似 beckon的应用 w/chain同样可以传到1650个 那么因为它是broadcast 像beckon 它不会让人家来scan request 也不会回应这个connection 它的角色就是一直broadcast 好 接着我们就要讲 我们的SDK提供了哪些范例 就是我们的SDK提供的 好 Autobus就是我们的SDK 里面开箱呢就有一些范例 那肯定是包括在我们的preview里面 我们就有AE跟coded PHY 的特色 那一样还记得吗 刚刚有讲到 我们的TI Resource 资源里面就有一些范例 我等下会再跟各位介绍 那另外只要你follow这个peripheral SIMPLE Peripheral跟simple central 你就需要去验证BLE5.0的 三个特性 好 那这个是我们透过 Ellisys的tracker 抓到的封包 这个纵轴是channel 就是RF channel 还记得吗 37 38 39 37是最前面 38在三分之一的部分 39是280 最后一个channel OK 所以在37 38 39 这个是1M的 广播 我们来看 如果用S2来讲 哎 你有没有发现这个封包变长了 对不对 因为它有S2 200K 所以它传输的时间就变长了 那这个指标是代表什么意思呢 还记得刚才跟大家讲的 5.0它的广播延长的特性就是 就是用pointer 对不对 它的封包就要像一个指标一样 跟你讲我什么时间点 什么地点会送这个封包 所以它里面的内容就像一个 pointer 指标 指到这里来 这个呢 指到这里来 这个应用 OK 好 那再来呢 我们就 讲针对前面那个图 还记得吗 pointer跟pointer pointer跟pointer经过的passer呢 它的封包[听不清] 就讲这边 那这是黑的部分 它的header PDU type 这个跟 这个都是ADV的一个extension 这两个都是一样 两个差异在哪里呢 在这边广播跟广播 第一个是channel 对不对 好 它在38 它在39 然后还有 这两个东西 都会指到哪一个 指到这里 这个时间比较前面 这个时候比较后面 所以 什么会不一样 让我们来看 offset 这里要隔多久 1.74毫秒 这里隔多久 870us嘛 因为 我这个pointee要来的时间越来越短 好 那其他呢 一个一个去看 都不一样 好 为了怕人家听的人呢 去这边听 那万一刚好又有别的地方 别的device也在这边送的话 哎 他怎么知道哪个是对方要听的 从这里 DID跟SID 从这里来判别 DID最大距离的时候 这个东西是我要听的 好 误听到别人的悄悄话 OK 好 好 那再看 刚刚在做这两个封包 对不对 我们看这个东西 是什么 辅助AES 就是5.0才有的 一个是ADV indication 然后你看这里 这边就是它的payroll 它的payroll 它传的资料在这里 OK 好 那这边就有带 带我是谁 广播者的address 这边没有带哦 这边没有带 所以你在这边才会知道 这个是谁 好 那再看我们针对 软体的部分 就是 API 那API的话 这个是 我们之前旧的API 一直在用setParameter setParameter 把广播的资料 scan Rsp的资料 最后再把它制冷 然后有一个GAP的task 去处理这个API 哦 那这个是legacy抓下来的 当你呼叫这些东西之后 就针对分包出来了 从37 38 39 37 38 39 来送 哦 还记得吗 我们的payroll只有31个 byte 那它可能有加载一些heater 所以这边才需要33 好 那新的呢 新的API要达到刚刚那个功能的话呢 我们做了一些修改 因为5.0它的那个 一些需求比较多 所以我们把这个做成一个schedule 做成419 然后首先要考虑一个 我们用handle来处理 你看后面都是透过handle 来设定 OK 那它刚刚的set 对不对 出现在这里 就变成了structure OK 然后inable 智能之后 就可以在37 38 39 做广播 OK 所以 各位如果没有接触过我们之前的SDK的话 那就比较没有前面的这些帮助 就可能需要做一些小调整 好 那如果这边你要改 1M变2M 你要怎么改 我们来看 这边有 primary secondy的PHY 都是1M 所以它走的 都是1M 我们来看 哎 还记得吗 这是它们的parameter的资料架构 把里面资料架构的栏位 secPHY把它设成这个 好 然后在create的时候 它就会 而且我们让它可以做 scannable 可以回应这个scan request的 所以它就这样 广播广播 然后到这里 就是gap adv 对不对 所以别人呢 就可以发送request 后面就一直传 为什么它可以这样连续传 它用的是什么 CHAIN对不对 刚才也讲到的 CHAIN 像链条一样 OK 好 那我们就针对刚刚的一个条件 就scan request来做 更深度的那个解释 那这边也是一样 在37 38 39 做广播 对不对 然后这里 这里是AES EST ADV的一个indication 然后这边就request 因为我们是scannable嘛 所以这边就是 scan request 这个封包 OK 那前面就是 这个是照顺序来的 第一个是packet 在37 这一个38 39 然后这个 AUV scan REQ这里 它就跑到哪里 21了 那大家全部都到21去了嘛 所以它后面呢 request啊 response啊 然后这个CHAIN统统都在21的部分 OK 你看哦 这边253 加起来 就可以到1650个Byte OK 然后它就在 把[听不清]输掉呢 再重新传输一遍 这个是一个summary 整个的 在这里 然后它这个从前面开始 就是ADV EXT IND 这三个 所以这里你回顾一下 它的新的封包型别 那它是一个pointer对不对 一个指标嘛 那它可以被扫描 然后它里面的识别码就是SET ID DATAID 那pointer什么时候 在哪里 在哪个channel 什么时候 就在offset这里 offset 然后how就用什么 PHY 所以这三个类似的 可以让人家知道 我即将在哪里呢 做广播 好 那第二个 它就跳到这个 广播37 38之后呢 就到这里来 那有没有会说它如果没有跟到怎么办 它也一样啊 37 38 39 到20 假如刚好到21 刚好到21 哎 没有人要资料 对不对 它再回去 37 38 39 37 38 39到这里 那有人跟到了 有兴趣了 在这边 再回答 就是回应 回应一下给对方的封包 广播封包 OK 所以再看这里 21 channel的第一个 那21channel的第二个 就是scanREQ 对方有兴趣的 我会发这个scan request 再问详细一点 而且它会讲哦 我是谁 scanner 然后 发广播的是谁 OK This is me 因为它是带了scander 然后要跟这个讲话 然后再来 它就发scan 它就 前面的request之后就 response 就应该是response 这边错掉了 然后它这边就发response 的封包 就是6127 6127回的 6127回的 然后 它在 channel 16 OK 那这个是跟对方讲 我这一包 还没有结束哦 我将会在1.35毫秒后传第二包 OK 这个是它的raw data 这个是里面的payroll raw data OK 所以它这边会在 会在带我 后续还有 更多的资料 那后面呢 就是CHAIN了 用CHAIN的方式 用CHAIIN的方式把它串起来 传更多的封包 OK 那也一样 下一包会在多久之后会出来 那如果没有呢 就没有这个offset 所以收的人就知道 最后一笔了 不会再有 所以我们从这个 配合RF channel就是 纵轴呢 是频率 channel 横轴是时间 我们来看 它的封装 37 38 39 做pointer 然后跳到这里来 如果有人要我的资料 他就发scan request 然后呢 我就回scan response 因为我还有资料 所以 我就用CHAIN CHAIN CHINA 把它串起来 OK 所以这个完全是什么 pointer 和pointee的应用 好 所以它也可以让那个 4.0相容嘛 因为如果4.0看到这个封包 它听不懂啊 对不对 所以它只给一样听得懂5.0的人听 好 那这边是讲 我用2M的频率在传 我在时间轴呢 在头尾大概花了10.8毫秒 如果用最慢的呢 头尾花了116毫秒 差了10倍 差了10倍
好 5.0就是三个口号
所以至少今天你在
花这个时间来听我们的
介绍 你至少
记得什么是5.0
两倍的距离 这个
弄错了
要改
好 两倍的throughput啊
就data rate
然后4倍的距离
然后8倍的广播资料
那为什么它可以达到2倍的距离
因为它的data rate
2M PHY这边它从
一面杠support两面杠的模式
那刚刚有提到说
data rate throughput跟距离
是鱼与熊掌 不可兼得
因为它是用跳变的方式
去产生一个比较告诉的两面杆
5 rate data rate 所以它的距离就会
比较短一些
那它另外一个好处 比较告诉
所以空气中传输的时间就
变短
那这样也会让device更省电
那在距离方面
它的跳变呢
有两种 一个是S2
S2就是除以2
什么除以2
1MG除以2
1MG除以2就变成500K
500K的模式
另外一个是除以8
就125K的模式
OK
那你牺牲掉的throughput 换回来的就是
可以传比较高的距离
然后 相对的 你空气中传输的时间就会
增长了
第三个功能就是广播封包
资料量乘以8倍
那后面介绍你会更了解说
它不止是乘以8倍
加上它一个新的packet的封包格式呢
它叫做chain 就是把它连接起来
它可以更长
那包括你要用新的PHY
可以用两面杆
或者是 coded S2或者8
然后在非连接的模式下
然后它这边增加了一些封包型别
待会可以跟各位讲
那它为什么可以做这样
这就类似我们新研的软体一样
它有pointer 指标
跟pointee 被指到的物体
它就是广播的实体的payroll
像这种概念 可以让你
你的广播的资料可以更
封包量更大
可以传到1560个byte
那这边介绍它怎么做到
2M的模式
就是它把symbol rate呢 double
本来就是1M
然后把1个signal代表的bit呢
给它double
那所以
对它变两倍
是不是传输的时间就缩短一半呢
我们来看啊 当然有一些特性的
底下是传统1M的模式
它的传输
那这个是2M模式
的确这个封包的长度变短了
但是蓝牙有一些特性的
规范 你封包跟封包之间
至少要相隔150个纳秒
好 你看 所以整体来讲
这个时间到下个时间
虽然你一半的时间
把该传的资料传完
但你还是要等这个时间
因为刚刚有讲过
5.0的device必须要跟4.2相同
所有有4.2的一些 你可以说它是
规范或者包袱也好
它都必须要follow
OK
所以它一定可以变成
两倍快速吗
要几个要素要考虑到
一个是连线的间隔
还有封包的size
还有每个连线的connection
通联的时间它可以
带几个封包
都要纳入考量
好 那再来
Coded PHY刚刚讲都是通过 symbol rate
的调整 那
这个S2呢 就是我们一个bit用两个
symbol来代表
那我们再用FEC
Forward error connection来做补偿
所以 即使你封包
即使你bit有掉几个
它一样可以把它矫正回来
那所以 这就好像说
现在流行一句话就是
因为很重要 所以说几次
很多次 对不对
所以当你说很多次
那个对方漏掉一次
他还有机会catch up回来
就是这个意思
所以这个
但是它里面涵盖的
通讯的储存的
那个理论在里面
OK
所以另外一个就是
除以8倍的就是
125K的模式
OK
这个是详细的一个封包里边
的栏位
那因为无线通信在idol的时候
它为了让你收到讯号跟类似sync
同步的功能
所以封包前面都会有preamble·
所以这个东西是不管
1M 还是S2 S8都要
follow的 都要用一样的preamble
后面就是 它用S8
来规范
另外 后面就可以用S2或S8来
传输
所以你看 标准的1M的模式
是这么长的话
所以你看 这边的间隔要150纳秒嘛
然后这个是150纳秒
所以因为这个荧幕容不下那么大
所以我们类似把S2这边呢
缩小一半
所以真正呢
这个S2比这个S1
不是S1 是1M的模式呢
大概要将近4倍的时间
OK
好 这边就讲掉 这边150纳秒相对
相应这边代表150纳秒
OK
所以 这边就是你
换的可以有远距离
那你的side effect就是缺点就是
传输的时间真的变得很长
好 这边是一个
线上的影片
大概是将近6分钟
那我不在这边播出
这边有link的网址
连接 那各位会后可以去观赏
那我们这个老外呢
在挪威
那他在冬天的一个环境呢
一个人站在山顶上
另外一个人站在湖面
那山顶到湖面的距离
大概是1公里远
OK
那当然这边有一点出题就是
在冬天 下雪的话
它的湿度是比较低的
那这也要注意RF的传输
然后中间会有 这个老外呢
他会跟各位讲述
这个S2到S8的原理
帮助你
1呢 我们就变成10或01
然后S8呢 再把它展开
所以就真的是一句话来讲
重复讲了好几遍的意思
OK
好
然后这边是讲第三个部分
LE5.0
第三个部分
就是广播封包
变长的特色
好 这边是recap 就是复习一下
传统就是5.0之前
它的封包呢 用到哪些型体
有这几种
OK
好 那它的特性就是
它只用1M的data rate来传
然后payroll就是你塞在封包里面的
资料 就是内容物
一个封包只能塞31个byte的
就是8位元
31个byte
然后你只能在37 38 39
的封包来做那个广播
OK
好 所以这是31个byte
好 那这是5.0之前的
针对广播封包的规范
好
那各位可以想说
这边跟大家复习一下
37 38 39
它并不是在 在频谱上看
它并不是连续的3个channel
37呢 是在2402就是
24频带的最前面
38是在三分之一的部分
39是在最后边
2480
那边
那为什么它是这样分配的
因为21.4 它是
有蓝牙 也有WiFi使用
那WiFi 它的频宽
最少都是20MG
甚至现在是40MG
所以利用率呢 我们只能插空隙
因为它的power比较小
所以就塞在最前面 最后面 三分之一的部分
OK
那另外就是 37 38 39
是大家公用的channel
所以 37 38 39的资源是非常重要
跟珍贵的
那新的呢
5.0针对A1 就是
广播延长这个功能啊
它定义了几个风暴型别
你可以看到EST啊
或者这个AES辅助的
都是5.0新加的封包型别
那刚才有讲 就是说
它为什么可以这样做啊
然后要能够相容旧的
就是它利用pointer就是指标
跟pointee 被指到的标记物
这种概念
所以它会在原来的 我们叫primary channel
我们叫37 38 39
Secondary channel 就是非37 38 39
的部分的channel
所以 37 38 39它只会说什么
哎 我什么时候
即将在哪个channel做广播
就只讲这件事情而已
因为37 38 39是很珍贵的
就是大家公用嘛
你如果把这个37 38 39狂用的话
就会塞爆
OK
那各位来看 这些都是
红色的框代表是在
37 38 39这是
主要的data channel来做广播
它的封包型别呢就是ADV EXT
Extension
意思是advertisement extension
indication
就是identify
通知 然后
它指到哪里 就是指标嘛
它就是里面的封包的内容
会带着 会跟你讲
什么时候 在哪里
在第几个channel
我会传的这个封包
OK 我会传这个封包
所以这些指标 这是pointee
被指的地方
OK
那它的封包就是
AUX ADV 刚才讲
AUX就是615
才有的定义的封包 OK
那这边就
刚刚讲 EST呢
因为它为了相容
4.0 4.1 4.2
所以它一开始只能在哪里广播
primary data channel 37 38 39
OK
那它里面带到内容会
有两个 会PHY
会跟你讲 我是谁
我即将在哪里 什么时间
哪个地点
因为地点就是channel
来做我要延伸的封包
OK 那这个东西可以
是1M 也可以是
S2 S8 为什么
因为想一个场景 就是
如果你的device跟
就是你的PHY跟你的central连线的
连完线之后 你把那个Coded PHY设成
S2或者S8
那这样才会把距离拉远 对不对
那距离拉远之后呢
如果不小心断线的时候
如果它只有1M会怎样
1M的距离比较近 对不对
两个资料在走进
连线在拉远
这样子是失去了长距离的特性 对不对
所以它这个advertisement extension
一定要支援S2或者S8的data rate
OK
然后再来
我们另外有辅助的AS 你看我们
传统的ADV IND对不对
那么我们加一个AUX
就是5.0才有的
它就是pointee
就是被指到的地方
那它会在哪里出现呢
它就可以在
PHY广播封包
37 38 39
为什么 因为你
37 38 39占用太多的话
你其他的就没办法广播
没办法广播就没办法连线
所以各位如果去
蓝牙的一些seminar看
如果有布置
如果你有时间去看去听的话
你可以看到37 38 39 几乎都塞爆了
因为现场一定有什么
什么demo
mash
61的mash
所以[听不清}的mash
你看 mash号称只要support 4.0的device
就可以增加[听不清]mash
因为它就是
因为它就是在用37 38 39
把它塞爆了
OK 那后果怎样
效率就不好
OK
好
那在这里
因为我们前面的pointer
已经把它引导到后面的
所以它就是
就是辅助的ADV
就可以配合前面来
指定 比如说
这面是S8 后面就引用S8
这样子
那另外还有一个
SYNC跟Chain
那刚刚有讲到
CHAIN字面上就是链条嘛
它就把封包再一次地
所谓的connection interval
在同一个连线的时段里面
我可以用CHAIN的方式
一次传七八个封包
所以刚刚有讲
乘以8 只有乘以8吗
可以更长
我们这个就把
纵轴是channel
还有一个channel的意思
然后这边是时间轴
横轴是时间轴
我在37 38 39
广播 这是pointer
广播的内容里面呢
有PHY
我即将多久 shift就是间隔
多久在哪一个channel
来做广播
那如果我要送长封包呢
我已经搜到 我接受这个指示呢
接受这个pointer的封包 我只是来
来到这边 对不对
那我这个就要善用啊
我是不是还有资料一直一直这样
类似像chain把它串起来
这个意思
所以 5.0的这个长封装就是利用这个
pointer加pointee的方式
那再加上这个chain
就可以让你达到
一次可以传送1650个byte
这么大的一个资料量
好
那 另外一样
旧的 就是在5.0之前
所有的scan request scan response
5.0一样也有
那一样哦 看到这个AUX开头的
都是5.0才有的封包
OK
那我们看看它怎么应用啊
前面是extension 对不对
ADV EXT的
IND的封包
就pointer 然后
跟人家讲 我会在哪里
做这个
广播
然后就进来了
那对方呢
如果是收到的scan request
然后发 你那个
广播者呢就回应
跟response data
一样哦 我们可以用chain的方式
这个黄色就是chain
chain的封包
把这个 待续
continue就是
后面我要送的资料呢
一口气把它丢出去
所以这样你就可以串好几个
最长可以1560个板
OK
好 所以我们做个summary啊
那AE可以support哪几种
型别呢
可连线的
然后non scannable
就是没办法回应
scan response
所以当对方收到这个是non scannable
他不会发scan response
scan request
如果发的话 就违反space
OK 所以它要用到基本的ESD跟
AUX辅助的ADV
然后它这个connectable嘛 所以
就是可以连线 所以
很正常嘛
它可以连线 所以你有什么悄悄话
你可以都现在去讲
就不用通过这个广播封包来讲这个一些的话
OK
然后scannable呢 它就可以去听
Scan request 那也可以
让人家去连线
那这边它为什么可以到1650个呢
你看啊 这个数字乘以8 刚刚记得吗
我们传统的话 一个只能
payroll只能塞31个对不对
31乘以8 就是243
所以乘以8就是这里
所以一个packet可以传243
那多个packet呢 透过这个chain呢
它就可以传到1650个byte
OK
这里应该写大B啊 指的是Byte
OK
另外一个就是broadcast就是类似
beckon的应用
w/chain同样可以传到1650个
那么因为它是broadcast 像beckon
它不会让人家来scan request
也不会回应这个connection
它的角色就是一直broadcast
好 接着我们就要讲
我们的SDK提供了哪些范例
就是我们的SDK提供的
好 Autobus就是我们的SDK
里面开箱呢就有一些范例
那肯定是包括在我们的preview里面
我们就有AE跟coded PHY
的特色
那一样还记得吗
刚刚有讲到 我们的TI Resource
资源里面就有一些范例
我等下会再跟各位介绍
那另外只要你follow这个peripheral
SIMPLE Peripheral跟simple central
你就需要去验证BLE5.0的
三个特性
好 那这个是我们透过
Ellisys的tracker
抓到的封包
这个纵轴是channel
就是RF channel
还记得吗 37 38 39 37是最前面
38在三分之一的部分
39是280 最后一个channel
OK 所以在37 38 39
这个是1M的
广播
我们来看 如果用S2来讲
哎 你有没有发现这个封包变长了
对不对 因为它有S2
200K
所以它传输的时间就变长了
那这个指标是代表什么意思呢
还记得刚才跟大家讲的
5.0它的广播延长的特性就是
就是用pointer 对不对
它的封包就要像一个指标一样
跟你讲我什么时间点
什么地点会送这个封包
所以它里面的内容就像一个
pointer 指标 指到这里来
这个呢 指到这里来
这个应用
OK
好 那再来呢
我们就
讲针对前面那个图
还记得吗 pointer跟pointer
pointer跟pointer经过的passer呢
它的封包[听不清]
就讲这边
那这是黑的部分
它的header PDU type 这个跟
这个都是ADV的一个extension
这两个都是一样
两个差异在哪里呢
在这边广播跟广播
第一个是channel 对不对
好 它在38 它在39
然后还有 这两个东西
都会指到哪一个
指到这里
这个时间比较前面 这个时候比较后面
所以 什么会不一样
让我们来看
offset
这里要隔多久 1.74毫秒
这里隔多久
870us嘛 因为
我这个pointee要来的时间越来越短
好 那其他呢
一个一个去看
都不一样
好 为了怕人家听的人呢
去这边听
那万一刚好又有别的地方
别的device也在这边送的话
哎 他怎么知道哪个是对方要听的
从这里
DID跟SID
从这里来判别
DID最大距离的时候 这个东西是我要听的
好 误听到别人的悄悄话
OK 好
好
那再看 刚刚在做这两个封包 对不对
我们看这个东西
是什么
辅助AES 就是5.0才有的
一个是ADV
indication
然后你看这里
这边就是它的payroll
它的payroll
它传的资料在这里
OK
好 那这边就有带
带我是谁
广播者的address
这边没有带哦
这边没有带
所以你在这边才会知道 这个是谁
好
那再看我们针对
软体的部分 就是
API
那API的话 这个是
我们之前旧的API
一直在用setParameter setParameter
把广播的资料 scan Rsp的资料
最后再把它制冷
然后有一个GAP的task
去处理这个API
哦 那这个是legacy抓下来的
当你呼叫这些东西之后
就针对分包出来了
从37 38 39 37 38 39
来送
哦 还记得吗
我们的payroll只有31个
byte 那它可能有加载一些heater
所以这边才需要33
好 那新的呢
新的API要达到刚刚那个功能的话呢
我们做了一些修改
因为5.0它的那个
一些需求比较多
所以我们把这个做成一个schedule
做成419
然后首先要考虑一个 我们用handle来处理
你看后面都是透过handle
来设定
OK
那它刚刚的set 对不对
出现在这里 就变成了structure
OK
然后inable 智能之后
就可以在37 38 39 做广播
OK
所以 各位如果没有接触过我们之前的SDK的话
那就比较没有前面的这些帮助
就可能需要做一些小调整
好 那如果这边你要改
1M变2M
你要怎么改
我们来看 这边有
primary secondy的PHY
都是1M 所以它走的
都是1M
我们来看
哎 还记得吗
这是它们的parameter的资料架构
把里面资料架构的栏位
secPHY把它设成这个
好 然后在create的时候
它就会 而且我们让它可以做
scannable 可以回应这个scan request的
所以它就这样
广播广播 然后到这里
就是gap adv 对不对
所以别人呢 就可以发送request
后面就一直传
为什么它可以这样连续传
它用的是什么
CHAIN对不对
刚才也讲到的 CHAIN
像链条一样
OK 好
那我们就针对刚刚的一个条件
就scan request来做
更深度的那个解释
那这边也是一样 在37 38 39 做广播
对不对
然后这里 这里是AES
EST
ADV的一个indication
然后这边就request
因为我们是scannable嘛
所以这边就是
scan request
这个封包
OK
那前面就是 这个是照顺序来的
第一个是packet 在37
这一个38
39 然后这个
AUV scan REQ这里
它就跑到哪里 21了
那大家全部都到21去了嘛
所以它后面呢
request啊 response啊
然后这个CHAIN统统都在21的部分
OK
你看哦 这边253
加起来 就可以到1650个Byte
OK
然后它就在
把[听不清]输掉呢
再重新传输一遍
这个是一个summary
整个的 在这里
然后它这个从前面开始
就是ADV EXT
IND 这三个
所以这里你回顾一下
它的新的封包型别
那它是一个pointer对不对
一个指标嘛
那它可以被扫描
然后它里面的识别码就是SET ID DATAID
那pointer什么时候
在哪里 在哪个channel
什么时候 就在offset这里
offset 然后how就用什么
PHY
所以这三个类似的
可以让人家知道 我即将在哪里呢
做广播
好
那第二个 它就跳到这个
广播37 38之后呢
就到这里来
那有没有会说它如果没有跟到怎么办
它也一样啊 37 38 39
到20 假如刚好到21
刚好到21
哎 没有人要资料 对不对
它再回去 37 38 39
37 38 39到这里
那有人跟到了 有兴趣了
在这边
再回答
就是回应
回应一下给对方的封包
广播封包
OK
所以再看这里
21 channel的第一个
那21channel的第二个
就是scanREQ 对方有兴趣的
我会发这个scan request
再问详细一点
而且它会讲哦 我是谁
scanner 然后
发广播的是谁
OK
This is me
因为它是带了scander
然后要跟这个讲话
然后再来
它就发scan 它就
前面的request之后就
response
就应该是response
这边错掉了
然后它这边就发response
的封包
就是6127
6127回的
6127回的 然后
它在
channel 16 OK
那这个是跟对方讲 我这一包
还没有结束哦
我将会在1.35毫秒后传第二包
OK
这个是它的raw data
这个是里面的payroll
raw data
OK
所以它这边会在
会在带我 后续还有
更多的资料
那后面呢
就是CHAIN了
用CHAIN的方式
用CHAIIN的方式把它串起来
传更多的封包
OK
那也一样
下一包会在多久之后会出来
那如果没有呢
就没有这个offset
所以收的人就知道
最后一笔了
不会再有
所以我们从这个
配合RF channel就是
纵轴呢 是频率
channel 横轴是时间
我们来看
它的封装
37 38 39
做pointer
然后跳到这里来
如果有人要我的资料
他就发scan request
然后呢 我就回scan response
因为我还有资料 所以
我就用CHAIN CHAIN CHINA
把它串起来
OK
所以这个完全是什么 pointer
和pointee的应用
好
所以它也可以让那个
4.0相容嘛
因为如果4.0看到这个封包
它听不懂啊
对不对 所以它只给一样听得懂5.0的人听
好
那这边是讲
我用2M的频率在传
我在时间轴呢
在头尾大概花了10.8毫秒
如果用最慢的呢
头尾花了116毫秒
差了10倍
差了10倍
好 5.0就是三个口号 所以至少今天你在 花这个时间来听我们的 介绍 你至少 记得什么是5.0 两倍的距离 这个 弄错了 要改 好 两倍的throughput啊 就data rate 然后4倍的距离 然后8倍的广播资料 那为什么它可以达到2倍的距离 因为它的data rate 2M PHY这边它从 一面杠support两面杠的模式 那刚刚有提到说 data rate throughput跟距离 是鱼与熊掌 不可兼得 因为它是用跳变的方式 去产生一个比较告诉的两面杆 5 rate data rate 所以它的距离就会 比较短一些 那它另外一个好处 比较告诉 所以空气中传输的时间就 变短 那这样也会让device更省电 那在距离方面 它的跳变呢 有两种 一个是S2 S2就是除以2 什么除以2 1MG除以2 1MG除以2就变成500K 500K的模式 另外一个是除以8 就125K的模式 OK 那你牺牲掉的throughput 换回来的就是 可以传比较高的距离 然后 相对的 你空气中传输的时间就会 增长了 第三个功能就是广播封包 资料量乘以8倍 那后面介绍你会更了解说 它不止是乘以8倍 加上它一个新的packet的封包格式呢 它叫做chain 就是把它连接起来 它可以更长 那包括你要用新的PHY 可以用两面杆 或者是 coded S2或者8 然后在非连接的模式下 然后它这边增加了一些封包型别 待会可以跟各位讲 那它为什么可以做这样 这就类似我们新研的软体一样 它有pointer 指标 跟pointee 被指到的物体 它就是广播的实体的payroll 像这种概念 可以让你 你的广播的资料可以更 封包量更大 可以传到1560个byte 那这边介绍它怎么做到 2M的模式 就是它把symbol rate呢 double 本来就是1M 然后把1个signal代表的bit呢 给它double 那所以 对它变两倍 是不是传输的时间就缩短一半呢 我们来看啊 当然有一些特性的 底下是传统1M的模式 它的传输 那这个是2M模式 的确这个封包的长度变短了 但是蓝牙有一些特性的 规范 你封包跟封包之间 至少要相隔150个纳秒 好 你看 所以整体来讲 这个时间到下个时间 虽然你一半的时间 把该传的资料传完 但你还是要等这个时间 因为刚刚有讲过 5.0的device必须要跟4.2相同 所有有4.2的一些 你可以说它是 规范或者包袱也好 它都必须要follow OK 所以它一定可以变成 两倍快速吗 要几个要素要考虑到 一个是连线的间隔 还有封包的size 还有每个连线的connection 通联的时间它可以 带几个封包 都要纳入考量 好 那再来 Coded PHY刚刚讲都是通过 symbol rate 的调整 那 这个S2呢 就是我们一个bit用两个 symbol来代表 那我们再用FEC Forward error connection来做补偿 所以 即使你封包 即使你bit有掉几个 它一样可以把它矫正回来 那所以 这就好像说 现在流行一句话就是 因为很重要 所以说几次 很多次 对不对 所以当你说很多次 那个对方漏掉一次 他还有机会catch up回来 就是这个意思 所以这个 但是它里面涵盖的 通讯的储存的 那个理论在里面 OK 所以另外一个就是 除以8倍的就是 125K的模式 OK 这个是详细的一个封包里边 的栏位 那因为无线通信在idol的时候 它为了让你收到讯号跟类似sync 同步的功能 所以封包前面都会有preamble· 所以这个东西是不管 1M 还是S2 S8都要 follow的 都要用一样的preamble 后面就是 它用S8 来规范 另外 后面就可以用S2或S8来 传输 所以你看 标准的1M的模式 是这么长的话 所以你看 这边的间隔要150纳秒嘛 然后这个是150纳秒 所以因为这个荧幕容不下那么大 所以我们类似把S2这边呢 缩小一半 所以真正呢 这个S2比这个S1 不是S1 是1M的模式呢 大概要将近4倍的时间 OK 好 这边就讲掉 这边150纳秒相对 相应这边代表150纳秒 OK 所以 这边就是你 换的可以有远距离 那你的side effect就是缺点就是 传输的时间真的变得很长 好 这边是一个 线上的影片 大概是将近6分钟 那我不在这边播出 这边有link的网址 连接 那各位会后可以去观赏 那我们这个老外呢 在挪威 那他在冬天的一个环境呢 一个人站在山顶上 另外一个人站在湖面 那山顶到湖面的距离 大概是1公里远 OK 那当然这边有一点出题就是 在冬天 下雪的话 它的湿度是比较低的 那这也要注意RF的传输 然后中间会有 这个老外呢 他会跟各位讲述 这个S2到S8的原理 帮助你 1呢 我们就变成10或01 然后S8呢 再把它展开 所以就真的是一句话来讲 重复讲了好几遍的意思 OK 好 然后这边是讲第三个部分 LE5.0 第三个部分 就是广播封包 变长的特色 好 这边是recap 就是复习一下 传统就是5.0之前 它的封包呢 用到哪些型体 有这几种 OK 好 那它的特性就是 它只用1M的data rate来传 然后payroll就是你塞在封包里面的 资料 就是内容物 一个封包只能塞31个byte的 就是8位元 31个byte 然后你只能在37 38 39 的封包来做那个广播 OK 好 所以这是31个byte 好 那这是5.0之前的 针对广播封包的规范 好 那各位可以想说 这边跟大家复习一下 37 38 39 它并不是在 在频谱上看 它并不是连续的3个channel 37呢 是在2402就是 24频带的最前面 38是在三分之一的部分 39是在最后边 2480 那边 那为什么它是这样分配的 因为21.4 它是 有蓝牙 也有WiFi使用 那WiFi 它的频宽 最少都是20MG 甚至现在是40MG 所以利用率呢 我们只能插空隙 因为它的power比较小 所以就塞在最前面 最后面 三分之一的部分 OK 那另外就是 37 38 39 是大家公用的channel 所以 37 38 39的资源是非常重要 跟珍贵的 那新的呢 5.0针对A1 就是 广播延长这个功能啊 它定义了几个风暴型别 你可以看到EST啊 或者这个AES辅助的 都是5.0新加的封包型别 那刚才有讲 就是说 它为什么可以这样做啊 然后要能够相容旧的 就是它利用pointer就是指标 跟pointee 被指到的标记物 这种概念 所以它会在原来的 我们叫primary channel 我们叫37 38 39 Secondary channel 就是非37 38 39 的部分的channel 所以 37 38 39它只会说什么 哎 我什么时候 即将在哪个channel做广播 就只讲这件事情而已 因为37 38 39是很珍贵的 就是大家公用嘛 你如果把这个37 38 39狂用的话 就会塞爆 OK 那各位来看 这些都是 红色的框代表是在 37 38 39这是 主要的data channel来做广播 它的封包型别呢就是ADV EXT Extension 意思是advertisement extension indication 就是identify 通知 然后 它指到哪里 就是指标嘛 它就是里面的封包的内容 会带着 会跟你讲 什么时候 在哪里 在第几个channel 我会传的这个封包 OK 我会传这个封包 所以这些指标 这是pointee 被指的地方 OK 那它的封包就是 AUX ADV 刚才讲 AUX就是615 才有的定义的封包 OK 那这边就 刚刚讲 EST呢 因为它为了相容 4.0 4.1 4.2 所以它一开始只能在哪里广播 primary data channel 37 38 39 OK 那它里面带到内容会 有两个 会PHY 会跟你讲 我是谁 我即将在哪里 什么时间 哪个地点 因为地点就是channel 来做我要延伸的封包 OK 那这个东西可以 是1M 也可以是 S2 S8 为什么 因为想一个场景 就是 如果你的device跟 就是你的PHY跟你的central连线的 连完线之后 你把那个Coded PHY设成 S2或者S8 那这样才会把距离拉远 对不对 那距离拉远之后呢 如果不小心断线的时候 如果它只有1M会怎样 1M的距离比较近 对不对 两个资料在走进 连线在拉远 这样子是失去了长距离的特性 对不对 所以它这个advertisement extension 一定要支援S2或者S8的data rate OK 然后再来 我们另外有辅助的AS 你看我们 传统的ADV IND对不对 那么我们加一个AUX 就是5.0才有的 它就是pointee 就是被指到的地方 那它会在哪里出现呢 它就可以在 PHY广播封包 37 38 39 为什么 因为你 37 38 39占用太多的话 你其他的就没办法广播 没办法广播就没办法连线 所以各位如果去 蓝牙的一些seminar看 如果有布置 如果你有时间去看去听的话 你可以看到37 38 39 几乎都塞爆了 因为现场一定有什么 什么demo mash 61的mash 所以[听不清}的mash 你看 mash号称只要support 4.0的device 就可以增加[听不清]mash 因为它就是 因为它就是在用37 38 39 把它塞爆了 OK 那后果怎样 效率就不好 OK 好 那在这里 因为我们前面的pointer 已经把它引导到后面的 所以它就是 就是辅助的ADV 就可以配合前面来 指定 比如说 这面是S8 后面就引用S8 这样子 那另外还有一个 SYNC跟Chain 那刚刚有讲到 CHAIN字面上就是链条嘛 它就把封包再一次地 所谓的connection interval 在同一个连线的时段里面 我可以用CHAIN的方式 一次传七八个封包 所以刚刚有讲 乘以8 只有乘以8吗 可以更长 我们这个就把 纵轴是channel 还有一个channel的意思 然后这边是时间轴 横轴是时间轴 我在37 38 39 广播 这是pointer 广播的内容里面呢 有PHY 我即将多久 shift就是间隔 多久在哪一个channel 来做广播 那如果我要送长封包呢 我已经搜到 我接受这个指示呢 接受这个pointer的封包 我只是来 来到这边 对不对 那我这个就要善用啊 我是不是还有资料一直一直这样 类似像chain把它串起来 这个意思 所以 5.0的这个长封装就是利用这个 pointer加pointee的方式 那再加上这个chain 就可以让你达到 一次可以传送1650个byte 这么大的一个资料量 好 那 另外一样 旧的 就是在5.0之前 所有的scan request scan response 5.0一样也有 那一样哦 看到这个AUX开头的 都是5.0才有的封包 OK 那我们看看它怎么应用啊 前面是extension 对不对 ADV EXT的 IND的封包 就pointer 然后 跟人家讲 我会在哪里 做这个 广播 然后就进来了 那对方呢 如果是收到的scan request 然后发 你那个 广播者呢就回应 跟response data 一样哦 我们可以用chain的方式 这个黄色就是chain chain的封包 把这个 待续 continue就是 后面我要送的资料呢 一口气把它丢出去 所以这样你就可以串好几个 最长可以1560个板 OK 好 所以我们做个summary啊 那AE可以support哪几种 型别呢 可连线的 然后non scannable 就是没办法回应 scan response 所以当对方收到这个是non scannable 他不会发scan response scan request 如果发的话 就违反space OK 所以它要用到基本的ESD跟 AUX辅助的ADV 然后它这个connectable嘛 所以 就是可以连线 所以 很正常嘛 它可以连线 所以你有什么悄悄话 你可以都现在去讲 就不用通过这个广播封包来讲这个一些的话 OK 然后scannable呢 它就可以去听 Scan request 那也可以 让人家去连线 那这边它为什么可以到1650个呢 你看啊 这个数字乘以8 刚刚记得吗 我们传统的话 一个只能 payroll只能塞31个对不对 31乘以8 就是243 所以乘以8就是这里 所以一个packet可以传243 那多个packet呢 透过这个chain呢 它就可以传到1650个byte OK 这里应该写大B啊 指的是Byte OK 另外一个就是broadcast就是类似 beckon的应用 w/chain同样可以传到1650个 那么因为它是broadcast 像beckon 它不会让人家来scan request 也不会回应这个connection 它的角色就是一直broadcast 好 接着我们就要讲 我们的SDK提供了哪些范例 就是我们的SDK提供的 好 Autobus就是我们的SDK 里面开箱呢就有一些范例 那肯定是包括在我们的preview里面 我们就有AE跟coded PHY 的特色 那一样还记得吗 刚刚有讲到 我们的TI Resource 资源里面就有一些范例 我等下会再跟各位介绍 那另外只要你follow这个peripheral SIMPLE Peripheral跟simple central 你就需要去验证BLE5.0的 三个特性 好 那这个是我们透过 Ellisys的tracker 抓到的封包 这个纵轴是channel 就是RF channel 还记得吗 37 38 39 37是最前面 38在三分之一的部分 39是280 最后一个channel OK 所以在37 38 39 这个是1M的 广播 我们来看 如果用S2来讲 哎 你有没有发现这个封包变长了 对不对 因为它有S2 200K 所以它传输的时间就变长了 那这个指标是代表什么意思呢 还记得刚才跟大家讲的 5.0它的广播延长的特性就是 就是用pointer 对不对 它的封包就要像一个指标一样 跟你讲我什么时间点 什么地点会送这个封包 所以它里面的内容就像一个 pointer 指标 指到这里来 这个呢 指到这里来 这个应用 OK 好 那再来呢 我们就 讲针对前面那个图 还记得吗 pointer跟pointer pointer跟pointer经过的passer呢 它的封包[听不清] 就讲这边 那这是黑的部分 它的header PDU type 这个跟 这个都是ADV的一个extension 这两个都是一样 两个差异在哪里呢 在这边广播跟广播 第一个是channel 对不对 好 它在38 它在39 然后还有 这两个东西 都会指到哪一个 指到这里 这个时间比较前面 这个时候比较后面 所以 什么会不一样 让我们来看 offset 这里要隔多久 1.74毫秒 这里隔多久 870us嘛 因为 我这个pointee要来的时间越来越短 好 那其他呢 一个一个去看 都不一样 好 为了怕人家听的人呢 去这边听 那万一刚好又有别的地方 别的device也在这边送的话 哎 他怎么知道哪个是对方要听的 从这里 DID跟SID 从这里来判别 DID最大距离的时候 这个东西是我要听的 好 误听到别人的悄悄话 OK 好 好 那再看 刚刚在做这两个封包 对不对 我们看这个东西 是什么 辅助AES 就是5.0才有的 一个是ADV indication 然后你看这里 这边就是它的payroll 它的payroll 它传的资料在这里 OK 好 那这边就有带 带我是谁 广播者的address 这边没有带哦 这边没有带 所以你在这边才会知道 这个是谁 好 那再看我们针对 软体的部分 就是 API 那API的话 这个是 我们之前旧的API 一直在用setParameter setParameter 把广播的资料 scan Rsp的资料 最后再把它制冷 然后有一个GAP的task 去处理这个API 哦 那这个是legacy抓下来的 当你呼叫这些东西之后 就针对分包出来了 从37 38 39 37 38 39 来送 哦 还记得吗 我们的payroll只有31个 byte 那它可能有加载一些heater 所以这边才需要33 好 那新的呢 新的API要达到刚刚那个功能的话呢 我们做了一些修改 因为5.0它的那个 一些需求比较多 所以我们把这个做成一个schedule 做成419 然后首先要考虑一个 我们用handle来处理 你看后面都是透过handle 来设定 OK 那它刚刚的set 对不对 出现在这里 就变成了structure OK 然后inable 智能之后 就可以在37 38 39 做广播 OK 所以 各位如果没有接触过我们之前的SDK的话 那就比较没有前面的这些帮助 就可能需要做一些小调整 好 那如果这边你要改 1M变2M 你要怎么改 我们来看 这边有 primary secondy的PHY 都是1M 所以它走的 都是1M 我们来看 哎 还记得吗 这是它们的parameter的资料架构 把里面资料架构的栏位 secPHY把它设成这个 好 然后在create的时候 它就会 而且我们让它可以做 scannable 可以回应这个scan request的 所以它就这样 广播广播 然后到这里 就是gap adv 对不对 所以别人呢 就可以发送request 后面就一直传 为什么它可以这样连续传 它用的是什么 CHAIN对不对 刚才也讲到的 CHAIN 像链条一样 OK 好 那我们就针对刚刚的一个条件 就scan request来做 更深度的那个解释 那这边也是一样 在37 38 39 做广播 对不对 然后这里 这里是AES EST ADV的一个indication 然后这边就request 因为我们是scannable嘛 所以这边就是 scan request 这个封包 OK 那前面就是 这个是照顺序来的 第一个是packet 在37 这一个38 39 然后这个 AUV scan REQ这里 它就跑到哪里 21了 那大家全部都到21去了嘛 所以它后面呢 request啊 response啊 然后这个CHAIN统统都在21的部分 OK 你看哦 这边253 加起来 就可以到1650个Byte OK 然后它就在 把[听不清]输掉呢 再重新传输一遍 这个是一个summary 整个的 在这里 然后它这个从前面开始 就是ADV EXT IND 这三个 所以这里你回顾一下 它的新的封包型别 那它是一个pointer对不对 一个指标嘛 那它可以被扫描 然后它里面的识别码就是SET ID DATAID 那pointer什么时候 在哪里 在哪个channel 什么时候 就在offset这里 offset 然后how就用什么 PHY 所以这三个类似的 可以让人家知道 我即将在哪里呢 做广播 好 那第二个 它就跳到这个 广播37 38之后呢 就到这里来 那有没有会说它如果没有跟到怎么办 它也一样啊 37 38 39 到20 假如刚好到21 刚好到21 哎 没有人要资料 对不对 它再回去 37 38 39 37 38 39到这里 那有人跟到了 有兴趣了 在这边 再回答 就是回应 回应一下给对方的封包 广播封包 OK 所以再看这里 21 channel的第一个 那21channel的第二个 就是scanREQ 对方有兴趣的 我会发这个scan request 再问详细一点 而且它会讲哦 我是谁 scanner 然后 发广播的是谁 OK This is me 因为它是带了scander 然后要跟这个讲话 然后再来 它就发scan 它就 前面的request之后就 response 就应该是response 这边错掉了 然后它这边就发response 的封包 就是6127 6127回的 6127回的 然后 它在 channel 16 OK 那这个是跟对方讲 我这一包 还没有结束哦 我将会在1.35毫秒后传第二包 OK 这个是它的raw data 这个是里面的payroll raw data OK 所以它这边会在 会在带我 后续还有 更多的资料 那后面呢 就是CHAIN了 用CHAIN的方式 用CHAIIN的方式把它串起来 传更多的封包 OK 那也一样 下一包会在多久之后会出来 那如果没有呢 就没有这个offset 所以收的人就知道 最后一笔了 不会再有 所以我们从这个 配合RF channel就是 纵轴呢 是频率 channel 横轴是时间 我们来看 它的封装 37 38 39 做pointer 然后跳到这里来 如果有人要我的资料 他就发scan request 然后呢 我就回scan response 因为我还有资料 所以 我就用CHAIN CHAIN CHINA 把它串起来 OK 所以这个完全是什么 pointer 和pointee的应用 好 所以它也可以让那个 4.0相容嘛 因为如果4.0看到这个封包 它听不懂啊 对不对 所以它只给一样听得懂5.0的人听 好 那这边是讲 我用2M的频率在传 我在时间轴呢 在头尾大概花了10.8毫秒 如果用最慢的呢 头尾花了116毫秒 差了10倍 差了10倍
好 5.0就是三个口号
所以至少今天你在
花这个时间来听我们的
介绍 你至少
记得什么是5.0
两倍的距离 这个
弄错了
要改
好 两倍的throughput啊
就data rate
然后4倍的距离
然后8倍的广播资料
那为什么它可以达到2倍的距离
因为它的data rate
2M PHY这边它从
一面杠support两面杠的模式
那刚刚有提到说
data rate throughput跟距离
是鱼与熊掌 不可兼得
因为它是用跳变的方式
去产生一个比较告诉的两面杆
5 rate data rate 所以它的距离就会
比较短一些
那它另外一个好处 比较告诉
所以空气中传输的时间就
变短
那这样也会让device更省电
那在距离方面
它的跳变呢
有两种 一个是S2
S2就是除以2
什么除以2
1MG除以2
1MG除以2就变成500K
500K的模式
另外一个是除以8
就125K的模式
OK
那你牺牲掉的throughput 换回来的就是
可以传比较高的距离
然后 相对的 你空气中传输的时间就会
增长了
第三个功能就是广播封包
资料量乘以8倍
那后面介绍你会更了解说
它不止是乘以8倍
加上它一个新的packet的封包格式呢
它叫做chain 就是把它连接起来
它可以更长
那包括你要用新的PHY
可以用两面杆
或者是 coded S2或者8
然后在非连接的模式下
然后它这边增加了一些封包型别
待会可以跟各位讲
那它为什么可以做这样
这就类似我们新研的软体一样
它有pointer 指标
跟pointee 被指到的物体
它就是广播的实体的payroll
像这种概念 可以让你
你的广播的资料可以更
封包量更大
可以传到1560个byte
那这边介绍它怎么做到
2M的模式
就是它把symbol rate呢 double
本来就是1M
然后把1个signal代表的bit呢
给它double
那所以
对它变两倍
是不是传输的时间就缩短一半呢
我们来看啊 当然有一些特性的
底下是传统1M的模式
它的传输
那这个是2M模式
的确这个封包的长度变短了
但是蓝牙有一些特性的
规范 你封包跟封包之间
至少要相隔150个纳秒
好 你看 所以整体来讲
这个时间到下个时间
虽然你一半的时间
把该传的资料传完
但你还是要等这个时间
因为刚刚有讲过
5.0的device必须要跟4.2相同
所有有4.2的一些 你可以说它是
规范或者包袱也好
它都必须要follow
OK
所以它一定可以变成
两倍快速吗
要几个要素要考虑到
一个是连线的间隔
还有封包的size
还有每个连线的connection
通联的时间它可以
带几个封包
都要纳入考量
好 那再来
Coded PHY刚刚讲都是通过 symbol rate
的调整 那
这个S2呢 就是我们一个bit用两个
symbol来代表
那我们再用FEC
Forward error connection来做补偿
所以 即使你封包
即使你bit有掉几个
它一样可以把它矫正回来
那所以 这就好像说
现在流行一句话就是
因为很重要 所以说几次
很多次 对不对
所以当你说很多次
那个对方漏掉一次
他还有机会catch up回来
就是这个意思
所以这个
但是它里面涵盖的
通讯的储存的
那个理论在里面
OK
所以另外一个就是
除以8倍的就是
125K的模式
OK
这个是详细的一个封包里边
的栏位
那因为无线通信在idol的时候
它为了让你收到讯号跟类似sync
同步的功能
所以封包前面都会有preamble·
所以这个东西是不管
1M 还是S2 S8都要
follow的 都要用一样的preamble
后面就是 它用S8
来规范
另外 后面就可以用S2或S8来
传输
所以你看 标准的1M的模式
是这么长的话
所以你看 这边的间隔要150纳秒嘛
然后这个是150纳秒
所以因为这个荧幕容不下那么大
所以我们类似把S2这边呢
缩小一半
所以真正呢
这个S2比这个S1
不是S1 是1M的模式呢
大概要将近4倍的时间
OK
好 这边就讲掉 这边150纳秒相对
相应这边代表150纳秒
OK
所以 这边就是你
换的可以有远距离
那你的side effect就是缺点就是
传输的时间真的变得很长
好 这边是一个
线上的影片
大概是将近6分钟
那我不在这边播出
这边有link的网址
连接 那各位会后可以去观赏
那我们这个老外呢
在挪威
那他在冬天的一个环境呢
一个人站在山顶上
另外一个人站在湖面
那山顶到湖面的距离
大概是1公里远
OK
那当然这边有一点出题就是
在冬天 下雪的话
它的湿度是比较低的
那这也要注意RF的传输
然后中间会有 这个老外呢
他会跟各位讲述
这个S2到S8的原理
帮助你
1呢 我们就变成10或01
然后S8呢 再把它展开
所以就真的是一句话来讲
重复讲了好几遍的意思
OK
好
然后这边是讲第三个部分
LE5.0
第三个部分
就是广播封包
变长的特色
好 这边是recap 就是复习一下
传统就是5.0之前
它的封包呢 用到哪些型体
有这几种
OK
好 那它的特性就是
它只用1M的data rate来传
然后payroll就是你塞在封包里面的
资料 就是内容物
一个封包只能塞31个byte的
就是8位元
31个byte
然后你只能在37 38 39
的封包来做那个广播
OK
好 所以这是31个byte
好 那这是5.0之前的
针对广播封包的规范
好
那各位可以想说
这边跟大家复习一下
37 38 39
它并不是在 在频谱上看
它并不是连续的3个channel
37呢 是在2402就是
24频带的最前面
38是在三分之一的部分
39是在最后边
2480
那边
那为什么它是这样分配的
因为21.4 它是
有蓝牙 也有WiFi使用
那WiFi 它的频宽
最少都是20MG
甚至现在是40MG
所以利用率呢 我们只能插空隙
因为它的power比较小
所以就塞在最前面 最后面 三分之一的部分
OK
那另外就是 37 38 39
是大家公用的channel
所以 37 38 39的资源是非常重要
跟珍贵的
那新的呢
5.0针对A1 就是
广播延长这个功能啊
它定义了几个风暴型别
你可以看到EST啊
或者这个AES辅助的
都是5.0新加的封包型别
那刚才有讲 就是说
它为什么可以这样做啊
然后要能够相容旧的
就是它利用pointer就是指标
跟pointee 被指到的标记物
这种概念
所以它会在原来的 我们叫primary channel
我们叫37 38 39
Secondary channel 就是非37 38 39
的部分的channel
所以 37 38 39它只会说什么
哎 我什么时候
即将在哪个channel做广播
就只讲这件事情而已
因为37 38 39是很珍贵的
就是大家公用嘛
你如果把这个37 38 39狂用的话
就会塞爆
OK
那各位来看 这些都是
红色的框代表是在
37 38 39这是
主要的data channel来做广播
它的封包型别呢就是ADV EXT
Extension
意思是advertisement extension
indication
就是identify
通知 然后
它指到哪里 就是指标嘛
它就是里面的封包的内容
会带着 会跟你讲
什么时候 在哪里
在第几个channel
我会传的这个封包
OK 我会传这个封包
所以这些指标 这是pointee
被指的地方
OK
那它的封包就是
AUX ADV 刚才讲
AUX就是615
才有的定义的封包 OK
那这边就
刚刚讲 EST呢
因为它为了相容
4.0 4.1 4.2
所以它一开始只能在哪里广播
primary data channel 37 38 39
OK
那它里面带到内容会
有两个 会PHY
会跟你讲 我是谁
我即将在哪里 什么时间
哪个地点
因为地点就是channel
来做我要延伸的封包
OK 那这个东西可以
是1M 也可以是
S2 S8 为什么
因为想一个场景 就是
如果你的device跟
就是你的PHY跟你的central连线的
连完线之后 你把那个Coded PHY设成
S2或者S8
那这样才会把距离拉远 对不对
那距离拉远之后呢
如果不小心断线的时候
如果它只有1M会怎样
1M的距离比较近 对不对
两个资料在走进
连线在拉远
这样子是失去了长距离的特性 对不对
所以它这个advertisement extension
一定要支援S2或者S8的data rate
OK
然后再来
我们另外有辅助的AS 你看我们
传统的ADV IND对不对
那么我们加一个AUX
就是5.0才有的
它就是pointee
就是被指到的地方
那它会在哪里出现呢
它就可以在
PHY广播封包
37 38 39
为什么 因为你
37 38 39占用太多的话
你其他的就没办法广播
没办法广播就没办法连线
所以各位如果去
蓝牙的一些seminar看
如果有布置
如果你有时间去看去听的话
你可以看到37 38 39 几乎都塞爆了
因为现场一定有什么
什么demo
mash
61的mash
所以[听不清}的mash
你看 mash号称只要support 4.0的device
就可以增加[听不清]mash
因为它就是
因为它就是在用37 38 39
把它塞爆了
OK 那后果怎样
效率就不好
OK
好
那在这里
因为我们前面的pointer
已经把它引导到后面的
所以它就是
就是辅助的ADV
就可以配合前面来
指定 比如说
这面是S8 后面就引用S8
这样子
那另外还有一个
SYNC跟Chain
那刚刚有讲到
CHAIN字面上就是链条嘛
它就把封包再一次地
所谓的connection interval
在同一个连线的时段里面
我可以用CHAIN的方式
一次传七八个封包
所以刚刚有讲
乘以8 只有乘以8吗
可以更长
我们这个就把
纵轴是channel
还有一个channel的意思
然后这边是时间轴
横轴是时间轴
我在37 38 39
广播 这是pointer
广播的内容里面呢
有PHY
我即将多久 shift就是间隔
多久在哪一个channel
来做广播
那如果我要送长封包呢
我已经搜到 我接受这个指示呢
接受这个pointer的封包 我只是来
来到这边 对不对
那我这个就要善用啊
我是不是还有资料一直一直这样
类似像chain把它串起来
这个意思
所以 5.0的这个长封装就是利用这个
pointer加pointee的方式
那再加上这个chain
就可以让你达到
一次可以传送1650个byte
这么大的一个资料量
好
那 另外一样
旧的 就是在5.0之前
所有的scan request scan response
5.0一样也有
那一样哦 看到这个AUX开头的
都是5.0才有的封包
OK
那我们看看它怎么应用啊
前面是extension 对不对
ADV EXT的
IND的封包
就pointer 然后
跟人家讲 我会在哪里
做这个
广播
然后就进来了
那对方呢
如果是收到的scan request
然后发 你那个
广播者呢就回应
跟response data
一样哦 我们可以用chain的方式
这个黄色就是chain
chain的封包
把这个 待续
continue就是
后面我要送的资料呢
一口气把它丢出去
所以这样你就可以串好几个
最长可以1560个板
OK
好 所以我们做个summary啊
那AE可以support哪几种
型别呢
可连线的
然后non scannable
就是没办法回应
scan response
所以当对方收到这个是non scannable
他不会发scan response
scan request
如果发的话 就违反space
OK 所以它要用到基本的ESD跟
AUX辅助的ADV
然后它这个connectable嘛 所以
就是可以连线 所以
很正常嘛
它可以连线 所以你有什么悄悄话
你可以都现在去讲
就不用通过这个广播封包来讲这个一些的话
OK
然后scannable呢 它就可以去听
Scan request 那也可以
让人家去连线
那这边它为什么可以到1650个呢
你看啊 这个数字乘以8 刚刚记得吗
我们传统的话 一个只能
payroll只能塞31个对不对
31乘以8 就是243
所以乘以8就是这里
所以一个packet可以传243
那多个packet呢 透过这个chain呢
它就可以传到1650个byte
OK
这里应该写大B啊 指的是Byte
OK
另外一个就是broadcast就是类似
beckon的应用
w/chain同样可以传到1650个
那么因为它是broadcast 像beckon
它不会让人家来scan request
也不会回应这个connection
它的角色就是一直broadcast
好 接着我们就要讲
我们的SDK提供了哪些范例
就是我们的SDK提供的
好 Autobus就是我们的SDK
里面开箱呢就有一些范例
那肯定是包括在我们的preview里面
我们就有AE跟coded PHY
的特色
那一样还记得吗
刚刚有讲到 我们的TI Resource
资源里面就有一些范例
我等下会再跟各位介绍
那另外只要你follow这个peripheral
SIMPLE Peripheral跟simple central
你就需要去验证BLE5.0的
三个特性
好 那这个是我们透过
Ellisys的tracker
抓到的封包
这个纵轴是channel
就是RF channel
还记得吗 37 38 39 37是最前面
38在三分之一的部分
39是280 最后一个channel
OK 所以在37 38 39
这个是1M的
广播
我们来看 如果用S2来讲
哎 你有没有发现这个封包变长了
对不对 因为它有S2
200K
所以它传输的时间就变长了
那这个指标是代表什么意思呢
还记得刚才跟大家讲的
5.0它的广播延长的特性就是
就是用pointer 对不对
它的封包就要像一个指标一样
跟你讲我什么时间点
什么地点会送这个封包
所以它里面的内容就像一个
pointer 指标 指到这里来
这个呢 指到这里来
这个应用
OK
好 那再来呢
我们就
讲针对前面那个图
还记得吗 pointer跟pointer
pointer跟pointer经过的passer呢
它的封包[听不清]
就讲这边
那这是黑的部分
它的header PDU type 这个跟
这个都是ADV的一个extension
这两个都是一样
两个差异在哪里呢
在这边广播跟广播
第一个是channel 对不对
好 它在38 它在39
然后还有 这两个东西
都会指到哪一个
指到这里
这个时间比较前面 这个时候比较后面
所以 什么会不一样
让我们来看
offset
这里要隔多久 1.74毫秒
这里隔多久
870us嘛 因为
我这个pointee要来的时间越来越短
好 那其他呢
一个一个去看
都不一样
好 为了怕人家听的人呢
去这边听
那万一刚好又有别的地方
别的device也在这边送的话
哎 他怎么知道哪个是对方要听的
从这里
DID跟SID
从这里来判别
DID最大距离的时候 这个东西是我要听的
好 误听到别人的悄悄话
OK 好
好
那再看 刚刚在做这两个封包 对不对
我们看这个东西
是什么
辅助AES 就是5.0才有的
一个是ADV
indication
然后你看这里
这边就是它的payroll
它的payroll
它传的资料在这里
OK
好 那这边就有带
带我是谁
广播者的address
这边没有带哦
这边没有带
所以你在这边才会知道 这个是谁
好
那再看我们针对
软体的部分 就是
API
那API的话 这个是
我们之前旧的API
一直在用setParameter setParameter
把广播的资料 scan Rsp的资料
最后再把它制冷
然后有一个GAP的task
去处理这个API
哦 那这个是legacy抓下来的
当你呼叫这些东西之后
就针对分包出来了
从37 38 39 37 38 39
来送
哦 还记得吗
我们的payroll只有31个
byte 那它可能有加载一些heater
所以这边才需要33
好 那新的呢
新的API要达到刚刚那个功能的话呢
我们做了一些修改
因为5.0它的那个
一些需求比较多
所以我们把这个做成一个schedule
做成419
然后首先要考虑一个 我们用handle来处理
你看后面都是透过handle
来设定
OK
那它刚刚的set 对不对
出现在这里 就变成了structure
OK
然后inable 智能之后
就可以在37 38 39 做广播
OK
所以 各位如果没有接触过我们之前的SDK的话
那就比较没有前面的这些帮助
就可能需要做一些小调整
好 那如果这边你要改
1M变2M
你要怎么改
我们来看 这边有
primary secondy的PHY
都是1M 所以它走的
都是1M
我们来看
哎 还记得吗
这是它们的parameter的资料架构
把里面资料架构的栏位
secPHY把它设成这个
好 然后在create的时候
它就会 而且我们让它可以做
scannable 可以回应这个scan request的
所以它就这样
广播广播 然后到这里
就是gap adv 对不对
所以别人呢 就可以发送request
后面就一直传
为什么它可以这样连续传
它用的是什么
CHAIN对不对
刚才也讲到的 CHAIN
像链条一样
OK 好
那我们就针对刚刚的一个条件
就scan request来做
更深度的那个解释
那这边也是一样 在37 38 39 做广播
对不对
然后这里 这里是AES
EST
ADV的一个indication
然后这边就request
因为我们是scannable嘛
所以这边就是
scan request
这个封包
OK
那前面就是 这个是照顺序来的
第一个是packet 在37
这一个38
39 然后这个
AUV scan REQ这里
它就跑到哪里 21了
那大家全部都到21去了嘛
所以它后面呢
request啊 response啊
然后这个CHAIN统统都在21的部分
OK
你看哦 这边253
加起来 就可以到1650个Byte
OK
然后它就在
把[听不清]输掉呢
再重新传输一遍
这个是一个summary
整个的 在这里
然后它这个从前面开始
就是ADV EXT
IND 这三个
所以这里你回顾一下
它的新的封包型别
那它是一个pointer对不对
一个指标嘛
那它可以被扫描
然后它里面的识别码就是SET ID DATAID
那pointer什么时候
在哪里 在哪个channel
什么时候 就在offset这里
offset 然后how就用什么
PHY
所以这三个类似的
可以让人家知道 我即将在哪里呢
做广播
好
那第二个 它就跳到这个
广播37 38之后呢
就到这里来
那有没有会说它如果没有跟到怎么办
它也一样啊 37 38 39
到20 假如刚好到21
刚好到21
哎 没有人要资料 对不对
它再回去 37 38 39
37 38 39到这里
那有人跟到了 有兴趣了
在这边
再回答
就是回应
回应一下给对方的封包
广播封包
OK
所以再看这里
21 channel的第一个
那21channel的第二个
就是scanREQ 对方有兴趣的
我会发这个scan request
再问详细一点
而且它会讲哦 我是谁
scanner 然后
发广播的是谁
OK
This is me
因为它是带了scander
然后要跟这个讲话
然后再来
它就发scan 它就
前面的request之后就
response
就应该是response
这边错掉了
然后它这边就发response
的封包
就是6127
6127回的
6127回的 然后
它在
channel 16 OK
那这个是跟对方讲 我这一包
还没有结束哦
我将会在1.35毫秒后传第二包
OK
这个是它的raw data
这个是里面的payroll
raw data
OK
所以它这边会在
会在带我 后续还有
更多的资料
那后面呢
就是CHAIN了
用CHAIN的方式
用CHAIIN的方式把它串起来
传更多的封包
OK
那也一样
下一包会在多久之后会出来
那如果没有呢
就没有这个offset
所以收的人就知道
最后一笔了
不会再有
所以我们从这个
配合RF channel就是
纵轴呢 是频率
channel 横轴是时间
我们来看
它的封装
37 38 39
做pointer
然后跳到这里来
如果有人要我的资料
他就发scan request
然后呢 我就回scan response
因为我还有资料 所以
我就用CHAIN CHAIN CHINA
把它串起来
OK
所以这个完全是什么 pointer
和pointee的应用
好
所以它也可以让那个
4.0相容嘛
因为如果4.0看到这个封包
它听不懂啊
对不对 所以它只给一样听得懂5.0的人听
好
那这边是讲
我用2M的频率在传
我在时间轴呢
在头尾大概花了10.8毫秒
如果用最慢的呢
头尾花了116毫秒
差了10倍
差了10倍
视频报错
手机看
扫码用手机观看
收藏本课程
视频简介
Agama 硬件简介
所属课程:SimpleLink CC26x2/CC13x2 无线微控制器可支援多重协定
发布时间:2018.10.09
视频集数:7
本节视频时长:00:36:32
· CC26x2/CC13x2(Agama 平台)有何特色
· Agama 软件简介
· 蓝牙5简介
· SimpleLink 线上培训学院
· Agama 硬件简介
· 动态双重协定管理模块
· TI 15.4 Stack 简介
//=$v1;?>
//=$v['id']?>//=$v['down_category']?>//=$v['link']?>//=$v['is_dl']?>//=$v['link']?>//=$v['name']?>//=$v['name']?>
//=$v['id']?>//=$v['down_category']?>//=$v['path']?>//=$v['is_dl']?>//=$v['path']?>//=$v['name']?>//=$v['name']?>
////=count($lesson['bbsinfo'])?>
//=$elink?>//=$elink?>//=$tags[0]?>//=$tags[0]?>//=$elink?>//= $elink?>//=$tags[1]?>//=$tags[1]?>
//=$lesson['bbs'];?>
//=count($lesson['bbsinfo'])?>