Extending the X_NUCLEO_IDW01M1 to allow configuration of the board as an access point
Dependents: X_NUCLEO_IDW01M1_AP_Test
Fork of X_NUCLEO_IDW01M1 by
Diff: Spwf_API/SpwfSADevice.cpp
- Revision:
- 5:c83ffd44f40a
- Parent:
- 1:bd9db471d47d
- Child:
- 6:e7a3fca2df10
--- a/Spwf_API/SpwfSADevice.cpp Tue Apr 19 07:42:22 2016 +0000 +++ b/Spwf_API/SpwfSADevice.cpp Wed May 04 12:16:20 2016 +0000 @@ -67,7 +67,7 @@ //de-constructor } -int32_t SpwfSADevice::init(void) +int SpwfSADevice::init(void) { WiFi_Status_t status = WiFi_MODULE_SUCCESS; Timer timer; @@ -114,7 +114,7 @@ return 0; } -int32_t SpwfSADevice::connect(char * ssid, char * sec_key, WiFi_Priv_Mode priv_mode) +int SpwfSADevice::connect(char * ssid, char * sec_key, WiFi_Priv_Mode priv_mode) { WiFi_Status_t status = WiFi_MODULE_SUCCESS; Timer timer; @@ -138,7 +138,7 @@ return 0; } -int32_t SpwfSADevice::disconnect() +int SpwfSADevice::disconnect() { WiFi_Status_t status = WiFi_MODULE_SUCCESS; @@ -177,7 +177,7 @@ return _mac_buffer; } -int32_t SpwfSADevice::socket_client_open(uint8_t * hostname, uint32_t port_number, uint8_t * protocol, uint8_t * sock_id) +int SpwfSADevice::socket_client_open(uint8_t * hostname, uint32_t port_number, uint8_t * protocol, uint8_t * sock_id) { WiFi_Status_t status = WiFi_MODULE_SUCCESS; @@ -193,7 +193,7 @@ } -int32_t SpwfSADevice::socket_client_write(uint8_t sock_id, uint16_t DataLength,char * pData) +int SpwfSADevice::socket_client_write(uint8_t sock_id, uint16_t DataLength,char * pData) { WiFi_Status_t status = WiFi_MODULE_SUCCESS; @@ -208,10 +208,10 @@ } -int32_t SpwfSADevice::socket_client_recv(uint8_t sock_id, uint16_t RecvLength,char * pData) +int SpwfSADevice::socket_client_recv(uint8_t sock_id, uint16_t RecvLength,char * pData) { Timer timer; - + //char debug_str[10]; timer.start(); bytes_to_read = RecvLength; @@ -220,13 +220,15 @@ sync_wait_signal = false; recv_buff = (uint8_t*)pData; __enable_irq(); - + while(!sync_wait_signal) { if (timer.read_ms() > _timeout) { //debug_print("\r\n SpwfSADevice:: Timeout!\r\n"); sync_wait_signal = true; //if(bytes_read==0) return -1;//return error if no bytes are read! + //sprintf((char*)debug_str,"bytes_read: %d\r\n",bytes_read); + //debug_print(debug_str); return bytes_read;//return amount of data arrived so far //when do we return NS_ERROR_WOULD_BLOCK?? } @@ -275,6 +277,8 @@ char debug_str[10]; //Data will be copied or returned to user only if there is a pending request //Copy data to pData + //sprintf((char*)debug_str,"sock_id: %d, size: %d\r\n",socket_id, message_size); + if(recv_buff && !sync_wait_signal) { if((bytes_read + message_size)<= bytes_to_read) @@ -322,7 +326,7 @@ } } -int32_t SpwfSADevice::socket_client_close(uint8_t sock_close_id) +int SpwfSADevice::socket_client_close(uint8_t sock_close_id) { WiFi_Status_t status = WiFi_MODULE_SUCCESS;