Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ATHandler] Mbed Os 5.12.4 ATHandler::resp_stop #10854

Closed
huarunlin opened this issue Jun 18, 2019 · 5 comments
Closed

[ATHandler] Mbed Os 5.12.4 ATHandler::resp_stop #10854

huarunlin opened this issue Jun 18, 2019 · 5 comments

Comments

@huarunlin
Copy link

Description

my program works fine in Mbed Os 5.12.2 version, updated to version 5.12.4 is abnormal, and finally found ATHandler :: resp_stop returns a failure, I alone put ATHandler :: resp_stop fall back Mbed Os 5.12.2 version, the program It works fine.

Issue request type

[ ] Question
[ ] Enhancement
[*] Bug
@ciarmcom
Copy link
Member

Internal Jira reference: https://jira.arm.com/browse/MBOCUSTRIA-1297

@AriParkkila
Copy link

@huarunlin I don't find any difference in git diff mbed-os-5.12.2..mbed-os-5.12.4 -- features/cellular/framework/AT/ATHandler.cpp.

Can you share the changes you made in ATHandler :: resp_stop and/or AT debug logs?

@huarunlin
Copy link
Author

@AriParkkila , I found the problem, I am using the QUECTEL M26 module. QUECTEL_M26_CellularStack.cpp: socket_sendto_impl in on "AT + QISEND =" return directive judgment in question, there is no right to call ATHandler :: resp_start, modified to the following code to run properly.

_at.cmd_start("AT+QISEND=");
_at.write_int(socket->id);
_at.write_int(sent_len);
_at.cmd_stop();

_at.resp_start(">");
_at.write_bytes((uint8_t *)data, sent_len);
//_at.resp_start();
_at.resp_start("SEND ", true);
_at.resp_stop();

@AriParkkila
Copy link

@huarunlin Since it works in mbed-os-5.12.2 and AT driver has not changed to mbed-os-5.12.4, it's difficult to see what could have caused this. Can you share your AT spec and firmware version.

@kivaisan
Copy link
Contributor

kivaisan commented Sep 12, 2019

@huarunlin I think driver needs to set proper stop tag as send command stops either to SEND OK, SEND FAIL or ERROR response. Could you test to add CRLF stop tag to response:

_at.resp_start(">");
_at.write_bytes((uint8_t *)data, sent_len);
_at.resp_start();
_at.set_stop_tag("\r\n");
_at.resp_stop();

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants