相信今年参加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网络