right procedure to send data ?
right procedure to send data ?
Postby phil31 » Tue Dec 30, 2014 12:01 am
Dear,
again, my application is a web server embedded in my host CPU.
I manage to configure the ESP8266 as expected.
my AT firmware is 0020000903 and I use the hardware handshake feature.
when I send data, after the AT+CIPSEND=..,.. command, sometime I receive "SEND OK" as expected,
but others time, some strange message as "busy s...", "busy p....", "ERROR", "Fail" and some others !!
Anybody know what are the required action to do for each messages ?...
by example,
- if "busy .." message then wait ?? what !..?
- if "ERROR" message then retry AT+CIPSEND then send again same data ?
what are the differences between "busy s" and "busy p" message ..?
thanks for any help, have nice holidays, regards
Phil
again, my application is a web server embedded in my host CPU.
I manage to configure the ESP8266 as expected.
my AT firmware is 0020000903 and I use the hardware handshake feature.
when I send data, after the AT+CIPSEND=..,.. command, sometime I receive "SEND OK" as expected,
but others time, some strange message as "busy s...", "busy p....", "ERROR", "Fail" and some others !!
Anybody know what are the required action to do for each messages ?...
by example,
- if "busy .." message then wait ?? what !..?
- if "ERROR" message then retry AT+CIPSEND then send again same data ?
what are the differences between "busy s" and "busy p" message ..?
thanks for any help, have nice holidays, regards
Phil
Re: right procedure to send data ?
Postby ESP_Faye » Wed Dec 31, 2014 9:29 am
Hi, there are some documents about how to test AT commands might help you http://bbs.espressif.com/viewtopic.php?f=21&t=93
"busy" means the previous AT command is not finished yet, so we cannot accept the next AT command ..
"busy p" means command is doing; "busy s" means sending data is doing ..
"ERROR" means you may input an incorrect AT command..
Notice that in normal mode every time you want to send some data ,you need a "AT+SEND" command ..
Example in single connection:
AT+CIPSEND=3 // we want to send 3 bytes
>QWE // the 3 bytes data
SEND OK
AT+CIPSEND=6 // then we want to send 6 bytes
>DGFYRW // the 6 bytes data
SEND OK
"busy" means the previous AT command is not finished yet, so we cannot accept the next AT command ..
"busy p" means command is doing; "busy s" means sending data is doing ..
"ERROR" means you may input an incorrect AT command..
Notice that in normal mode every time you want to send some data ,you need a "AT+SEND" command ..
Example in single connection:
AT+CIPSEND=3 // we want to send 3 bytes
>QWE // the 3 bytes data
SEND OK
AT+CIPSEND=6 // then we want to send 6 bytes
>DGFYRW // the 6 bytes data
SEND OK
Re: right procedure to send data ?
Postby phil31 » Wed Dec 31, 2014 7:33 pm
Hello Faye,
thanks for your details, but it's ever not clear in my mind !.. please :
my application use multiple connections only, so help me with such example please.
if "busy s..." : what we need to do ? pooling with "AT" then wait until "OK" by example ?
when "OK", then we can continue to send next packet ?
if "busy p..." ... what to do ?
"ERROR" appear sometime only .. i can't imagine that my host send not the right format of the command !
to send by example 6KB of data :
i check the WIKI, explanation are not clear :
https://github.com/espressif/esp8266_at/wiki/CIPSEND
we need to wait 20ms between each packets .. then what is the purpose of the "busy .." message if it is too simple !?
it is not specified any chronogram or procedure..
thanks for your help
regards
thanks for your details, but it's ever not clear in my mind !.. please :
my application use multiple connections only, so help me with such example please.
if "busy s..." : what we need to do ? pooling with "AT" then wait until "OK" by example ?
when "OK", then we can continue to send next packet ?
if "busy p..." ... what to do ?
"ERROR" appear sometime only .. i can't imagine that my host send not the right format of the command !
to send by example 6KB of data :
Code: Select all
loop 3 times
send "AT+SIPSEND=0, 2048"
wait for ">" which is not \r\n ended
what to do in case of others messages ?
send 2048 bytes
wait for "SEND OK"
what to do in case of others messages ?
end loop
i check the WIKI, explanation are not clear :
https://github.com/espressif/esp8266_at/wiki/CIPSEND
Wrap return “>” after execute command. Enters unvarnished transmission, 20ms interval between each packet, maximum 2048 bytes per packet. When single packet containing “+++” is received, it returns to command mode.
we need to wait 20ms between each packets .. then what is the purpose of the "busy .." message if it is too simple !?
it is not specified any chronogram or procedure..
thanks for your help
regards
Re: right procedure to send data ?
Postby ESP_Faye » Sun Jan 04, 2015 9:57 am
Hi, when it shows "busy" , you can do nothing but wait till "OK"..
We need to finish the previous AT command, then accept the next one.
Thanks for your interest in ESP8266 !
We need to finish the previous AT command, then accept the next one.
Thanks for your interest in ESP8266 !
Who is online
Users browsing this forum: No registered users and 2 guests
Login
Newbies Start Here
Are you new to ESP8266?
Unsure what to do?
Dunno where to start?
Start right here!
Latest SDK
Documentation
Complete listing of the official ESP8266 related documentation release by ESPRESSIF!
Must read here!
- All times are UTC+08:00
- Top
- Delete all board cookies
About Us
Espressif Systems is a fabless semiconductor company providing cutting-edge low power WiFi SoCs and wireless solutions for wireless communications and Internet of Things applications. We are the manufacturer of ESP8266EX.