Quantcast
Channel: Forums - Recent Threads
Viewing all articles
Browse latest Browse all 262198

Compiler/CC3200: TCP Server not accepting connections from Android phone

$
0
0

Part Number:CC3200

Tool/software: TI C/C++ Compiler

Hi all,

I am trying to set up a TCP Server to receive data from my Android phone (client). However, my server is not accepting the socket connection from the Android phone. Any ideas? I have configured the CC3200 as a wireless access point with static ip. I know that my Android application is working perfectly fine, because I tried it with a raspberry pi. Even my TCP socket codes are similar to those I coded in the raspberry pi. I have tried using the SDK examples many times too, but it did not work.

Below are my codes.

int BsdTcpServer(void)
{
    int welcomeSocket;
    int clientSocket;
    struct SlSockAddrIn_t serverAddr;
    struct SlSockAddrIn_t  serverStorage;
    SlSocklen_t addr_size;
    char buffer[4096];
    size_t nread;

    welcomeSocket = sl_Socket(SL_AF_INET,SL_SOCK_STREAM, 0);
    serverAddr.sin_family = SL_AF_INET;
    serverAddr.sin_port = sl_Htons((unsigned short) 9999);
    serverAddr.sin_addr.s_addr = sl_Htonl((unsigned int) IP_ADDR);
    memset(serverAddr.sin_zero, '\0', sizeof(serverAddr.sin_zero));

    UART_PRINT("%d.%d.%d.%d\n\r",
          (serverAddr.sin_addr.s_addr&0xFF),
           ((serverAddr.sin_addr.s_addr&0xFF00)>>8),
           ((serverAddr.sin_addr.s_addr&0xFF0000)>>16),
          ((serverAddr.sin_addr.s_addr&0xFF000000)>>24));

    UART_PRINT("port number: %d\n\r", sl_Htons(serverAddr.sin_port));

    sl_Bind(welcomeSocket, (struct SlSockAddr_t *)&serverAddr, sizeof(serverAddr));

    if(sl_Listen(welcomeSocket, 5)==0){
        UART_PRINT("Listening\n\r");
    }
    else{
        UART_PRINT("Error!\n\r");
    }

    // setting socket option to make the socket as non blocking
    addr_size = sizeof(SlSockAddrIn_t);
    clientSocket = sl_Accept(welcomeSocket, ( struct SlSockAddr_t *)&serverStorage, &addr_size);

    UART_PRINT("Successfully Connected!!!\n\r");
    nread = sl_Recv(clientSocket, buffer, 4096, 0);
    buffer[nread] = '\0';
    UART_PRINT("Data Received: %s\n\r",buffer);


    return SUCCESS;
}

Here is my output screen.


Viewing all articles
Browse latest Browse all 262198

Trending Articles