好 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倍 An internal server error occurred.