MT7681 Smart Connection 技术分析

MT7681 Smart Connection 技术分析

第一次接触MTK7681芯片时在14年10月份,那时用的当透传模块用,配合手机端实现远程控制,很自然到要能够在手机上对模块的wifi进行配置,当时好像还不支持AP模式,但是支持一种SmartConnection技术,可以不在不连AP的情况下对wifi进行配置,在手机(Android)上调用MTK提供的库就能对配置了。

一开始以为调用了一些底层的驱动才实现了这个功能,心里还想着在iOS端应该是用不了的吧(大家都知道iOS App的权限很少,如果涉及到驱动应该是没法用的),后来问了下卖模块的商家说是有iOS的解决方案,也是提供一个库调用就行了。

这下心里就有了写猜想,应该是纯应用层的实现。不过后来由于换了esp8266芯片也就没有跟进研究了。

这两天发送esp8266支持混合模式,能做sniffer,结合之前就有的念头,我能不能在esp8266上也实现smart connection,现在采用的手机连到AP上来配置的方式实在有点慢而且iOS也不支持程序控制WiFi切换,拾起之前就有的想法,继续来看看MTK是如何实现的。

废话有点多,下面开始正文:

既然要实现配置,核心点就是:

  1. 配置数据的发送
  2. 配置数据的接收

既然觉得时纯应用层的实现,抓包肯定是能发现什么,用wireshark抓包结果如下图:

果然发送了非常多的UDP包,肯定是通过这些包将wifi的配置信息发送出去的,继续分析发现每个包的内容都一样而且完全不携带任何同wifi配置有关的东西:

但是这里也发现了每个包的IP地址都是多播地址,而且第二段有规律的递增,和一个数据包的包序号很像,后面两个很像是一个包携带的数据,继续看下去还发现,目标IP地址和MAC地址是有关系的:

MAC地址和IP的后3段总是相同,MAC的前3段也总是固定的,查了下多播的IP地址和MAC地址是有映射关系的,如果猜测是对的数据发送这个点我们就找到了,接下来想想如何在芯片上收到它。

既然是在MAC中存放数据,而在sniffer时应该是能看到MAC地址的,查了下802.11的协议,帧头中是可以看到MAC地址的,将sniffer到的数据按帧头解析,MAC地址同之前抓包到的MAC地址完全一致,数据接收这个点现在也找到了。

将数据通过多播IP地址->MAC地址来发送,芯片上sniffer接收,到这Smart Connection的流程到就通了。

时间: 2024-07-30 17:36:44

MT7681 Smart Connection 技术分析的相关文章

蓝牙协议分析(7)_BLE连接有关的技术分析

转自:http://www.wowotech.net/bluetooth/ble_connection.html#comments 1. 前言 了解蓝牙的人都知道,在经典蓝牙中,保持连接(Connection)是一个相当消耗资源(power和带宽)的过程.特别是当没有数据传输的时候,所消耗的资源完全被浪费了.因而,对很多蓝牙设备来说(特别是功耗敏感的设备),希望在无数可传的时候,能够断开连接.但是,由于跳频(hopping)以及物理通道(Physical Channel)划分的缘故,经典蓝牙连接

Fabric 和 Sawtooth 技术分析(下)

http://blog.talkingdata.com/?p=6172 在前一篇文章(Fabric和Sawtooth技术分析(上))中,我们着重跟大家分享了 Fabric 相关的内容,在本篇文章中,我们将围绕着 Sawtooth 进行一些分析和探讨. Sawtooth 结构及分析Sawtooth 是 Intel 公司推出的企业级区块链,2018年 Intel 将其贡献给 Hypherlegder 项目.本文中笔者主要从 Sawtooth 的存储结构.数据结构.网络结构方面做简要介绍. Sawto

3DSMAX建模技术分析

在游戏美术中,模型的建立是很重要的,今天卡拉小编与大家分享的是3DSMAX建模技术分析1 旋转建模 用于具有中心对称的物体的造型比较简单,只需用工 具画出对称截面,加入(旋转)修改器就可以得到三维实体,有些还可以加入一些特殊变形,以增强表现的效果.2 Loft放样建模 这种建模的含义是将一个二维的交错物件转换为完整的三维物件的一个处理过程,也就是将一个二维的造型物件沿着第三轴向构建出复杂曲面的模型.也可以这样理解这个过程:将许多2D(shape)造型物件紧密且整齐地排列于一条路经(path)上,

蓝牙4.0技术分析1-广播者角色

第1章  BlueTooth Roles-Broadcaster 1.1    广播类型 广播可设置以下几种类型: 1)   Connectable Undirected Event Type(可连接无定向广播) 2)   Connectable Directed Event Type(可连接定向广播) 3)   Scannable Undirected Event Type(可扫描无定向广播) 4)   Non-connectable Undirected Event Type(不可连接无定向

PLSQL_R12 MOAC多组织底层技术实现技术分析(Oracle VPD)

  2014-05-30 BaoXinjian In Capgemini  一. 介绍 之前一直存在对Oracle R12 多组织访问的一些疑惑,所以查询了一些相关资料,并介绍实现R12 MOAC的Oracle VPD技术 Oracle VPD全称Virtual Private Database, Oracle的一种控制数据访问的其中安全策略之一 Oracle数据安全策略访问实现方法 Role-based security create role cust_role; grant select

Java三大主流开源工作流引擎技术分析

Java三大主流开源工作流引擎技术分析 首先,这个评论是我从网上,书中,搜索和整理出来的,也许有技术点上的错误点,也许理解没那么深入.但是我是秉着学习的态度加以评论,学习,希望对大家有用,进入正题! 三大主流工作流引擎:Shark,osworkflow,jbpm! Shark的靠山是Enhydra.Enhydra做过什么呢?多了!从j2ee应用服务器,到o/r mapping工具,到这个工作流引擎等等.为什么Shark的持久层采用DODS来实现?就是因为他们是一家人. Jbpm的靠山是jboss

负载均衡技术分析与测试报告

负载均衡技术分析与测试报告                 目录 负载均衡测试报告... 1 负载均衡技术概述:... 2 服务器负载均衡... 2 链路负载均衡... 3 Outbound链路负载均衡... 3 Inbound链路负载均衡... 4 常见负载均衡调度算法... 5 测试目的... 6 测试环境搭建... 7 1:原始网络环境... 7 2:测试网络环境... 7 测试设备介绍... 8 1:产品介绍... 8 2:产品操作界面... 8 出现问题... 9 最终解决方案...

技术分析之OGNL表达式概述

1. OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写 * 所谓对象图,即以任意一个对象为根,通过OGNL可以访问与这个对象关联的其它对象 * 通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能.它使用相同的表达式去存取对象的属性 2. Struts2框架使用OGNL作为默认的表达式语言 * OGNL是一种比EL强大很多倍的语言 * xwork提供 OGNL表达式 * ognl-3

转: HTTP Live Streaming直播(iOS直播)技术分析与实现

http://www.cnblogs.com/haibindev/archive/2013/01/30/2880764.html HTTP Live Streaming直播(iOS直播)技术分析与实现 不经意间发现,大半年没写博客了,自觉汗颜.实则2012后半年,家中的事一样接着一样发生,实在是没有时间.快过年了,总算忙里偷闲,把最近的一些技术成果,总结成了文章,与大家分享. 前些日子,也是项目需要,花了一些时间研究了HTTP Live Streaming(HLS)技术,并实现了一个HLS编码器