相信今年参加GeekPwn活动的很多同学都获得了一枚GeekPwn的胸牌,为方便大家对胸牌进行一些调试和破解,这里分享一些关于这枚胸牌的一些信息 :)如发现文章之中有错误之处,欢迎大家斧正!

0×00 主芯片

主芯片:ESP8266 WIFI模块

ESP8266模块也有很多版本,经过一段时间的整理发现安天实验室设计的GeeKPwn胸牌采用的是ESP-12E。如下图:

ESP8266-12E是ESP8266-12的增强版,完善外围电路,增强阻抗匹配,在稳定性与抗干扰能力上有所提升,引脚在ESP-12的基础上新增六个IO口、SPI口引出;

0×02 连接USB-TTL

仔细观察胸卡背面线路,发现胸卡的右中侧有六个小孔,显示屏背面的PCB板子上左右侧均有GND、TX、RX、5V的接口。

通过使用万用表对一些接口和ESP-12E的测量,最终得出胸卡右中侧的六个小孔才是连接USB TTL的正确接口。

J1-三角形  -
---VCC (ESP8266-12E )
---TXD (ESP8266-12E )
---RXD (ESP8266-12E )
---RST (ESP8266-12E )
---GND(ESP8266-12E )
---GPIO (ESP8266-12E )
2和USBTTL RXD相连
3和USBTTL TXD相连
5和USBTTL GND相连
另外一条应该是1或4 连接到USBTTL的VCC或者3.3V 目前还不确定正确地连接姿势

串口调试波特率设置为9600,

[::34.413] OKOK
[::37.016] Usa騏sarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsarUsa騏sa騏sarUsarUsa騏saUsa騏骍sa騏Usa騏Usart-GPU Usart-GPU V4. B0802
[::37.533] SN:GPCB5E2702863D
[::37.533] stdin:: malformed number near '02863D'
[::40.758] >
[::41.532] UUUsa騏Usa騏Usa騏Usa騏Usa騏Usa騏UsaUUsa騏Usa騏Usa騏Usa騏UsaUUsa騏Usa騏Usa騏誙sart-GPU Usart-GPU V4. B0802
[::41.938] SN:GPCB5E2702863D
[::41.958] stdin:: '=' expected near '
[::42.045] >
[::46.399]
[::46.399]
[::46.399] PIC(,,);
[::46.416]
[::46.416] Usart-GPU Usart-GPU V4. B0802
[::46.852] SN:GPCB5E2702863D
[::46.870] stdin:: '=' expected near '-'
[::46.934] > OK
[::49.067] 鮑UsaUsa騏sa騏sa騏sa騏sa騏sa騏U誙誙sa騏U照Usart-GPU Usart-GPU V4. B0802
[::49.486] SN:GPCB5E2702863D
[::49.486] stdin:: '=' expected near ''
[::49.580] >
[::50.114] UsarUsa騏sa騏sa騏sa騏sa騏sa騏saUsa騏sa騏saUsarUsarUsartUsart鞺sart-Usart鞺sart-GUsart-Usart-Usart-GPU Usart-GPU V4. B0802
[::50.333] SN:GPstdin:: '=' expected near '
[::50.386] > CB5E2702863D
[::50.453] >>
[::52.401]
[::52.401]
[::52.401] PIC(,,);
[::52.418]
[::52.418]
[::55.177] Usart-GPU Usart-GPU V4. B0802
[::55.266] SN:GPCB5E2702863D
[::55.277] stdin:: '=' expected near 'Usart'
[::55.367] >
[::58.402]
[::58.402]
[::58.402] PIC(,,);
[::58.419]
[::58.419]
[::00.135] Usart-GPU Usart-GPU V4. B0802
[::00.169] SN:GPCB5E2702863D
[::00.188] stdin:: '=' expected near '-'
[::00.251] > OK
[::04.410]
[::04.410]
[::04.410] PIC(,,);
[::04.421]
[::04.421] OKOK
[::09.831] ?)嶠諨岧諨H锑HTC
[::10.448] NodeMCU 0.9. build powered by Lua 5.1.

在调试的过程中出现一些BUG:输入指令后模块未执行,一直返回ok状态,这里猜测可能是连线不完全正确,也有可能需要通过升级固件来解决。有机友可以解决这一问题可以使用下面的AT指令进行调试。

0X03调试指令

AT指令是串口通讯中常用的一种操作指令。GPS、短信猫等硬件也都是使用AT指令来调试。

重启

输入语句    AT+Reset
返回 done
说明 模块会重新启动,很多设置需要重启后生效

版本号

输入语句    AT+GMR
返回 版本号
说明 返回目前的版本号

ID号

输入语句    AT+ID
返回 返回模块的唯一识别ID
说明 用于识别身份
AP操作指令部分

模式设置

输入语句    AT+MODE?
返回 +MODE:<mode>
done
说明 用于查询目前的工作模式
.Station(客户端模式)
.AP(网络节点模式)
.Station+AP(混合模式) 输入语句 AT+MODE=<mode>
返回 done
说明 配置模块工作模式
.Station(客户端模式)
.AP(网络节点模式)
.Station+AP(混合模式) <mode>取值范围为1-
命令执行后必须重启模块方可生效 举例 AT+MODE=

查询wifi热点

输入语句    AT+ShowAP
返回 <加密类型>,<SSID>,<信号强度>
说明 加密类型范围0-
OPEN
WEP
WPA_PSK
WPA2_PSK
WPA_WPA2_PSK

加入一个wifi网络

输入语句    AT+JoinAP=<SSID>,<PASSWORD>
返回 done or ERROR
说明 加入一个wifi网络
举例 AT+JoinAP=“tp-xxssd”,“”
登陆网络后必须要重启模块
输入语句 AT+JoinAP?
返回 你所在网络的SSID
说明 查看自己所在网络的SSID

退出网络

输入语句    AT+ExtAP
返回 done
说明 退出已登录的wifi网络

参考:百度文库 AT指令参考手册

GeekPwn2015胸卡ESP8266 12E串口调试的更多相关文章

  1. 乐鑫esp8266的串口通讯驱动源文件,nonos和rtos版本

    目录 一.前言: 二.esp8266的串口分布情况: 三.esp8266的串口通讯时候,应该怎么接线: 四.esp8266的NONOS非系统,串口编程: 五.esp8266的RTOS实时系统,串口编程 ...

  2. Modbus通讯协议学习 - 串口调试

    概述 我们在做任何事情之前都需要获取很多 调试步骤: 1:485转换器连接硬件 2:485转换器上的USB接口连接电脑. 3:打开设备管理器 ->查看端口 4:打开串口调试工具,在串口配置的地方 ...

  3. android模拟器使用PC串口调试

    android模拟器使用PC串口调试1.模拟器可以使用PC的串口  启动模拟器并加载PC串口 命令如下:  运行 emulator @模拟器名称 -qemu -serial COM12.查看串口是否被 ...

  4. android 串口调试

    在usb调试过程中,都会选择串口查看log,更希望在串口中输入命令查看相关状态.但是一般情况下串口调试时 进程用户是shell,即使你在adb shell下是root用户. 暴力方法是在 adroid ...

  5. keil中的串口调试:

    keil中串口的虚拟调试信息在通过View-serial windows-#usart1/2/3/4/debug(printf)可以看到.当然也可以通过虚拟串口VSPD+串口调试助手在外部实现,方法如 ...

  6. 自己编写的基于VC++6.0的串口调试软件,并贡献源程序!

    自己编写的基于VC++6.0的串口调试软件源程序! 程序下载链接: 点击打开链接

  7. 基于Modbus的C#串口调试开发

    说明:本文主要研究的是使用C# WinForm开发的串口调试软件(其中包含Modbus协议相关操作).Modbus相关协议可以查阅百度文库等,可参考: <http://wenku.baidu.c ...

  8. 【安富莱专题教程第5期】工程调试利器RTT实时数据传输组件,替代串口调试,速度飞快,可以在中断和多任务中随意调用

    说明:1.串口作为经典的调试方式已经存在好多年了,缺点是需要一个专门的硬件接口.现在有了SEGGER的RTT(已经发布有几年了),无需占用系统额外的硬件资源,而且速度超快,是替代串口调试的绝佳方式.2 ...

  9. 串口调试助手vc源程序及其详细编写过程

    串口调试助手vc源程序及其详细编写过程   目次: 1.建立项目 2.在项目中插入MSComm控件 3.利用ClassWizard定义CMSComm类控制变量 4.在对话框中添加控件 5.添加串口事件 ...

随机推荐

  1. 关于WorkFlow的使用以及例子

    近期做项目,项目需要用到工作流方面的技术,我在这里与大家分享一个workFlow学习的地址,共大家学习. http://www.cnblogs.com/foundation/ 各文档的说明: F资料├ ...

  2. [Nginx] 关键概念解读

        1.正向代理服务器VS反向代理服务器 我们知道,万维网的相互访问必须是外部网络间的相互访问,也就是访问的必须是外网IP或者映射为外网IP的域名.诸如192.168.1.11这样的内网IP是无法 ...

  3. Qt之QSS(白色靓丽)

    简述 Qt助手中有关于各种部件的QSS详细讲解,资源很丰富,请参考:Qt Style Sheets Examples. 白色靓丽 - 一款漂亮的QSS风格. 你可以直接使用,也可以随意转载,但请务必保 ...

  4. jQuery+zTree加载树形结构菜单

    jQuery+zTree加载树形结构菜单 由于项目中需要设计树形菜单功能,经过一番捣腾之后,终于给弄出来了,所以便记下来,也算是学习zTree的一个总结吧. zTree的介绍: 1.zTree 是利用 ...

  5. python获取文件的内容

  6. 循环语句while与for的穷举迭代

    循环语句while while当...的时候 int n=1; while(n<6)//在括号内直接限制逻辑关系 {//需要在大括号内给出改变方式,否则将进入死循环 console.WriteL ...

  7. Objective-C:Block

    Block是OC中一种与其它语言的语法区别较大的一种用法,需要注意: Block也叫代码段,它封装了一段代码,可以在任何时候执行: Block可以作为函数参数或者函数的返回值,而其本身又可以带输入参数 ...

  8. 实验五 cmp传输与加解密

    ---恢复内容开始--- (一)实验内容 1.运行TCP代码,一人服务器,一人客户端 2.下载加解密代码,先编译运行代码,一人加密一人解密. 3.集成代码,一人加密后通过TCP 发送,加密使用DES或 ...

  9. 生JS实现jQuery的ready方法呢?下面是其中之一的做法:

    function ready(fn){ if(document.addEventListener){      //标准浏览器 document.addEventListener('DOMConten ...

  10. Log4J实用配置指南

    转自:http://www.cnblogs.com/licheng/archive/2008/08/23/1274566.html 1         概述 本文档是针对Log4j日志工具的使用指南. ...