Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of WizFi310Interface_Legacy by
Revision 2:ee7e278fe372, committed 2017-09-17
- Comitter:
- ajeet3004
- Date:
- Sun Sep 17 05:30:43 2017 +0000
- Parent:
- 1:e08ea0ee2788
- Commit message:
- no change
Changed in this revision
diff -r e08ea0ee2788 -r ee7e278fe372 Socket/Socket.cpp --- a/Socket/Socket.cpp Tue May 02 00:31:36 2017 +0000 +++ b/Socket/Socket.cpp Sun Sep 17 05:30:43 2017 +0000 @@ -27,16 +27,18 @@ #include <cstring> Socket::Socket() { + _wizfi310 = NULL; _wizfi310 = WizFi310::getInstance(); if (_wizfi310 == NULL) error("Socket constructor error: no WizFi250 instance available!\r\n"); _blocking = true; - _timeout = 1500; + _timeout = 2500; _server = false; _cid = -1; _port = 0; + printf("Socket done\n"); } void Socket::set_blocking(bool blocking, unsigned int timeout) {
diff -r e08ea0ee2788 -r ee7e278fe372 Socket/TCPSocketConnection.cpp --- a/Socket/TCPSocketConnection.cpp Tue May 02 00:31:36 2017 +0000 +++ b/Socket/TCPSocketConnection.cpp Sun Sep 17 05:30:43 2017 +0000 @@ -34,16 +34,17 @@ _server = false; _cid = _wizfi310->open(WizFi310::PROTO_TCP, get_address(), get_port()); + printf("_cid : %d\n",_cid); if (_cid < 0 ) return -1; return 0; } bool TCPSocketConnection::is_connected(void) -{ +{ printf("_cid: %d\n", _cid); bool _is_connected = _wizfi310->isConnected(_cid); if(!_is_connected) _cid = -1; - + printf(" is_connected: %d\n",_is_connected); return _is_connected; } @@ -141,7 +142,7 @@ if( _wizfi310->cmdSMGMT(cid) ) return; if( !_wizfi310->getRemote(_cid, &ip, &port)) - { + { set_address(ip, port); } }
diff -r e08ea0ee2788 -r ee7e278fe372 Socket/TCPSocketServer.h --- a/Socket/TCPSocketServer.h Tue May 02 00:31:36 2017 +0000 +++ b/Socket/TCPSocketServer.h Sun Sep 17 05:30:43 2017 +0000 @@ -54,6 +54,7 @@ \param connection A TCPSocketConnection instance that will handle the incoming connection. \return 0 on success, -1 on failure. */ + int accept(TCPSocketConnection& connection); };
diff -r e08ea0ee2788 -r ee7e278fe372 WizFi310/WizFi310.h --- a/WizFi310/WizFi310.h Tue May 02 00:31:36 2017 +0000 +++ b/WizFi310/WizFi310.h Sun Sep 17 05:30:43 2017 +0000 @@ -106,6 +106,7 @@ RES_FDNS, RES_SMGMT, RES_WSTATUS, + RES_SCON, }; @@ -143,6 +144,7 @@ int cmdWJOIN (); int cmdWLEAVE (); int cmdWSTATUS (); + int cmdSCON (); int cmdSCON ( const char *openType, const char *socketType, int localPort, const char *dataMode = "0"); int cmdSCON ( const char *openType, const char *socketType, const char *remoteIp, int remotePort, int localPort = 0, const char *dataMode = "0"); int cmdSSEND ( const char *data, int cid, int sendSize, const char *remoteIp = NULL, int remotePort = 0, int Timeout = 2000 ); @@ -327,6 +329,8 @@ //daniel for mqtt char rcvd_mqtt_topic[128]; + + bool test(void); };
diff -r e08ea0ee2788 -r ee7e278fe372 WizFi310/WizFi310_at.cpp --- a/WizFi310/WizFi310_at.cpp Tue May 02 00:31:36 2017 +0000 +++ b/WizFi310/WizFi310_at.cpp Sun Sep 17 05:30:43 2017 +0000 @@ -166,7 +166,7 @@ int WizFi310::cmdWANT(AntennaMode mode) { char cmd[CFG_CMD_SIZE]; - sprintf(cmd, "AT+WANT=%d",mode); + sprintf(cmd, "AT+WANT=%d",mode); return sendCommand(cmd); } @@ -215,7 +215,7 @@ if( cmdWSTATUS() ) return -1; - WIZ_INFO("WizFi310 is successfully join to AP"); + //WIZ_INFO("WizFi310 is successfully join to AP"); return 0; } @@ -347,3 +347,14 @@ resp = sendCommand("AT+SMGMT=?", RES_SMGMT); return resp; } + + +int WizFi310::cmdSCON() +{ + int resp; + + resp = sendCommand("AT+SCON=?", RES_SCON,1500); + printf("Response: %d \n", resp); + return resp; +} +
diff -r e08ea0ee2788 -r ee7e278fe372 WizFi310/WizFi310_sock.cpp --- a/WizFi310/WizFi310_sock.cpp Tue May 02 00:31:36 2017 +0000 +++ b/WizFi310/WizFi310_sock.cpp Sun Sep 17 05:30:43 2017 +0000 @@ -77,6 +77,8 @@ _con[cid].protocol = proto; _con[cid].type = TYPE_CLIENT; _con[cid].func = func; + printf("TYPE : %d\n",_con[cid].type); + return cid; }
diff -r e08ea0ee2788 -r ee7e278fe372 WizFi310Interface.cpp --- a/WizFi310Interface.cpp Tue May 02 00:31:36 2017 +0000 +++ b/WizFi310Interface.cpp Sun Sep 17 05:30:43 2017 +0000 @@ -64,6 +64,8 @@ return cmdWLEAVE(); } + + char* WizFi310Interface::getMACAddress() { return _state.mac; @@ -83,5 +85,45 @@ { return cmdWANT(mode); } +//int WizFi310Interface::test() +//{ +// return cmdWSTATUS(); +//} + +int WizFi310Interface::test_weathermap() +{ + // TCPSocketConnection(); + int errConnect; + char http_cmd1[1000] = ""; + char buffer[2048] = ""; + TCPSocketConnection TCPconnection; + + char *p="api.openweathermap.org"; + int a=TCPconnection.connect(p,80); + while (true) { + if(a!=0) { + printf("\r\ncould not connect to socket : error = %d\r\n", p); + a = TCPconnection.connect(p, 80); + } else { + printf("socket connected\r\n"); + break; + } + } + char http_cmd[] = "GET /data/2.5/weather?q=Seoul,kr&appid=a0ca47dd7f6066404629b3e1ad728981 HTTP/1.0\n\n"; + //char http_cmd[] = "GET /data/2.5/weather?q=London,us&appid=a0ca47dd7f6066404629b3e1ad728981 HTTP/1.0\n\n"; + //char http_cmd[] = "GET /data/2.5/weather?q=Berlin,de&appid=a0ca47dd7f6066404629b3e1ad728981 HTTP/1.0\n\n"; + + sprintf((char *)http_cmd1,http_cmd); + + TCPconnection.send_all(http_cmd, sizeof(http_cmd)); + + TCPconnection.receive_all(buffer, sizeof(buffer)); + printf("%s",buffer); + + + return 0; + } //char* getNetworkMask(); + +
diff -r e08ea0ee2788 -r ee7e278fe372 WizFi310Interface.h --- a/WizFi310Interface.h Tue May 02 00:31:36 2017 +0000 +++ b/WizFi310Interface.h Sun Sep 17 05:30:43 2017 +0000 @@ -27,8 +27,10 @@ #define WIZFI310INTERFACE_H_ #include "WizFi310.h" +#include "TCPSocketConnection.h" -class WizFi310Interface : public WizFi310{ + +class WizFi310Interface : public WizFi310,public TCPSocketConnection{ public: WizFi310Interface(PinName tx, PinName rx, PinName cts, PinName rts, PinName reset, PinName alarm = NC, int baud = 115200); @@ -37,6 +39,7 @@ int init(const char* ip, const char* mask, const char* gateway, const char* name = NULL); int connect(Security sec, const char* ssid, const char* phrase, WiFiMode mode = WM_STATION); int disconnect(); + int test_weathermap(); char* getMACAddress(); char* getIPAddress(); char* getGateway(); @@ -44,7 +47,6 @@ int setAntMode(AntennaMode mode); - };