EBYTE E103-W02 WIFI模块配置总结(TCP+UDP+HTTP+云透传)

2023-05-16

目录

1.硬件配置

1.1 原理图

1.2 管脚配置

2.AT指令集

3.AP模式配置

3.1AP介绍

3.2 AP配置TCP通信

3.3 AP配置UDP通信

4.STA模式配置

4.1STA介绍

4.2配置过程

4.3网页配置

5.基于亿百特进行云透传数据通信

5.1 云端添加

6.HTTP模式下进行数据通信

 

7.Normal模式下进行Socket链路通信

8.MULTIS模式下与多客户端进行通信

9.MULTIC模式下与多服务端进行通信

10.MQTT模式与阿里云平台进行通信


1.硬件配置

该款产品为亿百特的,用了一下是真的强!而且方便,最关键是它留有IPEX底座,可以支持外接天线,我找了好多个如esp8266都是板载天线的,但是项目限制会屏蔽信号,所以必须要外接天线,这款更快,更稳定,耗电还更低了。

1.1 原理图

1.2 管脚配置

虽然管脚看着很多,但如果只是和MCU进行通信的话只需要接以下几个管脚:

  • 10:设备供电 VDC:2.4~3.6V(300mA 以上)
  • 19:USART_TX
  • 20:  USART_RX
  • 27:  WIFI连接状态指示信号,已连接输出低,未连接输出高
  • 30:网络连接状态指示灯,已连接输出低,未连接输出高
  • 31:Smartconfig 状态指示灯,进入状态时为低,未进入状态时为高
  • 32:恢复出厂设置引脚,启动时置低,待状态指示灯闪烁三次后,即恢复出厂设置

其他不用的可以接地。大概是这个样子:

右边那坨是USB-TTL ,所以其实有效管脚就这几个。

2.AT指令集

列出常用的几个,具体可以参考数据手册

3.AP模式配置

3.1AP介绍

亿百特的这款WIFI模块默认的就是AP模式。

对于AP模式,就是无线接入点,是一个无线网络的创建者,是网络的中心节点。一般家庭或办公室使用的无线路由器就一个AP。通俗的说WIFI模块作为热点,实现手机模块或电脑直接与模块通信,实现局域网无线控制。

3.2 AP配置TCP通信

用电脑打开网络中心,查看EBT开头的WIFI,后面会有6个数字,是该模块的MAC地址的后6位,进行连接。

如果连接成功,若用的是买的测试底板LED1灯会亮,我这里是自己的板子,所以监测 27号管脚即GPIO9,当它输出低电平说明连接建立成功。

接下来利用TCP/IP软件创建一个连接,IP地址和端口号可以打开网址192.168.1.1进入网页配置页面查看,然后进行连接,如果连接成功,LED2灯会变亮,对应30管脚即GPIO10输出低电平。

PS:当模块作为AP时,只能允许一个Station连接。

建立成功之后就可以进行数据通信了,一端为TCP工具,一端为串口助手,接下来进行通信测试。

点击发送之后,在串口助手中收到信息:

 

之后用串口助手进行数据发送,TCP工具进行接收:

              

 

另外它也支持文件的收发,最好是txt格式的,文本数据会直接通过串口助手打印出来:

 

3.3 AP配置UDP通信

首先通过串口助手(代码可以直接用模块接入的串口进行AT指令发送)发送+++(后面不能加回车换行,代码中不能加/r/n,其他指令都要加回车换行),若串口返回Entered AT mode表示已经进入到了AT模式。

接下来进行socket配置,输入指令AT+SOCK=UDP,SERVER,192.168.1.2,8887,8889,具体ip,端口自行定义,这里要加上发送新行,若返回Socket update OK就表示设置成功。

然后创建UDP连接,进行连接,就可以进行数据通信了,和TCP操作一样。

 

如果通信失败重试两次就行。 

 

4.STA模式配置

4.1STA介绍

STA(Station)站点,每一个连接到无线网络中的终端(如笔记本电脑、PDA及其它可以联网的用户设备)都可称为一个站点。Wifi模块可以连接路由器WiFi,手机热点等进行通信。

4.2配置过程

先通过+++进入AT模式,然后通过AT+ROLE=STA指令切换为STA模式。

在串口调试助手发送文本框内输入 AT 指令“AT+STA=wifi名,加密方式(无加密0,wep是1,wap2就是2),密码”,具体参考数据手册,我这里连手机热点测试,出现了Unable to excute command的错误时一定记得勾选换行。

若串口回显“STA update OK”信息,表明已经指令设置 STA 参数成功。

然后通过AT+RST进行复位或者直接断电重启,若是两个WiFi模块进行通信,距离很远的话可以接上天线,需要转接线。

如果连接成功,LED2灯会变亮,对应30管脚即GPIO10输出低电平。

接下来可以进行数据收发测试,也可以用手机进行测试,该模块能记住上次连接的wifi名称和密码,下次重启模块会自动连接的。

 

4.3网页配置

AP和STA还可以通过网页配置,非常方便,连接上模块WIFI后,进入192.168.1.1,既可进入以下页面进行具体的参数配置。

4.4 PS!!!非常注意

WIFI模块里面的串口波特率设置一定要非常注意,虽然说明书和网页里面都写的是支持300-3000000bps,但是!!!千万不要因为好奇心去把波特率直接拉满,拉满之后模块当AP时直接开启不了WIFI,而且USB-TTL模块用串口助手打不开3000000波特率的串口,因此也进不了AT模式还原复位。

解决办法:先检测几个有效管脚的电平有没有被拉低,如果正常就可以解决,根据原理图,该模块的4号管脚为复位管脚,低电平有效,34号管脚为恢复出厂设置管脚,方法是拉一根地线先接到复位管脚将它拉低,然后断开,将该地线与34号管脚进行连接,将34号管脚强制置低,保持十秒钟,在此期间,状态指示管脚的电平会由高电平跳变为低电平,如果连续三次跳变,应该就算成功了,然后再进行一次复位操作,如果嫌麻烦掉电重启也能复位,这个时候就会发现它又能开启WiFi了。

 

5.基于亿百特进行云透传数据通信

5.1 云端添加

首先要去注册一个亿百特的云端账号,用于进行设备管理配置等。地址:http://yun.cdebyte.com/main

注册完后进行登录。

 

登录进去之后再设备管理进行设备的添加。

MAC地址和SN号通过AT指令查询复制上去即可,其他项可以随便填,传输方式选择透传。

添加完成后是这样:

之后设置两个群组A和B,然后分别将两个模块添加到两个组里面,群组可以有多个,每个群组里面可以有多个模块设备,可以自定义。

 此时云端的配置就完成了。

接下来对模块进行配置。

我添加了两个模块,要对两个模块分别进行以下配置:

  1. 进入STA模式,

  2. 连接路由器WIFI

  3. 打开SOCKEBT

  4. 切换模式为MULTIC模式

  5. 重启模块

设置成功后,设备即可切换为在线状态

然后两个模块就可以通过串口直接进行数据通信了。

在云端还可以查看设备之间的通信记录以及操作时间。

6.MQTT接入OneNET平台

6.1 平台注册

首先在OneNET物联网平台进行账号注册,https://open.iot.10086.cn/

创建好账号进行登录,在基础服务中找到MQTT物联网套件

该MQTT套件为新版,使用旧版MQTT协议是另一个,找到多协议接入

6.2产品注册

自定义产品信息,选择MQTT协议,进行产品创建。

创建完成后如下:

 

6.3设备添加

鉴权信息很重要,可以根据自己的方式定义。

\

MQTT协议的三要素:设备ID,产品ID,鉴权信息,wifi模块就通过这三要素连接OneNET平台。

6.4 模块配置

1.输入+++进入AT模式,并使当前的网络角色处于STA模式
      AT+ROLE=STA


2.连接目的WIFI(AP),如接入网络AT+STA=EBYTE,2,JSZXE880,EBYTE为wifi名称,2为验证方式,WAP为1,WAP2为2,无就是0,最后的为密码。


3.切换模式,将工作模式设置为MQTT模式AT+MODE=MQTT


4.设置MQTT'的连接信息,连接ONENET的MQTT服务器(前提是用户已经创建了相关的MQTT设备)AT+MADDR=183.230.40.39,6002(地址可以是IP也可以是URL),这个IP地址和端口号为OneNET的ip和端口。


5.设置MQTT的接入信息(具体的信息根据用户的实际参数填写)
AT+MUSER=”ClientID”, ”Username”,”Userpassword”(这里的参数一定要加引号区别),客户端ID就是设备ID,用户名就是产品ID,密码就是鉴权信息。

6.设置MQTT的订阅信息(这个就是Topic分组)
AT+MSUB=Topic,Qos

7.最后进行重启就可以了,AT+RST或者断电重启。在未进行模块配置时,平台中设备处于离线状态,若配置好的话就会变成在线状态。

另外如果只有一个模块,或者刚开始使用MQTT,可以使用OneNET提供的一个仿真软件去模拟终端。下载地址:https://upfiles.heclouds.com/123/tools/simulate-device.rar

现在就算是已经成功接入,可以进行测试了。

发布Topic

终端WIFI模块:

指令下发测试:

 

还可以查看发送命令记录

 

7.Normal模式下进行Socket链路通信

8.MULTIS模式下与多客户端进行通信

9.MULTIC模式下与多服务端进行通信

10.HTTP模式下进行数据通信

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

EBYTE E103-W02 WIFI模块配置总结(TCP+UDP+HTTP+云透传) 的相关文章

  • 当我使用“control-c”关闭发送对等方的套接字时,为什么接收对等方的套接字不断接收“”

    我是套接字编程的新手 我知道使用 control c 关闭套接字是一个坏习惯 但是为什么在我使用 control c 关闭发送进程后 接收方上的套接字不断接收 在 control c 退出进程后 发送方的套接字不应该关闭吗 谢谢 我知道使用
  • Linux:如何从特定端口发送TCP数据包?

    如何打开原始套接字以从特定 TCP 端口发送 我希望所有连接始终来自临时端口以下的一系列端口 如果您正在使用raw套接字 然后只需在数据包标头中填写正确的 TCP 源端口即可 相反 如果您使用 TCP 套接字接口 socket connec
  • 仅扫描 2.4Ghz 频段的 wifi 信号

    我需要扫描可用的 Wi Fi 信号及其强度 我在用着wifiManager startScan 和异步wifiManager getScanResult 在不支持 5GHz 频段的设备上 大约需要 500 毫秒才能获得结果 在支持 5GHz
  • Captive Wifi 弹出窗口:单击链接打开 Safari

    我们的 iOS 设备 ipad iphone 等 网络出现问题 连接到 SSID 后 iphone ipad 立即打开强制网络助手 CNA 它就像一个缩小版的浏览器 没有导航按钮等 显示我们的欢迎页面 准备好让用户在网络中验证他的 MAC
  • 使用Apple80211 api时如何知道OPEN、WPA、WPA2、WEP等安全类型?

    Cydia中的Wifi WiFi FoRum等wifi扫描应用可以知道安全类型 使用 Apple80211 api 时 应用程序如何知道 OPEN WPA WPA2 WEP 等安全类型 CAPABILITIES 的值为 1057 1025
  • 连接到具有相同 SSID 的最强接入点(信号最强的接入点)

    我正在编写一个程序来始终连接到最强的接入点 我的意思是信号最强的接入点 首先 我扫描所有可用的 WiFi 网络 然后限制它们仅查看具有相同 SSID 的网络 这样我就可以看到一个网络的所有AP 当我连接到该网络时 它没有连接到最强的信号 但
  • Android,在连接wifi的情况下与移动数据通信,无需上网

    我有一个汽车配套应用程序 需要与 WiFi 和移动数据网络进行通信 我的车辆控制单元提供了一个无需互联网访问的 WiFi 网络 它公开了我们可以从应用程序调用的 API 服务 除此之外 我们还需要使用手机移动数据 3G 4G 与另一个可通过
  • 检测wlan是否关闭

    任何人都可以给我一个提示 如何在 Windows Phone 上以编程方式检测 C 8 1 应用程序 不是 8 0 是否启用 禁用 WLAN 我不想更改这些设置 只是需要知道 该解决方案是一个 Windows 8 1 通用应用程序 Wind
  • 使用 boost::asio 是否有一种可移植的方法来查找空闲端口号

    我目前正在尝试找出一种方法来查找空闲端口号以建立连接 最好使用 boost asio 然后 该端口号将用于侦听 只有这样我才能打开套接字 大致来说 有没有办法做到 tcp resolver query query localhost por
  • Android Wifi 广播接收器无法按预期工作

    每当手机连接到新的 WiFi 网络时 我都必须获取 WiFi ssid 我注册了以下内容 receiver registerReceiver this mybroadcast new IntentFilter WifiManager SUP
  • iOS wifi扫描、信号强度

    据我所知 不可能扫描范围内的热点并读取它们的 bssid 和信号强度 这在 iOS 4 上可以通过使用私有 API 实现 但在不越狱的 iOS 5 上则不再可能 即使可能 该应用程序也会在 App Store 上被拒绝 是对的吗 一家拥有室
  • 如何使用C从http下载文件?

    最近几天我试图弄清楚如何从 URL 下载文件 这是我对套接字的第一个挑战 我用它来了解协议 所以我想在没有 cURL 库的情况下只用 C 语言来完成它 我搜索了很多 现在我可以打印页面的源代码 但我认为这与文件不同 我不必只将接收到的数据从
  • NodeJS:TCP套接字服务器仅在第一次返回数据

    我正在尝试在 node js 中编写一个小型中继脚本 用于侦听本地套接字上传入的 TCP 连接 当它收到连接时 将流量转发给第三方 它还必须从该第三方获取任何返回的数据并将其发送回原始本地套接字 我试过类似的代码http delog wor
  • 具有非阻塞或多线程功能的 Ruby Tcp Server 类

    找不到任何可以帮助创建非阻塞 多线程服务器的 gem 或类 哪里可以找到 The Ruby 文档 http ruby doc org core classes Socket html M002091关于套接字有一些很好的例子 使用该页面中的
  • 创建 ip 网络数据包 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我必须使用任何协议手动创建自己的网络
  • PHP 通过 TCP/IP 发送消息

    我尝试通过 TCP IP 从 PHP 网站向 Arduino 发送消息 使用以下代码我可以从 php 网站发送消息 问题是 当第一次调用该网站时 消息不会立即发送 网站刷新几次后 消息就会到达 但逻辑上很多次 就像网站刷新量一样 已经尝试将
  • 确定 TCP Listen() 队列中当前积压的连接数

    有没有办法找出currentLinux 上 TCP 套接字上等待 Accept 的连接尝试次数 我想我可以在每个事件循环上点击 EWOULDBLOCK 之前计算成功的 Accept 数量 但我使用的是隐藏这些细节的高级库 Python Tw
  • C# P2P聊天应用程序设计

    我想创建一个不使用显式服务器的简单聊天应用程序 主要要求是用户可以同时与许多朋友聊天 就像在 Skype 等上一样 我在这里指的不是会议聊天 而是多个单独的聊天窗口 目前 我只想要一个 LAN 消息应用程序 但如果设计能够轻松扩展到 Int
  • 如何检查 Android 中连接的 wifi 网络是否处于活动状态

    如何自动检查android中连接的WiFi网络上的互联网是否处于活动状态 我可以检查 wifi 是否已启用或 wifi 网络是否已连接 但我不确定如何检查互联网是否已连接 这可能吗 private boolean connectionAva
  • 多个客户端如何同时连接到服务器上的一个端口(例如 80)? [复制]

    这个问题在这里已经有答案了 我了解端口工作原理的基础知识 但是 我不明白的是多个客户端如何同时连接到端口 80 我知道每个客户端都有一个唯一的 对于他们的机器 端口 服务器是否从可用端口回复客户端 并简单地声明回复来自 80 这是如何运作的

随机推荐

  • Leetcode-最短路径和+最大子串和(动态规划)

    给定一个包含非负整数的 m x n 网格 xff0c 请找出一条从左上角到右下角的路径 xff0c 使得路径上的数字总和为最小 说明 xff1a 每次只能向下或者向右移动一步 示例 输入 1 3 1 1 5 1 4 2 1 输出 7 解释
  • LeetCode-二进制串和+宝石与石头

    给你两个二进制字符串 xff0c 返回它们的和 xff08 用二进制表示 xff09 输入为 非空 字符串且只包含数字 1 和 0 示例 1 输入 a 61 34 11 34 b 61 34 1 34 输出 34 100 34 示例 2 输
  • JavaSE数组练习-句子翻转+字符替换+打印特殊三角

    1 句子翻转 要求 xff1a 给定字符串如 34 hello i am a student 34 xff0c 对英语句子进行翻转 xff0c 并保持英语单词的顺序不变 xff0c 对标点符号当成字母处理 代码实现 xff1a import
  • 视觉SLAM学习--基础篇(SLAM框架及相机模型)

    一 例子 如上图的小萝卜机器人 xff0c 要使其具有自主运动能力至少需要两个条件 xff1a 1 我在什么地方 xff1f 定位 2 周围环境是什么样 xff1f 建图 因此它既需要知道自身的状态 位置 xff0c 也要了解所在的环境 地
  • Linux各类软件安装配置问题记录

    1 Ubuntu侧边栏和顶部栏消失不见 解决方法 xff1a 鼠标右键或者快捷键打开终端输入命令 dconf reset f org compiz 输入命令 setsid unity 一般到这一步侧边栏就会出现了 xff0c 如果没有出现就
  • 代码模拟确定有限自动机(DFA)执行过程

    一个确定有限自动机 xff08 DFA xff09 M是一个五元组 xff1a M 61 xff08 K xff0c xff0c f xff0c S xff0c Z xff09 其中 K是一个有穷集 xff0c 它的每个元素称为一个状态 x
  • 视觉SLAM-Eigen学习实践

    1 Eigen库介绍 Eigen 是一个 C 43 43 开源线性代数库 它提供了快速的有关矩阵的线性代数运算 xff0c 还包括解方程等功能 可以通过sudo apt install libeigen3 dev命令进行安装 xff0c 也
  • 苹果手机存储空间(或称为内存)满了导致黑屏转圈白苹果

    没刷机 xff0c 啥也没干 xff0c 发现把SIM卡拔了再开机就好了 xff0c 然后赶紧去卸载一些软件腾出空间
  • Arrays的toString方法和deepToString方法比较

    因为打印二维数组时用错了方法 xff0c 一般是用Arrays deppToString或者遍历使用toString xff0c 我直接用Arrays toString去打印了二维数组 xff0c 没有打印出正常二维数组的内容 xff0c
  • JavaSE-类与对象+单例模式

    1 类与对象的引用 概念 xff1a 如果一个变量的类型是类类型 xff0c 而非基本类型 xff0c 那么该变量又叫做引用 new testClass 该操作表示创建了一个testClass对象 xff0c 但没有办法访问这个对象 tes
  • JavaSE-类与对象-ATM自主操作系统实现

    学完类与对象的练习小作业 xff0c 主要有三个类 xff1a 银行卡类包含银行卡的相关信息如卡号 xff0c 密码 xff0c 姓名 xff0c 余额 xff1b 银行类中主要定义了一个银行卡数组 xff0c 用来存储当前用户的银行卡信息
  • JavaSE-基于回溯法用类+栈实现迷宫问题

    目录 1 问题描述 2 自定义类栈 3 结点类 4 操作类 5 函数讲解 6 测试类及结果 1 问题描述 输入迷宫大小 xff0c 以及路径 xff0c 0表示可走路径 xff0c 1表示死路 xff0c 从输入矩阵的左上角起点到右下角终口
  • Leetcode-234,844,19

    234 回文链表 请判断一个链表是否为回文链表 示例 1 输入 1 gt 2 输出 false 示例 2 输入 1 gt 2 gt 2 gt 1 输出 true 思路 xff1a 本想将链表逆置然后进行比较 xff0c 后来想了想用栈去做更
  • JavaSE-回溯+自定义类栈实现Puzzle问题

    Puzzle问题描述 如图有一个一维数组 xff0c 上面的数字表示可以移动的步数 xff0c 每个结点都有左右两个方向可以移动 xff0c 例如第一个结点4 xff0c 它只能往右移动4格到3的位置 xff0c 而3左右都可以移动 xff
  • JavaSE-泛型类、接口、方法、擦除机制

    1 泛型定义 泛型是JavaSE 1 5的新特性 xff0c 本质是参数化类型 xff0c 也就是所操作的数据类型被指定为一个参数 xff0c 将类型由原来的具体的参数类型化 xff0c 类似于方法中的变量参数 xff0c 此时类型也定义成
  • JavaSE-十分钟写个五子棋

    1 设计说明 1 1 简介 其实很久之前就写过五子棋 xff0c 当时拿AWT写的界面 xff0c 后面通过socket通信实现了联机对战操作 xff0c 当时写五子棋写的可费劲了 xff0c 现在又要写一次五子棋 xff0c 不过是简单版
  • JavaSE-类加载过程及反射

    目录 一 类加载过程 1 装载阶段 1 1执行过程 1 2 类加载器 1 3 双亲委派模型 1 4 类加载时机 2 链接阶段 2 1验证阶段 2 2准备阶段 2 3解析阶段 3 初始化阶段 二 反射 1 定义 2 用途 3 步骤 4 代码实
  • STM32F407-基于AD7606进行多路数据采集

    1 原理图 2 管脚定义 2 1 OS2 OS1 OS0 查阅数据手册 这三个管脚组合控制过采样模式 000 表示无过采样 xff0c 最大 200Ksps 采样速率 001 表示 2 倍过采样 xff0c 也就是硬件内部采集 2 个样本求
  • caffeine 与 reactor mono 一起使用产生的缓存错误问题

    现象 与reactor mono一起使用 xff0c 发现get key时 xff0c 返回的一直都是抛出的错误信息 xff0c 没有预期中的如果cache loader 返回null 或 错误时 xff0c caffeine自动剔除key
  • EBYTE E103-W02 WIFI模块配置总结(TCP+UDP+HTTP+云透传)

    目录 1 硬件配置 1 1 原理图 1 2 管脚配置 2 AT指令集 3 AP模式配置 3 1AP介绍 3 2 AP配置TCP通信 3 3 AP配置UDP通信 4 STA模式配置 4 1STA介绍 4 2配置过程 4 3网页配置 5 基于亿