有無人玩開ESP8266 (超平WIFI SOC MODULE)呢?

本帖最後由 dsscss 於 2015-8-8 19:03 編輯

本身想用佢黎做NETWORK TIME PROTOCOL羅時間,
SEARCH到原來已經有人EXTENT佢官方既AT COMMAND,
可以只用一個AT COMMAND就可以GET到時間...
先發覺原來粒野可以咁多樣化...

1)
DOWNLOAD FLASH會用佢官方既FIRMWARE DOWNLOADER嗎?
BTW. 個介面睇落真係好複雜...
我只係買左ESP-01 MODULE...
點知佢FLASH SIZE, CLOCK之類..
大家都係用官方既FIRMWARE DOWNLOADER?

2) 佢提供一組AT COMMAND SET.
在LINUX / WINDOWS下,
大家會用邊隻軟件黎同佢溝通呢?
我自己用CUTECOM...
因為我發覺自己打AT COMMAND SEND NTP 0個 48BYTE UDP PACKET 羅時間,
佢會出BUSY S,
唔知係TERMINAL SEND野 SET 錯 0野 定係打得唔 0岩....因為要SEND 既係 BYTE, NOT ASCII.

不過整體上粒野咁既價錢,
可以做到咁既 0野 都唔錯....

我有用8266
佢個SIZE 好細, 用12可以有ADC

我就自己SET SERVER 只係NORMAL GET 同POST 拿返黎個SIZE唔大
太大佢個FW 寫得唔好會OVERWRITE 之後ERROR

TOP

本帖最後由 dsscss 於 2015-8-22 00:39 編輯

回覆 1# dsscss

謝謝. SEARCH POST好似得師弟你玩過 (我個陣都係讀CITY)
已成功用NTP GET TIME.

以下為簡介:

現使用MODULE ESP-8266 ESP-01

1) 基本連接
USB to UART TTL module未必夠力推ESP8266,所以最好另接電源.

3.3V <-> ESP8266 VCC
3.3V <-> ESP8266 CH_PD
USB to UART TTL module RX <-> ESP8266 TX
USB to UART TTL module TX <-> ESP8266 RX
GND <-> USB to UART TTL module GND <-> ESP8266 GND

*: UPDATE FIRMARE時需要將GPIO0接至GND, 再重新接上電源。

不是UPDATE FIRMWARE的話,條PIN FLOAT起就可以了。

==========================================

2) 測試

在LINUX環境下,可以用CUTECOM 進行COM PORT通訊

以下用CUTECOM進行測試。

DEVICE: /dev/ttyUSB0
BAUD RATE: 115200
DATA BITS: 8
STOP BITS: 1
PARITY: NONE
HANDSHAKE: UNCHECK BOTH
LINEFEED: DEFAULT SHOULD BE SET TO CR LF (除非你輸入BYTE)

開啟COM PORT 來 LISTEN RESPONSE.
重新接上VCC電源,
一開始應出現字樣 [Ready]

題外話:
為保持一致性,首先UPDATE FIRMWARE吧
新FIRMWARE版本使用115200, 8N1, AT COMMAND LINE END - CRLF
首先DOWNLOAD SDK及FLASH PROGRAMMING TOOLS.


跟據SDK文檔UPDATE做最新FIRMWARE...
ESP8266_UPDATE_AT_FIRMWARE.jpg
2015-8-22 00:39


在CUTECOM內輸入以下指令
AT「ENTER」
出現OK表示連接成功。

輸入AT+CWMODE=1指令
只做STATION MODE . (3=STATION MODE+ SOFTAP MODE)

輸入AT+CWLAP指令
即會LIST出現有的AP (ACCESS POINT).

============================================

3) 實作

透過NTP讀取現有時間

#RESET
AT+RST

#GET FIRMWARE VER
#AT+GMR

#SET TO STATION MODE
AT+CWMODE=1

#LIST AP
AT+CWLAP

#CONNECT ACCESS POINT
AT+CWJAP="SSID","Password"

#MAKE CONNECTION.
#參考自:https://github.com/sandeepmistry ... lient/NTPClient.ino
#其他NTP SERVER未必WORK...
AT+CIPSTART="UDP","129.6.15.28",123

#SEND NTP PACKET
AT+CIPSEND=48

IN CUTECOM, SET TO HEX INPUT.
輸入:
E30006EC0000000000000000314E31340000000000000000000000000000000000000000000000000000000000000000

如無意外, 應該回覆番48個BYTE既PACKET.

謝謝...

TOP

本帖最後由 Joe_Black 於 2015-8-12 11:47 編輯

請問:
1. http://www.at-thinker.com/ << 這個 website 是否瓜咗? 去唔到...
2. ESP-xx << xx 是模塊的編號?還是firmware 編號? 還是 chips 編號的一部分?
3. 我在這裡買了 ESP-01, ESP-07ESP-12 如果只收NTP, ESP-01 已經可以? 是否3款也是更新同一firmware?
謝謝!

TOP

本帖最後由 dsscss 於 2015-8-12 20:27 編輯

回覆 4# Joe_Black

1) 係.我都去唔到.
好似話AT COMMAND本身由 espressif OPEN SOURCE出 0黎..
跟住有D玩家EXTENT佢 既 COMMAND.
同埋文件,線路圖上間公司提供既都比較亂..
所以我通常上GOOGLE同官網搵資料...
http://www.esp8266.com/index.php
http://bbs.espressif.com/

2) ESP-XX 是唔同線路板MODULE既編號,
唔同編號 0黎 講...有D GPIO多D, FLASH大細唔同...

3)係. NTP 0黎 講用ESP-01已夠用...(我本身都只係買左3塊ESP-01)

功能上: ESP-12 > ESP-07 > ESP-01
ESP-12係FCC APPROVED, 有ADC,  多D FLASH, 同多D GPIO腳 (好似有埋PWM?)引出, 距離話好過ESP-01.. (不過我覺得ESP-01個距離都好勁了, SEARCH到既AP數目同用 WIRELESS USB ADAPTER差唔多)

最簡單既方法係DOWNLOAD個AT COMMAN D FLASH落ESP-01 度..
再用MCU SEND AT-COMMAND同ESP-01溝通...

唔用AT COMMAND亦可.
http://benlo.com/esp8266/esp8266QuickStart.html
http://letsmakerobots.com/blog/j ... odemcu-a-controller

因為本身粒野可以任意FLASH D PROGRAM落去...
亦見過係YOUTUBE 有人教FLASH 用一粒ESP-01 做一個WEB SERVER...

有錯請指正...

TOP

太 low level 比較難玩.

可以先玩35蚊人仔的 NodeMCU.  再用 LuaLoader 較易上手!

TOP

ESP8266 得一個 ADC

http://www.instructables.com/id/ ... g-Sensors/?ALLSTEPS

但竟然可以做到: ESP8266 ADC - Multiple Analog Sensors

我唔明佢個circuit, 有無師兄弟幫手解釋吓?

TOP

GPIO (12, 14, 16) 供電俾 Sensors (無源 電阻輸出型),
要測 那組 便 打開那組 對應GPIO 供電,
Diode 負責隔離, 阻止電流流到不供電那組電路。

TOP

謝謝您!

在這個萬物互聯的年代,ESP8266 / NodeMCU 值得推廣。

TOP

arduino IDE 已支援esp8266啦

TOP