Host library for controlling a WiConnect enabled Wi-Fi module.

Dependents:   wiconnect-ota_example wiconnect-web_setup_example wiconnect-test-console wiconnect-tcp_server_example ... more

Files at this revision

API Documentation at this revision

Comitter:
dan_ackme
Date:
Mon Feb 23 20:30:18 2015 -0800
Parent:
38:bc2b10351ee3
Child:
40:4b4306f3d829
Commit message:
added httpAcceptWebsocket API

Changed in this revision

api/SocketInterface.h Show annotated file Show diff for this revision Revisions of this file
api/WiconnectTypes.h Show annotated file Show diff for this revision Revisions of this file
api/types/Gpio.h Show annotated file Show diff for this revision Revisions of this file
api/types/Socket/internal/Endpoint.cpp Show annotated file Show diff for this revision Revisions of this file
api/types/Socket/internal/Socket.cpp Show annotated file Show diff for this revision Revisions of this file
api/types/Socket/internal/TCPSocketConnection.cpp Show annotated file Show diff for this revision Revisions of this file
api/types/Socket/internal/TCPSocketServer.cpp Show annotated file Show diff for this revision Revisions of this file
api/types/Socket/internal/UDPSocket.cpp Show annotated file Show diff for this revision Revisions of this file
api/types/Socket/internal/common.cpp Show annotated file Show diff for this revision Revisions of this file
api/types/WiconnectFile.h Show annotated file Show diff for this revision Revisions of this file
api/types/WiconnectSocket.h Show annotated file Show diff for this revision Revisions of this file
doc/mbed/doxygen_objdb_341988.tmp Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/_file_interface_8h_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/_ghm_interface_8h_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/_gpio_8h_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/_socket_interface_8h_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/_wiconnect_file_8h_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/_wiconnect_interface_8h_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/_wiconnect_socket_8h_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/_wiconnect_types_8h_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/classwiconnect_1_1_socket_interface-members.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/classwiconnect_1_1_socket_interface.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/classwiconnect_1_1_socket_interface.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/classwiconnect_1_1_wiconnect-members.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/classwiconnect_1_1_wiconnect.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/classwiconnect_1_1_wiconnect.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/functions.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/functions_func.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/functions_vars.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__core__macro.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__core__misc.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__core__settings.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__core__settings.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__core__types.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__core__types.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__file__types.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__ghm__types.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__socket__http.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__socket__http.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__socket__types.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__api__socket__types.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/group__conversion__util.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/http__get_2example_8cpp_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/http_get_2example_8cpp-example.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/join_2example_8cpp-example.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/join_2example_8cpp_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/namespacewiconnect.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/navtree.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/navtreeindex0.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/navtreeindex1.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/ota_2example_8cpp-example.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/ota_2example_8cpp_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/search/all_10.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/search/all_6.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/search/enumvalues_3.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/search/functions_5.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/search/functions_e.js Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/structwiconnect_1_1_ghm_element.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/structwiconnect_1_1_ghm_element_array.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/structwiconnect_1_1_http_socket_args.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/tcp__client_8py_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/tcp__echo__client_2main_8cpp_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/tcp__server_2example_8cpp_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/tcp_server_2example_8cpp-example.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/udp__echo__client_2main_8cpp_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/web__setup_2example_8cpp_source.html Show annotated file Show diff for this revision Revisions of this file
doc/mbed/html/web_setup_2example_8cpp-example.html Show annotated file Show diff for this revision Revisions of this file
--- a/api/SocketInterface.h	Thu Nov 27 10:27:18 2014 +0000
+++ b/api/SocketInterface.h	Mon Feb 23 20:30:18 2015 -0800
@@ -352,6 +352,17 @@
      */
     WiconnectResult httpGetStatus(WiconnectSocket &socket, uint32_t *statusCodePtr);
 
+    /**
+     * @ingroup api_socket_http
+     *
+     * @brief Wait for next HTTP Server WebSocket to connect
+     *
+     * @param[in] socket Socket to connected websocket
+     * @param[in] timeoutMs Optional, specifiy maximum amount of time in ms to wait for a client
+     * @return Result of method. See @ref WiconnectResult
+     */
+    WiconnectResult httpAcceptWebSocket(WiconnectSocket &socket, uint32_t timeoutMs = WICONNECT_WAIT_FOREVER);
+
 protected:
     SocketInterface(Wiconnect *wiconnect);
     ~SocketInterface();
@@ -361,8 +372,9 @@
 #endif
 
     uint32_t serverConnectedClientList;
+    uint32_t websocketConnectedList;
 
-    WiconnectResult pollForServerClient(uint8_t *handle = NULL, uint16_t *localPort = NULL, uint16_t *remotePort = NULL, uint32_t *ipAddress = NULL);
+    WiconnectResult pollForClient(SocketType type, uint8_t *handle = NULL, uint16_t *localPort = NULL, uint16_t *remotePort = NULL, uint32_t *ipAddress = NULL);
 
     void socketClosedCallback(const WiconnectSocket *socket);
 
--- a/api/WiconnectTypes.h	Thu Nov 27 10:27:18 2014 +0000
+++ b/api/WiconnectTypes.h	Mon Feb 23 20:30:18 2015 -0800
@@ -345,6 +345,7 @@
     SOCKET_TYPE_HTTP,       ///< HTTP Socket type,
     SOCKET_TYPE_UDPS,       ///< UDP Server Socket type
     SOCKET_TYPE_GHM,        ///< goHACK.me message type
+    SOCKET_TYPE_WS,         ///< WebSocket type
 } SocketType;
 
 /**
--- a/api/types/Gpio.h	Thu Nov 27 10:27:18 2014 +0000
+++ b/api/types/Gpio.h	Mon Feb 23 20:30:18 2015 -0800
@@ -43,7 +43,7 @@
 class Gpio WICONNECT_GPIO_BASE_CLASS
 {
 public:
-    Gpio(Pin pin);
+    Gpio(Pin pin, bool isOutput=true);
 
     void write(bool value);
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/api/types/Socket/internal/Endpoint.cpp	Mon Feb 23 20:30:18 2015 -0800
@@ -0,0 +1,86 @@
+/* Copyright (C) 2012 mbed.org, MIT License
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ * and associated documentation files (the "Software"), to deal in the Software without restriction,
+ * including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all copies or
+ * substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+#include "api/types/Socket/Socket.h"
+#include "api/types/Socket/Endpoint.h"
+#include <cstring>
+#include <cstdio>
+
+
+
+/*************************************************************************************************/
+Endpoint::Endpoint()
+{
+    reset_address();
+}
+
+/*************************************************************************************************/
+Endpoint::~Endpoint() {}
+
+/*************************************************************************************************/
+void Endpoint::reset_address(void)
+{
+    std::memset(&_remoteHost, 0, sizeof(struct sockaddr_in));
+    _ipAddress[0] = '\0';
+}
+
+/*************************************************************************************************/
+int Endpoint::set_address(const char* host, const int port)
+{
+    reset_address();
+
+    // IP Address
+    char address[5];
+    char *p_address = address;
+
+    // Dot-decimal notation
+    int result = std::sscanf(host, "%3u.%3u.%3u.%3u",
+        (unsigned int*)&address[0], (unsigned int*)&address[1],
+        (unsigned int*)&address[2], (unsigned int*)&address[3]);
+
+    if (result != 4)
+    {
+        // Resolve address with DNS
+        struct hostent *host_address = gethostbyname(host);
+        if (host_address == NULL)
+            return -1; //Could not resolve address
+        p_address = (char*)host_address->h_addr_list[0];
+    }
+    std::memcpy((char*)&_remoteHost.sin_addr.s_addr, p_address, 4);
+
+    // Address family
+    _remoteHost.sin_family = AF_INET;
+
+    // Set port
+    _remoteHost.sin_port = htons(port);
+
+    return 0;
+}
+
+/*************************************************************************************************/
+char* Endpoint::get_address()
+{
+    if ((_ipAddress[0] == '\0') && (_remoteHost.sin_addr.s_addr != 0))
+            inet_ntoa_r(_remoteHost.sin_addr, _ipAddress, sizeof(_ipAddress));
+    return _ipAddress;
+}
+
+/*************************************************************************************************/
+int   Endpoint::get_port()
+{
+    return ntohs(_remoteHost.sin_port);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/api/types/Socket/internal/Socket.cpp	Mon Feb 23 20:30:18 2015 -0800
@@ -0,0 +1,80 @@
+/**
+ * ACKme WiConnect Host Library is licensed under the BSD licence:
+ *
+ * Copyright (c)2014 ACKme Networks.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
+ * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
+ * OF SUCH DAMAGE.
+ */
+
+#include "Wiconnect.h"
+#include "api/types/Socket/Socket.h"
+
+
+
+
+
+/*************************************************************************************************/
+Socket::Socket() : _blocking(true), _timeout(1500)
+{
+}
+
+/*************************************************************************************************/
+Socket::Socket(int rxBufferLen, void *rxBuffer, int txBufferLen, void *txBuffer) :
+        _blocking(true), _timeout(1500), socket(rxBufferLen, rxBuffer, txBufferLen, txBuffer)
+{
+
+}
+
+/*************************************************************************************************/
+Socket::~Socket()
+{
+    close(true);
+}
+
+/*************************************************************************************************/
+void Socket::set_blocking(bool blocking, unsigned int timeout)
+{
+    _blocking = blocking;
+     _timeout = timeout;
+}
+
+/*************************************************************************************************/
+int Socket::set_option(int level, int optname, const void *optval, socklen_t optlen)
+{
+    return -1;
+}
+
+/*************************************************************************************************/
+int Socket::get_option(int level, int optname, void *optval, socklen_t *optlen)
+{
+    return -1;
+}
+
+/*************************************************************************************************/
+int Socket::close(bool shutdown)
+{
+    return (socket.close() == WICONNECT_SUCCESS) ? 0 : -1;
+}
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/api/types/Socket/internal/TCPSocketConnection.cpp	Mon Feb 23 20:30:18 2015 -0800
@@ -0,0 +1,140 @@
+/**
+ * ACKme WiConnect Host Library is licensed under the BSD licence:
+ *
+ * Copyright (c)2014 ACKme Networks.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
+ * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
+ * OF SUCH DAMAGE.
+ */
+
+#include "Wiconnect.h"
+#include "api/types/Socket/TCPSocketConnection.h"
+
+
+
+/*************************************************************************************************/
+TCPSocketConnection::TCPSocketConnection(int rxBufferLen, void *rxBuffer, int txBufferLen, void *txBuffer)
+: Socket(rxBufferLen, rxBuffer, txBufferLen, txBuffer)
+{
+}
+
+/*************************************************************************************************/
+int TCPSocketConnection::connect(const char* host, const int port)
+{
+    return (Wiconnect::getInstance()->tcpConnect(socket, host, (uint16_t)port) == WICONNECT_SUCCESS) ? 0 : -1;
+}
+
+/*************************************************************************************************/
+bool TCPSocketConnection::is_connected(void)
+{
+    return socket.isConnected();
+}
+
+/*************************************************************************************************/
+// currently there's no way to timeout writing data to WiConnect, so we just have to try and send it all.
+// NOTE: this WILL be fixed in the next version
+int TCPSocketConnection::send(char* data, int length)
+{
+    return send_all(data, length);
+}
+
+/*************************************************************************************************/
+// -1 if unsuccessful, else number of bytes written
+int TCPSocketConnection::send_all(char* data, int length)
+{
+    return (socket.write(data, length, true) == WICONNECT_SUCCESS) ? length : -1;
+}
+
+/*************************************************************************************************/
+int TCPSocketConnection::receive(char* data, int length)
+{
+    uint16_t bytesRead;
+
+    if (!_blocking)
+    {
+        if(socket.getRxBufferSize() == 0 || socket.getRxBufferBytesPending() == 0)
+        {
+            TimeoutTimer timer;
+
+            for(;;)
+            {
+                bool hasData;
+
+                if(socket.poll(&hasData) != WICONNECT_SUCCESS)
+                {
+                    return -1;
+                }
+                else if(hasData)
+                {
+                    break;
+                }
+                else if(timer.timedOut(_timeout))
+                {
+                    return -1;
+                }
+            }
+        }
+    }
+
+    if(length == 1 && socket.getRxBufferSize() > 0)
+    {
+        return (socket.getc((uint8_t*)data) == WICONNECT_SUCCESS) ? 1 : -1;
+    }
+    else
+    {
+        for(;;)
+        {
+            if(socket.read(data, length, &bytesRead) != WICONNECT_SUCCESS)
+            {
+                return -1;
+            }
+            else if(bytesRead > 0)
+            {
+                return bytesRead;
+            }
+        }
+    }
+}
+
+/*************************************************************************************************/
+// -1 if unsuccessful, else number of bytes received
+int TCPSocketConnection::receive_all(char* data, int length)
+{
+    char *ptr = data;
+    int totReadSize = length;
+
+    while(length > 0)
+    {
+        int bytesRead = receive(ptr, length);
+        if(bytesRead == -1)
+        {
+            return -1;
+        }
+        ptr += bytesRead;
+        length -= bytesRead;
+    }
+
+    return totReadSize;
+}
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/api/types/Socket/internal/TCPSocketServer.cpp	Mon Feb 23 20:30:18 2015 -0800
@@ -0,0 +1,57 @@
+/**
+ * ACKme WiConnect Host Library is licensed under the BSD licence:
+ *
+ * Copyright (c)2014 ACKme Networks.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
+ * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
+ * OF SUCH DAMAGE.
+ */
+
+#include "Wiconnect.h"
+#include "api/types/Socket/TCPSocketServer.h"
+
+
+
+/*************************************************************************************************/
+TCPSocketServer::TCPSocketServer()
+{
+}
+
+
+/*************************************************************************************************/
+int TCPSocketServer::bind(int port)
+{
+    return -1;
+}
+
+/*************************************************************************************************/
+int TCPSocketServer::listen(int max)
+{
+    return -1;
+}
+
+/*************************************************************************************************/
+int TCPSocketServer::accept(TCPSocketConnection& connection)
+{
+    return -1;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/api/types/Socket/internal/UDPSocket.cpp	Mon Feb 23 20:30:18 2015 -0800
@@ -0,0 +1,140 @@
+/**
+ * ACKme WiConnect Host Library is licensed under the BSD licence:
+ *
+ * Copyright (c)2014 ACKme Networks.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
+ * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
+ * OF SUCH DAMAGE.
+ */
+
+#include "Wiconnect.h"
+#include "api/types/Socket/UDPSocket.h"
+
+
+
+/*************************************************************************************************/
+UDPSocket::UDPSocket(int rxBufferLen, void *rxBuffer, int txBufferLen, void *txBuffer)
+: Socket(rxBufferLen, rxBuffer, txBufferLen, txBuffer), localPort(SOCKET_ANY_PORT)
+{
+}
+
+/*************************************************************************************************/
+int UDPSocket::init(void)
+{
+    return 0;
+}
+
+/*************************************************************************************************/
+// Server initialization
+int UDPSocket::bind(int port)
+{
+    localPort = port;
+    return 0;
+}
+
+/*************************************************************************************************/
+int UDPSocket::join_multicast_group(const char* address)
+{
+    return -1;
+}
+
+/*************************************************************************************************/
+int UDPSocket::set_broadcasting(bool broadcast)
+{
+    return 0;
+}
+
+/*************************************************************************************************/
+// -1 if unsuccessful, else number of bytes written
+int UDPSocket::sendTo(Endpoint &remote, char *packet, int length)
+{
+    if(!socket.isConnected())
+    {
+        if(Wiconnect::getInstance()->udpConnect(socket, remote.get_address(), remote.get_port(), localPort) != WICONNECT_SUCCESS)
+        {
+            return -1;
+        }
+    }
+    return (socket.write(packet, length, true) == WICONNECT_SUCCESS) ? length : -1;
+}
+
+/*************************************************************************************************/
+// -1 if unsuccessful, else number of bytes received
+int UDPSocket::receiveFrom(Endpoint &remote, char *buffer, int length)
+{
+    uint16_t bytesRead;
+
+    if(!socket.isConnected())
+    {
+        if(Wiconnect::getInstance()->udpConnect(socket, remote._ipAddress, remote.get_port(), localPort) != WICONNECT_SUCCESS)
+        {
+            return -1;
+        }
+    }
+
+    if (!_blocking)
+    {
+        if(socket.getRxBufferSize() == 0 || socket.getRxBufferBytesPending() == 0)
+        {
+            TimeoutTimer timer;
+
+            for(;;)
+            {
+                bool hasData;
+
+                if(socket.poll(&hasData) != WICONNECT_SUCCESS)
+                {
+                    return -1;
+                }
+                else if(hasData)
+                {
+                    break;
+                }
+                else if(timer.timedOut(_timeout))
+                {
+                    return -1;
+                }
+            }
+        }
+    }
+
+    if(length == 1 && socket.getRxBufferSize() > 0)
+    {
+        return (socket.getc((uint8_t*)buffer) == WICONNECT_SUCCESS) ? 1 : -1;
+    }
+    else
+    {
+        for(;;)
+        {
+            if(socket.read(buffer, length, &bytesRead) != WICONNECT_SUCCESS)
+            {
+                return -1;
+            }
+            else if(bytesRead > 0)
+            {
+                return bytesRead;
+            }
+        }
+    }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/api/types/Socket/internal/common.cpp	Mon Feb 23 20:30:18 2015 -0800
@@ -0,0 +1,79 @@
+/*
+ * Copyright 2014, ACKme Networks
+ * All Rights Reserved.
+ *
+ * This is UNPUBLISHED PROPRIETARY SOURCE CODE of ACKme Networks;
+ * the contents of this file may not be disclosed to third parties, copied
+ * or duplicated in any form, in whole or in part, without the prior
+ * written permission of ACKme Networks.
+ */
+
+
+#include "Wiconnect.h"
+#include "api/types/Socket/Socket.h"
+
+
+
+/*************************************************************************************************/
+int gethostbyname_r(const char *name, struct hostent *ret, char *buf, size_t buflen, struct hostent **result, int *h_errnop)
+{
+    return -1;
+}
+
+/*************************************************************************************************/
+struct hostent *gethostbyname(const char *name)
+{
+    static uint8_t buffer[sizeof(struct hostent) + sizeof(void*)*3 + 1*sizeof(uint32_t)];
+    struct hostent *hostPtr = (struct hostent*)buffer;
+    char **ipPtrList = (char**)&buffer[sizeof(struct hostent)];
+    char **aliasPtrList = (char**)&buffer[sizeof(struct hostent) + sizeof(void*)*2];
+    uint32_t *ipPtr = (uint32_t*)&buffer[sizeof(struct hostent) + sizeof(void*)*3];
+
+
+    hostPtr->h_addr_list = ipPtrList;
+    hostPtr->h_aliases = aliasPtrList;
+    hostPtr->h_addrtype = AF_INET;
+    hostPtr->h_length = sizeof(uint32_t);
+    hostPtr->h_name = (char*)name;
+
+    aliasPtrList[0] = NULL;
+    ipPtrList[0] = (char*)ipPtr;
+    ipPtrList[1] = NULL;
+
+    Wiconnect *wiconnect = Wiconnect::getInstance();
+    if(wiconnect->lookup(name, ipPtr) != WICONNECT_SUCCESS)
+    {
+        ipPtrList[0] = NULL;
+    }
+
+    return hostPtr;
+}
+
+/*************************************************************************************************/
+u32_t ipaddr_addr(const char *cp)
+{
+    u32_t ip = 0;
+
+    Wiconnect::strToIp(cp, &ip);
+
+    return ip;
+}
+
+/*************************************************************************************************/
+int ipaddr_aton(const char *cp, ip_addr_t *addr)
+{
+    return Wiconnect::strToIp(cp, &addr->addr) ? 0 : -1;
+}
+
+/*************************************************************************************************/
+// returns ptr to static buffer; not reentrant!
+char *ipaddr_ntoa(const ip_addr_t *addr)
+{
+    return (char*)Wiconnect::ipToStr(addr->addr);
+}
+
+/*************************************************************************************************/
+char *ipaddr_ntoa_r(const ip_addr_t *addr, char *buf, int buflen)
+{
+    return (char*)Wiconnect::ipToStr(addr->addr, buf);
+}
--- a/api/types/WiconnectFile.h	Thu Nov 27 10:27:18 2014 +0000
+++ b/api/types/WiconnectFile.h	Mon Feb 23 20:30:18 2015 -0800
@@ -43,7 +43,8 @@
  */
 class WiconnectFile
 {
-public:
+public:
+#undef getc
     WiconnectFile(int rxBufferLen = 0, void *rxBuffer = NULL);
     ~WiconnectFile();
 
--- a/api/types/WiconnectSocket.h	Thu Nov 27 10:27:18 2014 +0000
+++ b/api/types/WiconnectSocket.h	Mon Feb 23 20:30:18 2015 -0800
@@ -42,7 +42,10 @@
  */
 class WiconnectSocket
 {
-public:
+public:
+#undef putc
+#undef puts
+#undef getc
     WiconnectSocket(int rxBufferLen = 0, void *rxBuffer = NULL, int txBufferLen = 0, void *txBuffer = NULL);
     ~WiconnectSocket();
 
Binary file doc/mbed/doxygen_objdb_341988.tmp has changed
--- a/doc/mbed/html/_file_interface_8h_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/_file_interface_8h_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -163,10 +163,10 @@
 <div class="ttc" id="classwiconnect_1_1_reader_func_html"><div class="ttname"><a href="classwiconnect_1_1_reader_func.html">wiconnect::ReaderFunc</a></div><div class="ttdoc">Generic data reading callback function. </div><div class="ttdef"><b>Definition:</b> <a href="_reader_func_8h_source.html#l00045">ReaderFunc.h:45</a></div></div>
 <div class="ttc" id="group__api__file__methods_html_gaaf2977c691be09aeda102267a6769583"><div class="ttname"><a href="group__api__file__methods.html#gaaf2977c691be09aeda102267a6769583">wiconnect::FileInterface::openFile</a></div><div class="ttdeci">WiconnectResult openFile(WiconnectFile &amp;file, const char *name)</div><div class="ttdoc">Open a file on the Wiconnect WiFi module filesystem for reading. </div></div>
 <div class="ttc" id="group__api__file__methods_html_gafcf335cef42b7b3d0fd9d5af70c6ef7d"><div class="ttname"><a href="group__api__file__methods.html#gafcf335cef42b7b3d0fd9d5af70c6ef7d">wiconnect::FileInterface::deleteFile</a></div><div class="ttdeci">WiconnectResult deleteFile(const char *name)</div><div class="ttdoc">Delete a file for the Wiconnect WiFi module filesystem. </div></div>
-<div class="ttc" id="group__api__file__types_html_ga9919a4237eea2b0d1f27c16d64e62c63"><div class="ttname"><a href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">wiconnect::FileType</a></div><div class="ttdeci">FileType</div><div class="ttdoc">File type type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00400">WiconnectTypes.h:400</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ga9919a4237eea2b0d1f27c16d64e62c63"><div class="ttname"><a href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">wiconnect::FileType</a></div><div class="ttdeci">FileType</div><div class="ttdoc">File type type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00401">WiconnectTypes.h:401</a></div></div>
 <div class="ttc" id="group__api__file__methods_html_ga16fb09105975644879eb09581ce486e5"><div class="ttname"><a href="group__api__file__methods.html#ga16fb09105975644879eb09581ce486e5">wiconnect::FileInterface::createFile</a></div><div class="ttdeci">WiconnectResult createFile(const ReaderFunc &amp;reader, void *user, const char *name, uint32_t size, uint32_t version=0, FileType type=FILE_TYPE_ANY, bool isEssential=false, int32_t checksum=-1)</div><div class="ttdoc">Create a file on the Wiconnect WiFi module filesystem. </div></div>
 <div class="ttc" id="group__conversion__util_html_gad74fbe6faf90d987b31380978f3ea341"><div class="ttname"><a href="group__conversion__util.html#gad74fbe6faf90d987b31380978f3ea341">wiconnect::FileInterface::fileVersionIntToStr</a></div><div class="ttdeci">static const char * fileVersionIntToStr(uint32_t version, bool verbose=true, char *buffer=NULL)</div><div class="ttdoc">Convert file version uint32 to string. </div></div>
-<div class="ttc" id="group__api__file__types_html_gafbe48908f5c190c3b0f272d3016e609e"><div class="ttname"><a href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">wiconnect::FileFlags</a></div><div class="ttdeci">FileFlags</div><div class="ttdoc">File flags type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00381">WiconnectTypes.h:381</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gafbe48908f5c190c3b0f272d3016e609e"><div class="ttname"><a href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">wiconnect::FileFlags</a></div><div class="ttdeci">FileFlags</div><div class="ttdoc">File flags type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00382">WiconnectTypes.h:382</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></div><div class="ttdoc">The root WiConnect library class. This class inheriets all WiConnect functionality. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_interface_8h_source.html#l00078">WiconnectInterface.h:78</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_file_interface_html"><div class="ttname"><a href="classwiconnect_1_1_file_interface.html">wiconnect::FileInterface</a></div><div class="ttdoc">The provides an interface for creating TCP/UDP/TLS/HTTP client sockets. A client socket connects to a...</div><div class="ttdef"><b>Definition:</b> <a href="_file_interface_8h_source.html#l00068">FileInterface.h:68</a></div></div>
 <div class="ttc" id="group__conversion__util_html_ga7503f1876a6e1f5086d8b4bb2c1a653a"><div class="ttname"><a href="group__conversion__util.html#ga7503f1876a6e1f5086d8b4bb2c1a653a">wiconnect::FileInterface::fileFlagsToStr</a></div><div class="ttdeci">static const char * fileFlagsToStr(FileFlags flags, char *buffer=NULL)</div><div class="ttdoc">Convert FileFlags to string. </div></div>
--- a/doc/mbed/html/_ghm_interface_8h_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/_ghm_interface_8h_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -196,17 +196,17 @@
 <div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;}</div>
 <div class="ttc" id="group__api__ghm__activate_html_gad0e0484d1f9a6608475874544f96708b"><div class="ttname"><a href="group__api__ghm__activate.html#gad0e0484d1f9a6608475874544f96708b">wiconnect::GhmInterface::ghmDeactivate</a></div><div class="ttdeci">WiconnectResult ghmDeactivate(const char *userName, const char *password)</div><div class="ttdoc">Deactivate WiFi module with http://goHACK.me. </div></div>
 <div class="ttc" id="group__api__ghm__msg_html_gae69971594793e1a10f11a51277909502"><div class="ttname"><a href="group__api__ghm__msg.html#gae69971594793e1a10f11a51277909502">wiconnect::GhmInterface::ghmListMessages</a></div><div class="ttdeci">WiconnectResult ghmListMessages(GhmMessageList &amp;msgList, uint8_t maxCount=0)</div><div class="ttdoc">List available messages for device on http://goHACK.me. </div></div>
-<div class="ttc" id="group__api__ghm__types_html_gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7"><div class="ttname"><a href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7">wiconnect::GHM_SYNC_ALL</a></div><div class="ttdoc">Push and pull all streams and controls. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00464">WiconnectTypes.h:464</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7"><div class="ttname"><a href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7">wiconnect::GHM_SYNC_ALL</a></div><div class="ttdoc">Push and pull all streams and controls. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00465">WiconnectTypes.h:465</a></div></div>
 <div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
 <div class="ttc" id="group__api__ghm__activate_html_ga8bec70f780ca7de9dce1a15830c179ff"><div class="ttname"><a href="group__api__ghm__activate.html#ga8bec70f780ca7de9dce1a15830c179ff">wiconnect::GhmInterface::ghmIsActivated</a></div><div class="ttdeci">WiconnectResult ghmIsActivated(bool *statusPtr)</div><div class="ttdoc">Return if WiFi module is activated with http://goHACK.me. </div></div>
 <div class="ttc" id="group__api__ghm__msg_html_ga451de9d69f7ecbf38e36056e502b94b0"><div class="ttname"><a href="group__api__ghm__msg.html#ga451de9d69f7ecbf38e36056e502b94b0">wiconnect::GhmInterface::ghmDeleteMessage</a></div><div class="ttdeci">WiconnectResult ghmDeleteMessage(uint8_t listIndex)</div><div class="ttdoc">Delete message from http://goHACK.me. </div></div>
 <div class="ttc" id="group__api__ghm__com_html_ga2f57fc33ad0e71d608b1350d4e3ab223"><div class="ttname"><a href="group__api__ghm__com.html#ga2f57fc33ad0e71d608b1350d4e3ab223">wiconnect::GhmInterface::ghmWrite</a></div><div class="ttdeci">WiconnectResult ghmWrite(const char *elementName, const char *strValue)</div><div class="ttdoc">Write stream or control data to http://goHACK.me. </div></div>
 <div class="ttc" id="group__api__ghm__msg_html_gadc281f497041b26a151c72a0b5d03543"><div class="ttname"><a href="group__api__ghm__msg.html#gadc281f497041b26a151c72a0b5d03543">wiconnect::GhmInterface::ghmPostMessage</a></div><div class="ttdeci">WiconnectResult ghmPostMessage(WiconnectSocket &amp;socket, bool jsonFormatted=false)</div><div class="ttdoc">POST message to http://goHACK.me. </div></div>
-<div class="ttc" id="group__api__ghm__types_html_gaf75750bfef61c73f9e4677e9de663df1"><div class="ttname"><a href="group__api__ghm__types.html#gaf75750bfef61c73f9e4677e9de663df1">wiconnect::GhmMessageGetType</a></div><div class="ttdeci">GhmMessageGetType</div><div class="ttdoc">goHACK.me message GET type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00473">WiconnectTypes.h:473</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_gaf75750bfef61c73f9e4677e9de663df1"><div class="ttname"><a href="group__api__ghm__types.html#gaf75750bfef61c73f9e4677e9de663df1">wiconnect::GhmMessageGetType</a></div><div class="ttdeci">GhmMessageGetType</div><div class="ttdoc">goHACK.me message GET type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00474">WiconnectTypes.h:474</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_ghm_message_list_html"><div class="ttname"><a href="classwiconnect_1_1_ghm_message_list.html">wiconnect::GhmMessageList</a></div><div class="ttdoc">List of goHACK.me messages. </div><div class="ttdef"><b>Definition:</b> <a href="_ghm_message_list_8h_source.html#l00046">GhmMessageList.h:46</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_ghm_interface_html"><div class="ttname"><a href="classwiconnect_1_1_ghm_interface.html">wiconnect::GhmInterface</a></div><div class="ttdoc">The provides an interface for http://goHACK.me. </div><div class="ttdef"><b>Definition:</b> <a href="_ghm_interface_8h_source.html#l00081">GhmInterface.h:81</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127"><div class="ttname"><a href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127">wiconnect::GHM_MSG_GET_DATA_ONLY</a></div><div class="ttdoc">Only GET the message data. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00475">WiconnectTypes.h:475</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_ga44ea17651dcf42ac9816f549beb577ac"><div class="ttname"><a href="group__api__ghm__types.html#ga44ea17651dcf42ac9816f549beb577ac">wiconnect::GhmSyncType</a></div><div class="ttdeci">GhmSyncType</div><div class="ttdoc">goHACK.me sychronization type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00462">WiconnectTypes.h:462</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127"><div class="ttname"><a href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127">wiconnect::GHM_MSG_GET_DATA_ONLY</a></div><div class="ttdoc">Only GET the message data. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00476">WiconnectTypes.h:476</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_ga44ea17651dcf42ac9816f549beb577ac"><div class="ttname"><a href="group__api__ghm__types.html#ga44ea17651dcf42ac9816f549beb577ac">wiconnect::GhmSyncType</a></div><div class="ttdeci">GhmSyncType</div><div class="ttdoc">goHACK.me sychronization type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00463">WiconnectTypes.h:463</a></div></div>
 <div class="ttc" id="group__api__ghm__activate_html_gaa0213731eebd4a14e9099d01ff76beff"><div class="ttname"><a href="group__api__ghm__activate.html#gaa0213731eebd4a14e9099d01ff76beff">wiconnect::GhmInterface::ghmActivate</a></div><div class="ttdeci">WiconnectResult ghmActivate(const char *userName, const char *password, const char *capsFilename=NULL)</div><div class="ttdoc">Activate WiFi module with http://goHACK.me. </div></div>
 <div class="ttc" id="group__api__ghm__activate_html_gaff03ecaa08146e6925820209cdab56bd"><div class="ttname"><a href="group__api__ghm__activate.html#gaff03ecaa08146e6925820209cdab56bd">wiconnect::GhmInterface::ghmDownloadCapabilities</a></div><div class="ttdeci">WiconnectResult ghmDownloadCapabilities(const char *capsNameOrCustomUrl=NULL, uint32_t version=0)</div><div class="ttdoc">Download a device capabilities file to WiFi module&#39;s internal file system. </div></div>
 <div class="ttc" id="group__api__ghm__com_html_ga3fde7b34da992719b41fc52178b73bc2"><div class="ttname"><a href="group__api__ghm__com.html#ga3fde7b34da992719b41fc52178b73bc2">wiconnect::GhmInterface::ghmRead</a></div><div class="ttdeci">WiconnectResult ghmRead(const char *controlName, const char **valueStrPtr)</div><div class="ttdoc">Read control data from http://goHACK.me. </div></div>
@@ -214,7 +214,7 @@
 <div class="ttc" id="group__api__ghm__com_html_ga0aa48506edb22c90be513683672b96c7"><div class="ttname"><a href="group__api__ghm__com.html#ga0aa48506edb22c90be513683672b96c7">wiconnect::GhmInterface::ghmSynchronize</a></div><div class="ttdeci">WiconnectResult ghmSynchronize(GhmSyncType type=GHM_SYNC_ALL)</div><div class="ttdoc">Synchronize WiFi module with http://goHACK.me. </div></div>
 <div class="ttc" id="group__api__ghm__msg_html_gaaa05391432b2ca38bb416c671f57b234"><div class="ttname"><a href="group__api__ghm__msg.html#gaaa05391432b2ca38bb416c671f57b234">wiconnect::GhmInterface::ghmGetMessage</a></div><div class="ttdeci">WiconnectResult ghmGetMessage(WiconnectSocket &amp;socket, GhmMessageGetType getType=GHM_MSG_GET_DATA_ONLY)</div><div class="ttdoc">GET message from http://goHACK.me. </div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></div><div class="ttdoc">The root WiConnect library class. This class inheriets all WiConnect functionality. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_interface_8h_source.html#l00078">WiconnectInterface.h:78</a></div></div>
-<div class="ttc" id="structwiconnect_1_1_ghm_element_array_html"><div class="ttname"><a href="structwiconnect_1_1_ghm_element_array.html">wiconnect::GhmElementArray</a></div><div class="ttdoc">Array of goHACK.me stream or control values. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00452">WiconnectTypes.h:452</a></div></div>
+<div class="ttc" id="structwiconnect_1_1_ghm_element_array_html"><div class="ttname"><a href="structwiconnect_1_1_ghm_element_array.html">wiconnect::GhmElementArray</a></div><div class="ttdoc">Array of goHACK.me stream or control values. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00453">WiconnectTypes.h:453</a></div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
--- a/doc/mbed/html/_gpio_8h_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/_gpio_8h_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -115,7 +115,7 @@
 <div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="keyword">class </span>Gpio WICONNECT_GPIO_BASE_CLASS</div>
 <div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;{</div>
 <div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    Gpio(<a class="code" href="group__api__core__types.html#ga1cf4dfa71da0b0dc3dc707dacf56cc9c">Pin</a> pin);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    Gpio(<a class="code" href="group__api__core__types.html#ga1cf4dfa71da0b0dc3dc707dacf56cc9c">Pin</a> pin, <span class="keywordtype">bool</span> isOutput=<span class="keyword">true</span>);</div>
 <div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
 <div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keywordtype">void</span> write(<span class="keywordtype">bool</span> value);</div>
 <div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
--- a/doc/mbed/html/_socket_interface_8h_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/_socket_interface_8h_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -186,32 +186,36 @@
 <div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;</div>
 <div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> <a class="code" href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">httpGetStatus</a>(<a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> &amp;socket, uint32_t *statusCodePtr);</div>
 <div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;</div>
-<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;    <a class="code" href="classwiconnect_1_1_socket_interface.html">SocketInterface</a>(<a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> *wiconnect);</div>
-<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;    ~<a class="code" href="classwiconnect_1_1_socket_interface.html">SocketInterface</a>();</div>
-<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;</div>
-<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="preprocessor">#ifdef WICONNECT_GPIO_IRQ_ENABLED</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;    SocketIrqHandlerMap irqHandlers;</div>
-<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div>
-<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;    uint32_t serverConnectedClientList;</div>
-<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;</div>
-<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> pollForServerClient(uint8_t *handle = NULL, uint16_t *localPort = NULL, uint16_t *remotePort = NULL, uint32_t *ipAddress = NULL);</div>
-<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;</div>
-<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    <span class="keywordtype">void</span> socketClosedCallback(<span class="keyword">const</span> <a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> *socket);</div>
-<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;</div>
-<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_ghm_interface.html">GhmInterface</a>;</div>
-<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;</div>
-<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<span class="keyword">private</span>:</div>
-<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> *wiconnect;</div>
-<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;};</div>
-<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;</div>
-<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;}</div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> <a class="code" href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">httpAcceptWebSocket</a>(<a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> &amp;socket, uint32_t timeoutMs = <a class="code" href="group__api__core__macro.html#ga580e5f45fee866c845e0d3fd1eb1744a">WICONNECT_WAIT_FOREVER</a>);</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;<span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    <a class="code" href="classwiconnect_1_1_socket_interface.html">SocketInterface</a>(<a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> *wiconnect);</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;    ~<a class="code" href="classwiconnect_1_1_socket_interface.html">SocketInterface</a>();</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;</div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="preprocessor">#ifdef WICONNECT_GPIO_IRQ_ENABLED</span></div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;    SocketIrqHandlerMap irqHandlers;</div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    uint32_t serverConnectedClientList;</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;    uint32_t websocketConnectedList;</div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;</div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> pollForClient(<a class="code" href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">SocketType</a> type, uint8_t *handle = NULL, uint16_t *localPort = NULL, uint16_t *remotePort = NULL, uint32_t *ipAddress = NULL);</div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;</div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    <span class="keywordtype">void</span> socketClosedCallback(<span class="keyword">const</span> <a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> *socket);</div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;</div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_ghm_interface.html">GhmInterface</a>;</div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;</div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;<span class="keyword">private</span>:</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> *wiconnect;</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;};</div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;</div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;}</div>
 <div class="ttc" id="group__api__socket__types_html_ga69dc55558df4c81599c5fb3dff98756d"><div class="ttname"><a href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">wiconnect::SocketType</a></div><div class="ttdeci">SocketType</div><div class="ttdoc">Socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00339">WiconnectTypes.h:339</a></div></div>
 <div class="ttc" id="group__api__socket__http_html_ga1b6a3ebdbd164f0eb683fc335ef4d365"><div class="ttname"><a href="group__api__socket__http.html#ga1b6a3ebdbd164f0eb683fc335ef4d365">wiconnect::SocketInterface::httpPost</a></div><div class="ttdeci">WiconnectResult httpPost(WiconnectSocket &amp;socket, const char *url, const char *contextType, bool openOnly=true, const char *certFilename=NULL)</div><div class="ttdoc">Issue HTTP POST Request. </div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_udp_server_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect_udp_server.html">wiconnect::WiconnectUdpServer</a></div><div class="ttdoc">UDP Server Listening socket. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_udp_server_8h_source.html#l00044">WiconnectUdpServer.h:44</a></div></div>
 <div class="ttc" id="group__api__socket__udp_html_gac61e0445efcfa48fb98b5b2bc0b77119"><div class="ttname"><a href="group__api__socket__udp.html#gac61e0445efcfa48fb98b5b2bc0b77119">wiconnect::SocketInterface::udpConnect</a></div><div class="ttdeci">WiconnectResult udpConnect(WiconnectSocket &amp;socket, const char *host, uint16_t remortPort, uint16_t localPort=SOCKET_ANY_PORT)</div><div class="ttdoc">Connect to remote UDP server. </div></div>
 <div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
+<div class="ttc" id="group__api__socket__http_html_ga856d6866c6fc59ebedccade4822acbc8"><div class="ttname"><a href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">wiconnect::SocketInterface::httpAcceptWebSocket</a></div><div class="ttdeci">WiconnectResult httpAcceptWebSocket(WiconnectSocket &amp;socket, uint32_t timeoutMs=WICONNECT_WAIT_FOREVER)</div><div class="ttdoc">Wait for next HTTP Server WebSocket to connect. </div></div>
 <div class="ttc" id="classwiconnect_1_1_callback_html"><div class="ttname"><a href="classwiconnect_1_1_callback.html">wiconnect::Callback</a></div><div class="ttdoc">Generic callback function. </div><div class="ttdef"><b>Definition:</b> <a href="_callback_8h_source.html#l00049">Callback.h:49</a></div></div>
 <div class="ttc" id="group__api__socket__misc_html_ga3316a2d22f865774960f3af90b54baf0"><div class="ttname"><a href="group__api__socket__misc.html#ga3316a2d22f865774960f3af90b54baf0">wiconnect::SocketInterface::connect</a></div><div class="ttdeci">WiconnectResult connect(WiconnectSocket &amp;socket, SocketType type, const char *host, uint16_t remortPort, uint16_t localPort, const void *args)</div><div class="ttdoc">Connect to remote server. </div></div>
 <div class="ttc" id="group__api__socket__tcp_html_gaddca62644b64e2640abdc1fc5f526559"><div class="ttname"><a href="group__api__socket__tcp.html#gaddca62644b64e2640abdc1fc5f526559">wiconnect::SocketInterface::tcpConnect</a></div><div class="ttdeci">WiconnectResult tcpConnect(WiconnectSocket &amp;socket, const char *host, uint16_t remortPort)</div><div class="ttdoc">Connect to remote TCP server. </div></div>
@@ -232,7 +236,7 @@
 <div class="ttc" id="group__api__socket__tcp_html_ga3d0137ebe308674e75f81457c38679d0"><div class="ttname"><a href="group__api__socket__tcp.html#ga3d0137ebe308674e75f81457c38679d0">wiconnect::SocketInterface::tcpServerStop</a></div><div class="ttdeci">WiconnectResult tcpServerStop(void)</div><div class="ttdoc">Stop TCP server from listening on port. Close all connected clients. </div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></div><div class="ttdoc">The root WiConnect library class. This class inheriets all WiConnect functionality. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_interface_8h_source.html#l00078">WiconnectInterface.h:78</a></div></div>
 <div class="ttc" id="group__api__socket__udp_html_ga067fb0d662d8e27e3f5b561ded29a51a"><div class="ttname"><a href="group__api__socket__udp.html#ga067fb0d662d8e27e3f5b561ded29a51a">wiconnect::SocketInterface::udpListen</a></div><div class="ttdeci">WiconnectResult udpListen(WiconnectUdpServer &amp;udpServer, uint16_t listeningPort)</div><div class="ttdoc">Start a UDP server listening on the given port. </div></div>
-<div class="ttc" id="structwiconnect_1_1_http_socket_args_html"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html">wiconnect::HttpSocketArgs</a></div><div class="ttdoc">Struct for hold HTTP socket configuration. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00365">WiconnectTypes.h:365</a></div></div>
+<div class="ttc" id="structwiconnect_1_1_http_socket_args_html"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html">wiconnect::HttpSocketArgs</a></div><div class="ttdoc">Struct for hold HTTP socket configuration. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00366">WiconnectTypes.h:366</a></div></div>
 <div class="ttc" id="group__api__socket__http_html_gadf59ca0783b89ee32f205e33f1bd5517"><div class="ttname"><a href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">wiconnect::SocketInterface::httpGetStatus</a></div><div class="ttdeci">WiconnectResult httpGetStatus(WiconnectSocket &amp;socket, uint32_t *statusCodePtr)</div><div class="ttdoc">Get the HTTP status code from HTTP request. </div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
--- a/doc/mbed/html/_wiconnect_file_8h_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/_wiconnect_file_8h_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -115,55 +115,56 @@
 <div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classwiconnect_1_1_wiconnect_file.html">   44</a></span>&#160;<span class="keyword">class </span><a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a></div>
 <div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;{</div>
 <div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a>(<span class="keywordtype">int</span> rxBufferLen = 0, <span class="keywordtype">void</span> *rxBuffer = NULL);</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    ~<a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a>();</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* getName() <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    uint32_t getSize() <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <a class="code" href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">FileType</a> getType() <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <a class="code" href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">FileFlags</a> getFlags() <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    uint32_t getVersion() <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* getVersionStr(<span class="keywordtype">char</span> *buffer = NULL) <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> close();</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> read(<span class="keywordtype">void</span>* buffer, uint16_t maxLength, uint16_t *bytesRead);</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> read(uint8_t **bufferPtr = NULL, uint16_t *bytesReadPtr = NULL);</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> getc(uint8_t *c);</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <span class="keywordtype">void</span> clearRxBuffer();</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="keyword">const</span> <a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a>* getNext() <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <span class="keyword">const</span> <a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a>* getPrevious() <span class="keyword">const</span>;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> openForRead(uint8_t handle, <span class="keyword">const</span> <span class="keywordtype">char</span> *filename);</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> initWithListing(<span class="keyword">const</span> <span class="keywordtype">char</span> *typeStr, <span class="keyword">const</span> <span class="keywordtype">char</span> *flagsStr, <span class="keyword">const</span> <span class="keywordtype">char</span>* sizeStr, <span class="keyword">const</span> <span class="keywordtype">char</span> *versionStr, <span class="keyword">const</span> <span class="keywordtype">char</span> *nameStr);</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    uint8_t handle;</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="keywordtype">bool</span> readEnabled;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="keywordtype">char</span> name[<a class="code" href="group__api__core__macro.html#ga8bc3b8d2e7e7c9d10b23e0a15cd4507a">WICONNECT_MAX_FILENAME_SIZE</a>];</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    uint32_t size;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <a class="code" href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">FileType</a> type;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <a class="code" href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">FileFlags</a> flags;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    uint32_t version;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> *wiconnect;</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a> *next;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a> *previous;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    Buffer rxBuffer;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="keywordtype">void</span>* <span class="keyword">operator</span> <span class="keyword">new</span>(<span class="keywordtype">size_t</span> size);</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="keywordtype">void</span> <span class="keyword">operator</span> <span class="keyword">delete</span>(<span class="keywordtype">void</span>*);</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_file_interface.html">FileInterface</a>;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_file_list.html">FileList</a>;</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;};</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;}</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#undef getc</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a>(<span class="keywordtype">int</span> rxBufferLen = 0, <span class="keywordtype">void</span> *rxBuffer = NULL);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    ~<a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a>();</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* getName() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    uint32_t getSize() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <a class="code" href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">FileType</a> getType() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <a class="code" href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">FileFlags</a> getFlags() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    uint32_t getVersion() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* getVersionStr(<span class="keywordtype">char</span> *buffer = NULL) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> close();</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> read(<span class="keywordtype">void</span>* buffer, uint16_t maxLength, uint16_t *bytesRead);</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> read(uint8_t **bufferPtr = NULL, uint16_t *bytesReadPtr = NULL);</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> getc(uint8_t *c);</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="keywordtype">void</span> clearRxBuffer();</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <span class="keyword">const</span> <a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a>* getNext() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="keyword">const</span> <a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a>* getPrevious() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> openForRead(uint8_t handle, <span class="keyword">const</span> <span class="keywordtype">char</span> *filename);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> initWithListing(<span class="keyword">const</span> <span class="keywordtype">char</span> *typeStr, <span class="keyword">const</span> <span class="keywordtype">char</span> *flagsStr, <span class="keyword">const</span> <span class="keywordtype">char</span>* sizeStr, <span class="keyword">const</span> <span class="keywordtype">char</span> *versionStr, <span class="keyword">const</span> <span class="keywordtype">char</span> *nameStr);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    uint8_t handle;</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="keywordtype">bool</span> readEnabled;</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <span class="keywordtype">char</span> name[<a class="code" href="group__api__core__macro.html#ga8bc3b8d2e7e7c9d10b23e0a15cd4507a">WICONNECT_MAX_FILENAME_SIZE</a>];</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    uint32_t size;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <a class="code" href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">FileType</a> type;</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <a class="code" href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">FileFlags</a> flags;</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    uint32_t version;</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> *wiconnect;</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a> *next;</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a> *previous;</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    Buffer rxBuffer;</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="keywordtype">void</span>* <span class="keyword">operator</span> <span class="keyword">new</span>(<span class="keywordtype">size_t</span> size);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <span class="keywordtype">void</span> <span class="keyword">operator</span> <span class="keyword">delete</span>(<span class="keywordtype">void</span>*);</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_file_interface.html">FileInterface</a>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_file_list.html">FileList</a>;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;};</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;}</div>
 <div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_file_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect_file.html">wiconnect::WiconnectFile</a></div><div class="ttdoc">WiConnect WiFi module file object. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_file_8h_source.html#l00044">WiconnectFile.h:44</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_file_list_html"><div class="ttname"><a href="classwiconnect_1_1_file_list.html">wiconnect::FileList</a></div><div class="ttdoc">WiConnect WiFi module file listing. </div><div class="ttdef"><b>Definition:</b> <a href="_file_list_8h_source.html#l00044">FileList.h:44</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ga9919a4237eea2b0d1f27c16d64e62c63"><div class="ttname"><a href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">wiconnect::FileType</a></div><div class="ttdeci">FileType</div><div class="ttdoc">File type type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00400">WiconnectTypes.h:400</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gafbe48908f5c190c3b0f272d3016e609e"><div class="ttname"><a href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">wiconnect::FileFlags</a></div><div class="ttdeci">FileFlags</div><div class="ttdoc">File flags type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00381">WiconnectTypes.h:381</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ga9919a4237eea2b0d1f27c16d64e62c63"><div class="ttname"><a href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">wiconnect::FileType</a></div><div class="ttdeci">FileType</div><div class="ttdoc">File type type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00401">WiconnectTypes.h:401</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gafbe48908f5c190c3b0f272d3016e609e"><div class="ttname"><a href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">wiconnect::FileFlags</a></div><div class="ttdeci">FileFlags</div><div class="ttdoc">File flags type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00382">WiconnectTypes.h:382</a></div></div>
 <div class="ttc" id="group__api__core__macro_html_ga8bc3b8d2e7e7c9d10b23e0a15cd4507a"><div class="ttname"><a href="group__api__core__macro.html#ga8bc3b8d2e7e7c9d10b23e0a15cd4507a">WICONNECT_MAX_FILENAME_SIZE</a></div><div class="ttdeci">#define WICONNECT_MAX_FILENAME_SIZE</div><div class="ttdoc">The maximum Wiconnect Module flash filesystem filename length. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00133">WiconnectTypes.h:133</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></div><div class="ttdoc">The root WiConnect library class. This class inheriets all WiConnect functionality. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_interface_8h_source.html#l00078">WiconnectInterface.h:78</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_file_interface_html"><div class="ttname"><a href="classwiconnect_1_1_file_interface.html">wiconnect::FileInterface</a></div><div class="ttdoc">The provides an interface for creating TCP/UDP/TLS/HTTP client sockets. A client socket connects to a...</div><div class="ttdef"><b>Definition:</b> <a href="_file_interface_8h_source.html#l00068">FileInterface.h:68</a></div></div>
--- a/doc/mbed/html/_wiconnect_interface_8h_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/_wiconnect_interface_8h_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -237,111 +237,112 @@
 <div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;</div>
 <div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> <a class="code" href="group__api__core__settings.html#ga16d5022d1fbd784fe0fd90a56911c5bc">getSetting</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *settingStr, <span class="keywordtype">char</span> *valueBuffer, uint16_t valueBufferLen);</div>
 <div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;</div>
-<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;</div>
-<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#ga851795595a422a14249b7ea9f0038c4c">setBlockingEnabled</a>(<span class="keywordtype">bool</span> blockingEnabled);</div>
-<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;</div>
-<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="group__api__core__settings.html#gaf6115968c49c128717cacd2f06b883ad">getBlockingEnabled</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;</div>
-<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#gacae50138f9388a66496408f9c2bf6a6f">setCommandDefaultTimeout</a>(<a class="code" href="namespacewiconnect.html#a0c27570b2913afc6339821df7c934810">TimerTimeout</a> timeoutMs);</div>
-<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;</div>
-<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;    <a class="code" href="namespacewiconnect.html#a0c27570b2913afc6339821df7c934810">TimerTimeout</a> <a class="code" href="group__api__core__settings.html#gad8d98b8d2610f4ea564bede27e87857e">getCommandDefaultTimeout</a>();</div>
-<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;</div>
-<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#ga180b043ec83c53b5bf6b9ef2b187d08d">setPinToGpioMapper</a>(<a class="code" href="namespacewiconnect.html#aadd4d5e6774e21f382c20b594a644470">PinToGpioMapper</a> mapper);</div>
-<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;</div>
-<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#ga75fb083451ee530a1c19e6a4c1be185e">setDebugLogger</a>(<a class="code" href="classwiconnect_1_1_log_func.html">LogFunc</a> logFunc);</div>
-<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;</div>
-<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#ga273f67fede26be4a3d5d909c5cf8c7e0">setAssertLogger</a>(<a class="code" href="classwiconnect_1_1_log_func.html">LogFunc</a> assertLogFunc);</div>
-<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;</div>
-<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;    <span class="comment">// ------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;</div>
-<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;</div>
-<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;<span class="preprocessor">#ifdef WICONNECT_ASYNC_TIMER_ENABLED</span></div>
-<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;</div>
-<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> <a class="code" href="group__api__core__send__command.html#ga423c201755b4bac9e069d4ab4c241d1a">enqueueCommand</a>(<a class="code" href="classwiconnect_1_1_queued_command.html">QueuedCommand</a> *command, <span class="keyword">const</span> <a class="code" href="classwiconnect_1_1_callback.html">Callback</a> &amp;commandCompleteHandler = <a class="code" href="classwiconnect_1_1_callback.html">Callback</a>());</div>
-<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;</div>
-<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#ga8dc9e906da9d4bcb9f44e111bc709042">setCommandProcessingPeriod</a>(uint32_t periodMs);</div>
-<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;</div>
-<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;</div>
-<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;    <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="group__conversion__util.html#gac96e2d2fca60cba12e7429626f9186be">getWiconnectResultStr</a>(<a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> wiconnectResult);</div>
-<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;</div>
-<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;    <span class="keyword">static</span> uint32_t <a class="code" href="group__conversion__util.html#ga84ad058a41473f81547245976d3474d2">wiconnectVersionToInt</a>(<span class="keywordtype">char</span> *versionStr);</div>
-<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;</div>
-<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;<span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;</div>
-<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;<span class="preprocessor">#ifdef WICONNECT_ENABLE_MALLOC</span></div>
-<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;    <span class="keywordtype">void</span>* (*_malloc)(size_t);</div>
-<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;    void (*_free)(<span class="keywordtype">void</span> *);</div>
-<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_queued_command.html">QueuedCommand</a>;</div>
-<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span>WiconnectSerial;</div>
-<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_scan_result.html">ScanResult</a>;</div>
-<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> <a class="code" href="group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a">saveSettings</a>();</div>
+<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;</div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#ga851795595a422a14249b7ea9f0038c4c">setBlockingEnabled</a>(<span class="keywordtype">bool</span> blockingEnabled);</div>
+<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;</div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="group__api__core__settings.html#gaf6115968c49c128717cacd2f06b883ad">getBlockingEnabled</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;</div>
+<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#gacae50138f9388a66496408f9c2bf6a6f">setCommandDefaultTimeout</a>(<a class="code" href="namespacewiconnect.html#a0c27570b2913afc6339821df7c934810">TimerTimeout</a> timeoutMs);</div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;</div>
+<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;    <a class="code" href="namespacewiconnect.html#a0c27570b2913afc6339821df7c934810">TimerTimeout</a> <a class="code" href="group__api__core__settings.html#gad8d98b8d2610f4ea564bede27e87857e">getCommandDefaultTimeout</a>();</div>
+<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;</div>
+<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#ga180b043ec83c53b5bf6b9ef2b187d08d">setPinToGpioMapper</a>(<a class="code" href="namespacewiconnect.html#aadd4d5e6774e21f382c20b594a644470">PinToGpioMapper</a> mapper);</div>
+<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;</div>
+<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#ga75fb083451ee530a1c19e6a4c1be185e">setDebugLogger</a>(<a class="code" href="classwiconnect_1_1_log_func.html">LogFunc</a> logFunc);</div>
+<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;</div>
+<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#ga273f67fede26be4a3d5d909c5cf8c7e0">setAssertLogger</a>(<a class="code" href="classwiconnect_1_1_log_func.html">LogFunc</a> assertLogFunc);</div>
+<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;</div>
+<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;    <span class="comment">// ------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;</div>
+<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;</div>
+<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;<span class="preprocessor">#ifdef WICONNECT_ASYNC_TIMER_ENABLED</span></div>
+<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;</div>
+<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> <a class="code" href="group__api__core__send__command.html#ga423c201755b4bac9e069d4ab4c241d1a">enqueueCommand</a>(<a class="code" href="classwiconnect_1_1_queued_command.html">QueuedCommand</a> *command, <span class="keyword">const</span> <a class="code" href="classwiconnect_1_1_callback.html">Callback</a> &amp;commandCompleteHandler = <a class="code" href="classwiconnect_1_1_callback.html">Callback</a>());</div>
+<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;</div>
+<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="group__api__core__settings.html#ga8dc9e906da9d4bcb9f44e111bc709042">setCommandProcessingPeriod</a>(uint32_t periodMs);</div>
+<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;</div>
+<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;</div>
+<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;    <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="group__conversion__util.html#gac96e2d2fca60cba12e7429626f9186be">getWiconnectResultStr</a>(<a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> wiconnectResult);</div>
+<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;</div>
+<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;    <span class="keyword">static</span> uint32_t <a class="code" href="group__conversion__util.html#ga84ad058a41473f81547245976d3474d2">wiconnectVersionToInt</a>(<span class="keywordtype">char</span> *versionStr);</div>
+<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;</div>
+<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;<span class="keyword">protected</span>:</div>
 <div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;</div>
-<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;    wiconnect::WiconnectSerial serial;</div>
-<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;    wiconnect::Gpio resetGpio;</div>
-<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;    wiconnect::Gpio wakeGpio;</div>
-<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;</div>
-<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;    <span class="keyword">volatile</span> <span class="keywordtype">bool</span> commandExecuting;</div>
-<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;    <span class="keywordtype">bool</span> initialized;</div>
-<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;    <span class="keywordtype">bool</span> needUpdate;</div>
-<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;    <span class="keywordtype">bool</span> nonBlocking;</div>
-<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;</div>
-<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;    <a class="code" href="namespacewiconnect.html#aadd4d5e6774e21f382c20b594a644470">PinToGpioMapper</a> pinToGpioMapper;</div>
-<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;</div>
-<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;    <span class="keywordtype">char</span> *internalBuffer;</div>
-<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;    <span class="keywordtype">int</span> internalBufferSize;</div>
-<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;    <span class="keywordtype">bool</span> internalBufferAlloc;</div>
-<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;    uint8_t internalProcessingState;</div>
-<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;    <span class="keywordtype">void</span> *currentCommandId;</div>
+<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;<span class="preprocessor">#ifdef WICONNECT_ENABLE_MALLOC</span></div>
+<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;    <span class="keywordtype">void</span>* (*_malloc)(size_t);</div>
+<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;    void (*_free)(<span class="keywordtype">void</span> *);</div>
+<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_queued_command.html">QueuedCommand</a>;</div>
+<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span>WiconnectSerial;</div>
+<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_scan_result.html">ScanResult</a>;</div>
+<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;</div>
+<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;    wiconnect::WiconnectSerial serial;</div>
+<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;    wiconnect::Gpio resetGpio;</div>
+<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;    wiconnect::Gpio wakeGpio;</div>
+<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;</div>
+<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;    <span class="keyword">volatile</span> <span class="keywordtype">bool</span> commandExecuting;</div>
+<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;    <span class="keywordtype">bool</span> initialized;</div>
+<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;    <span class="keywordtype">bool</span> needUpdate;</div>
+<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;    <span class="keywordtype">bool</span> nonBlocking;</div>
 <div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;</div>
-<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;    wiconnect::TimeoutTimer timeoutTimer;</div>
-<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;    <a class="code" href="namespacewiconnect.html#a0c27570b2913afc6339821df7c934810">TimerTimeout</a> defaultTimeoutMs;</div>
-<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;</div>
-<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;    uint8_t commandHeaderBuffer[32];</div>
-<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;    <span class="keywordtype">char</span> commandFormatBuffer[<a class="code" href="group__api__core__macro.html#ga2aa16118029ab13ab41514cb8eb93ba7">WICONNECT_MAX_CMD_SIZE</a>];</div>
-<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;    uint8_t commandContext[96];</div>
-<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;</div>
-<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;    <span class="keywordtype">void</span> prepare(<span class="keywordtype">void</span> *internalBuffer, <span class="keywordtype">int</span> internalBufferSize, <span class="keywordtype">bool</span> nonBlocking);</div>
-<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;    <span class="keywordtype">bool</span> configureModuleDataBus(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> <span class="keyword">inline</span> receiveResponse();</div>
-<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> <span class="keyword">inline</span> receivePacket();</div>
-<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;    <span class="keywordtype">void</span> issueCommandCallback(<a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result);</div>
-<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;</div>
-<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;<span class="preprocessor">#ifdef WICONNECT_ENABLE_DEBUGGING</span></div>
-<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;    <a class="code" href="classwiconnect_1_1_log_func.html">LogFunc</a> debugLogger;</div>
-<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;    <a class="code" href="classwiconnect_1_1_log_func.html">LogFunc</a> assertLogger;</div>
-<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;</div>
-<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;    <span class="keywordtype">void</span> debugLog(<span class="keyword">const</span> <span class="keywordtype">char</span> *msg, ...);</div>
-<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;</div>
-<div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;<span class="preprocessor">#ifdef WICONNECT_ASYNC_TIMER_ENABLED</span></div>
-<div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;    wiconnect::PeriodicTimer commandProcessorTimer;</div>
-<div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;    uint32_t commandProcessingPeriod;</div>
-<div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;    CommandQueue commandQueue;</div>
-<div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;    <a class="code" href="classwiconnect_1_1_queued_command.html">wiconnect::QueuedCommand</a> *currentQueuedCommand;</div>
+<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;    <a class="code" href="namespacewiconnect.html#aadd4d5e6774e21f382c20b594a644470">PinToGpioMapper</a> pinToGpioMapper;</div>
+<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;</div>
+<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;    <span class="keywordtype">char</span> *internalBuffer;</div>
+<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;    <span class="keywordtype">int</span> internalBufferSize;</div>
+<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;    <span class="keywordtype">bool</span> internalBufferAlloc;</div>
+<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;    uint8_t internalProcessingState;</div>
+<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;    <span class="keywordtype">void</span> *currentCommandId;</div>
+<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;</div>
+<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;    wiconnect::TimeoutTimer timeoutTimer;</div>
+<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;    <a class="code" href="namespacewiconnect.html#a0c27570b2913afc6339821df7c934810">TimerTimeout</a> defaultTimeoutMs;</div>
+<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;</div>
+<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;    uint8_t commandHeaderBuffer[32];</div>
+<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;    <span class="keywordtype">char</span> commandFormatBuffer[<a class="code" href="group__api__core__macro.html#ga2aa16118029ab13ab41514cb8eb93ba7">WICONNECT_MAX_CMD_SIZE</a>];</div>
+<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;    uint8_t commandContext[96];</div>
+<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;</div>
+<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;    <span class="keywordtype">void</span> prepare(<span class="keywordtype">void</span> *internalBuffer, <span class="keywordtype">int</span> internalBufferSize, <span class="keywordtype">bool</span> nonBlocking);</div>
+<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;    <span class="keywordtype">bool</span> configureModuleDataBus(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> <span class="keyword">inline</span> receiveResponse();</div>
+<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> <span class="keyword">inline</span> receivePacket();</div>
+<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;    <span class="keywordtype">void</span> issueCommandCallback(<a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result);</div>
+<div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;</div>
+<div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;<span class="preprocessor">#ifdef WICONNECT_ENABLE_DEBUGGING</span></div>
+<div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;    <a class="code" href="classwiconnect_1_1_log_func.html">LogFunc</a> debugLogger;</div>
+<div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;    <a class="code" href="classwiconnect_1_1_log_func.html">LogFunc</a> assertLogger;</div>
 <div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;</div>
-<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;    <span class="keywordtype">void</span> commandProcessingTimerHandler(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;    <span class="keywordtype">void</span> processNextQueuedCommand();</div>
-<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;    <span class="keywordtype">void</span> checkQueuedCommandTimeout();</div>
-<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;</div>
-<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_network_interface.html">NetworkInterface</a>;</div>
-<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_socket_interface.html">SocketInterface</a>;</div>
-<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_file_interface.html">FileInterface</a>;</div>
-<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_ghm_interface.html">GhmInterface</a>;</div>
-<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_ghm_message_list.html">GhmMessageList</a>;</div>
-<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_ghm_message.html">GhmMessage</a>;</div>
-<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_scan_result_list.html">ScanResultList</a>;</div>
-<div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a>;</div>
-<div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a>;</div>
-<div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_wiconnect_udp_server.html">WiconnectUdpServer</a>;</div>
-<div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;};</div>
-<div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;</div>
-<div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;}</div>
-<div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;</div>
-<div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;</div>
-<div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;<span class="preprocessor">#include &quot;sdkTypes.h&quot;</span></div>
-<div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;</div>
+<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;    <span class="keywordtype">void</span> debugLog(<span class="keyword">const</span> <span class="keywordtype">char</span> *msg, ...);</div>
+<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;</div>
+<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;<span class="preprocessor">#ifdef WICONNECT_ASYNC_TIMER_ENABLED</span></div>
+<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;    wiconnect::PeriodicTimer commandProcessorTimer;</div>
+<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;    uint32_t commandProcessingPeriod;</div>
+<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;    CommandQueue commandQueue;</div>
+<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;    <a class="code" href="classwiconnect_1_1_queued_command.html">wiconnect::QueuedCommand</a> *currentQueuedCommand;</div>
+<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;</div>
+<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;    <span class="keywordtype">void</span> commandProcessingTimerHandler(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;    <span class="keywordtype">void</span> processNextQueuedCommand();</div>
+<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;    <span class="keywordtype">void</span> checkQueuedCommandTimeout();</div>
+<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;</div>
+<div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_network_interface.html">NetworkInterface</a>;</div>
+<div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_socket_interface.html">SocketInterface</a>;</div>
+<div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_file_interface.html">FileInterface</a>;</div>
+<div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_ghm_interface.html">GhmInterface</a>;</div>
+<div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_ghm_message_list.html">GhmMessageList</a>;</div>
+<div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_ghm_message.html">GhmMessage</a>;</div>
+<div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_scan_result_list.html">ScanResultList</a>;</div>
+<div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_wiconnect_file.html">WiconnectFile</a>;</div>
+<div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a>;</div>
+<div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_wiconnect_udp_server.html">WiconnectUdpServer</a>;</div>
+<div class="line"><a name="l00812"></a><span class="lineno">  812</span>&#160;};</div>
+<div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;</div>
+<div class="line"><a name="l00814"></a><span class="lineno">  814</span>&#160;}</div>
+<div class="line"><a name="l00815"></a><span class="lineno">  815</span>&#160;</div>
+<div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;</div>
+<div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;<span class="preprocessor">#include &quot;sdkTypes.h&quot;</span></div>
+<div class="line"><a name="l00818"></a><span class="lineno">  818</span>&#160;</div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_html_ace00de05bc1ae1e56a6b708eb58f172e"><div class="ttname"><a href="classwiconnect_1_1_wiconnect.html#ace00de05bc1ae1e56a6b708eb58f172e">wiconnect::Wiconnect::Wiconnect</a></div><div class="ttdeci">Wiconnect(const SerialConfig &amp;serialConfig, Pin reset=NC, Pin wake=NC, bool nonBlocking=false, void *(*malloc_)(size_t)=malloc, void(*free_)(void *)=free)</div><div class="ttdoc">WiConnect class constructor. </div></div>
 <div class="ttc" id="group__conversion__util_html_gac96e2d2fca60cba12e7429626f9186be"><div class="ttname"><a href="group__conversion__util.html#gac96e2d2fca60cba12e7429626f9186be">wiconnect::Wiconnect::getWiconnectResultStr</a></div><div class="ttdeci">static const char * getWiconnectResultStr(WiconnectResult wiconnectResult)</div><div class="ttdoc">Converts a WiconnectResult to string representation. </div></div>
 <div class="ttc" id="classwiconnect_1_1_ghm_message_html"><div class="ttname"><a href="classwiconnect_1_1_ghm_message.html">wiconnect::GhmMessage</a></div><div class="ttdoc">Contains single entry from goHACK.me message listing. </div><div class="ttdef"><b>Definition:</b> <a href="_ghm_message_8h_source.html#l00046">GhmMessage.h:46</a></div></div>
@@ -353,6 +354,7 @@
 <div class="ttc" id="classwiconnect_1_1_network_interface_html"><div class="ttname"><a href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></div><div class="ttdoc">The provides an interface for joining and/or creating a network. It provides other utilities such as ...</div><div class="ttdef"><b>Definition:</b> <a href="_network_interface_8h_source.html#l00055">NetworkInterface.h:55</a></div></div>
 <div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
 <div class="ttc" id="group__api__core__misc_html_gabec1504eb7f486085dad82c4a94310e3"><div class="ttname"><a href="group__api__core__misc.html#gabec1504eb7f486085dad82c4a94310e3">wiconnect::Wiconnect::reset</a></div><div class="ttdeci">WiconnectResult reset()</div><div class="ttdoc">Toggle the WiConnect WiFi module reset signal. </div></div>
+<div class="ttc" id="group__api__core__settings_html_ga7dc2351dfb8a7360b2972ecdf9cdf01a"><div class="ttname"><a href="group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a">wiconnect::Wiconnect::saveSettings</a></div><div class="ttdeci">WiconnectResult saveSettings()</div><div class="ttdoc">Save settings to Non-Volatile Memory. </div></div>
 <div class="ttc" id="group__api__core__misc_html_ga96ac50d85d8ab376755d7d5325de1713"><div class="ttname"><a href="group__api__core__misc.html#ga96ac50d85d8ab376755d7d5325de1713">wiconnect::Wiconnect::flush</a></div><div class="ttdeci">void flush(int delayMs=500)</div><div class="ttdoc">Flush any received data in serial RX buffer and terminate any commands on WiConnect WiFi module...</div></div>
 <div class="ttc" id="classwiconnect_1_1_callback_html"><div class="ttname"><a href="classwiconnect_1_1_callback.html">wiconnect::Callback</a></div><div class="ttdoc">Generic callback function. </div><div class="ttdef"><b>Definition:</b> <a href="_callback_8h_source.html#l00049">Callback.h:49</a></div></div>
 <div class="ttc" id="group__api__core__misc_html_gad552c8f23dd0a0e8844ee1fc4d9358e5"><div class="ttname"><a href="group__api__core__misc.html#gad552c8f23dd0a0e8844ee1fc4d9358e5">wiconnect::Wiconnect::wakeup</a></div><div class="ttdeci">WiconnectResult wakeup()</div><div class="ttdoc">Toggle the WiConnect WiFi moduel wakeup signal. </div></div>
--- a/doc/mbed/html/_wiconnect_socket_8h_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/_wiconnect_socket_8h_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -114,56 +114,59 @@
 <div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classwiconnect_1_1_wiconnect_socket.html">   43</a></span>&#160;<span class="keyword">class </span><a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a></div>
 <div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;{</div>
 <div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a>(<span class="keywordtype">int</span> rxBufferLen = 0, <span class="keywordtype">void</span> *rxBuffer = NULL, <span class="keywordtype">int</span> txBufferLen = 0, <span class="keywordtype">void</span> *txBuffer = NULL);</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    ~<a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a>();</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> close();</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> poll(<span class="keywordtype">bool</span> *rxDataAvailablePtr, <span class="keywordtype">bool</span> autoClose = <span class="keyword">false</span>);</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> write(<span class="keyword">const</span> <span class="keywordtype">void</span>* buffer, <span class="keywordtype">int</span> length, <span class="keywordtype">bool</span> flush = <span class="keyword">true</span>);</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> write(<span class="keywordtype">int</span> length, <span class="keywordtype">bool</span> flush = <span class="keyword">true</span>);</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> read(<span class="keywordtype">void</span>* buffer, uint16_t maxLength, uint16_t *bytesRead);</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> read(uint8_t **bufferPtr = NULL, uint16_t *bytesReadPtr = NULL);</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> putc(uint8_t c, <span class="keywordtype">bool</span> flush = <span class="keyword">false</span>);</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> puts(<span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keywordtype">bool</span> flush = <span class="keyword">true</span>);</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> getc(uint8_t *c);</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> printf(<span class="keyword">const</span> <span class="keywordtype">char</span>* format, ...);</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> flushTxBuffer();</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <span class="keywordtype">void</span> clearRxBuffer();</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    uint8_t *getTxBuffer();</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="keywordtype">int</span> getTxBufferSize();</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <span class="keywordtype">int</span> getTxBufferBytesPending();</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    uint8_t *getRxBuffer();</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <span class="keywordtype">int</span> getRxBufferSize();</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keywordtype">int</span> getRxBufferBytesPending();</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="keywordtype">bool</span> isConnected();</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <a class="code" href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">SocketType</a> getType();</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* getHost();</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    uint16_t getLocalPort();</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    uint16_t getRemotePort();</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    uint8_t getHandle();</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="keywordtype">bool</span> connected;</div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <span class="keywordtype">bool</span> enableAutoClose;</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <a class="code" href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">SocketType</a> type;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    uint8_t handle;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="keywordtype">char</span> host[<a class="code" href="group__api__core__macro.html#ga7c5dcedd35669199b46bb292b3d3b525">WICONNECT_MAX_HOST_SIZE</a>];</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    uint16_t localPort;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    uint16_t remotePort;</div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> *wiconnect;</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    Buffer txBuffer;</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    Buffer rxBuffer;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> init(uint8_t handle, <a class="code" href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">SocketType</a> type, <span class="keyword">const</span> <span class="keywordtype">char</span> *host, uint16_t remotePort, uint16_t localPort);</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_socket_interface.html">SocketInterface</a>;</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_ghm_interface.html">GhmInterface</a>;</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;};</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;}</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#undef putc</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#undef puts</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#undef getc</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a>(<span class="keywordtype">int</span> rxBufferLen = 0, <span class="keywordtype">void</span> *rxBuffer = NULL, <span class="keywordtype">int</span> txBufferLen = 0, <span class="keywordtype">void</span> *txBuffer = NULL);</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    ~<a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a>();</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> close();</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> poll(<span class="keywordtype">bool</span> *rxDataAvailablePtr, <span class="keywordtype">bool</span> autoClose = <span class="keyword">false</span>);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> write(<span class="keyword">const</span> <span class="keywordtype">void</span>* buffer, <span class="keywordtype">int</span> length, <span class="keywordtype">bool</span> flush = <span class="keyword">true</span>);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> write(<span class="keywordtype">int</span> length, <span class="keywordtype">bool</span> flush = <span class="keyword">true</span>);</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> read(<span class="keywordtype">void</span>* buffer, uint16_t maxLength, uint16_t *bytesRead);</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> read(uint8_t **bufferPtr = NULL, uint16_t *bytesReadPtr = NULL);</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> putc(uint8_t c, <span class="keywordtype">bool</span> flush = <span class="keyword">false</span>);</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> puts(<span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keywordtype">bool</span> flush = <span class="keyword">true</span>);</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> getc(uint8_t *c);</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> printf(<span class="keyword">const</span> <span class="keywordtype">char</span>* format, ...);</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> flushTxBuffer();</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="keywordtype">void</span> clearRxBuffer();</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    uint8_t *getTxBuffer();</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <span class="keywordtype">int</span> getTxBufferSize();</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="keywordtype">int</span> getTxBufferBytesPending();</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    uint8_t *getRxBuffer();</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="keywordtype">int</span> getRxBufferSize();</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="keywordtype">int</span> getRxBufferBytesPending();</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="keywordtype">bool</span> isConnected();</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <a class="code" href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">SocketType</a> getType();</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span>* getHost();</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    uint16_t getLocalPort();</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    uint16_t getRemotePort();</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    uint8_t getHandle();</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <span class="keywordtype">bool</span> connected;</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="keywordtype">bool</span> enableAutoClose;</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <a class="code" href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">SocketType</a> type;</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    uint8_t handle;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="keywordtype">char</span> host[<a class="code" href="group__api__core__macro.html#ga7c5dcedd35669199b46bb292b3d3b525">WICONNECT_MAX_HOST_SIZE</a>];</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    uint16_t localPort;</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    uint16_t remotePort;</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> *wiconnect;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    Buffer txBuffer;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    Buffer rxBuffer;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> init(uint8_t handle, <a class="code" href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">SocketType</a> type, <span class="keyword">const</span> <span class="keywordtype">char</span> *host, uint16_t remotePort, uint16_t localPort);</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_socket_interface.html">SocketInterface</a>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classwiconnect_1_1_ghm_interface.html">GhmInterface</a>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;};</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;}</div>
 <div class="ttc" id="group__api__socket__types_html_ga69dc55558df4c81599c5fb3dff98756d"><div class="ttname"><a href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">wiconnect::SocketType</a></div><div class="ttdeci">SocketType</div><div class="ttdoc">Socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00339">WiconnectTypes.h:339</a></div></div>
 <div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_ghm_interface_html"><div class="ttname"><a href="classwiconnect_1_1_ghm_interface.html">wiconnect::GhmInterface</a></div><div class="ttdoc">The provides an interface for http://goHACK.me. </div><div class="ttdef"><b>Definition:</b> <a href="_ghm_interface_8h_source.html#l00081">GhmInterface.h:81</a></div></div>
--- a/doc/mbed/html/_wiconnect_types_8h_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/_wiconnect_types_8h_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -285,162 +285,163 @@
 <div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da3d433f1b569dc48077861cde0e464751">  345</a></span>&#160;    <a class="code" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da3d433f1b569dc48077861cde0e464751">SOCKET_TYPE_HTTP</a>,       </div>
 <div class="line"><a name="l00346"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da77625728d545a400e0eae1483225ff91">  346</a></span>&#160;    <a class="code" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da77625728d545a400e0eae1483225ff91">SOCKET_TYPE_UDPS</a>,       </div>
 <div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f">  347</a></span>&#160;    <a class="code" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f">SOCKET_TYPE_GHM</a>,        </div>
-<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;} <a class="code" href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">SocketType</a>;</div>
-<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;</div>
-<div class="line"><a name="l00354"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#gadc1d6e26d4138c536bd5dce7ed4569d6">  354</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
-<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;{</div>
-<div class="line"><a name="l00356"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6afc257aa28936e9fa8a332995b5449685">  356</a></span>&#160;    <a class="code" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6afc257aa28936e9fa8a332995b5449685">SOCKET_HTTP_GET</a>,        </div>
-<div class="line"><a name="l00357"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6ab271a5cd1775076aeb8c25fc14da12cb">  357</a></span>&#160;    <a class="code" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6ab271a5cd1775076aeb8c25fc14da12cb">SOCKET_HTTP_POST</a>,       </div>
-<div class="line"><a name="l00358"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6a6d256a218aac67dffe66ae6c49a61236">  358</a></span>&#160;    <a class="code" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6a6d256a218aac67dffe66ae6c49a61236">SOCKET_HTTP_HEAD</a>,       </div>
-<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;} <a class="code" href="group__api__socket__types.html#gadc1d6e26d4138c536bd5dce7ed4569d6">HttpSocketType</a>;</div>
-<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;</div>
-<div class="line"><a name="l00365"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_http_socket_args.html">  365</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;{</div>
-<div class="line"><a name="l00367"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_http_socket_args.html#a401fd2b9a75ec8c76d59bd798d36e25b">  367</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structwiconnect_1_1_http_socket_args.html#a401fd2b9a75ec8c76d59bd798d36e25b">contextType</a>;    </div>
-<div class="line"><a name="l00368"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_http_socket_args.html#a6dda2d739bd2c43d1b63d7a526ecf95c">  368</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structwiconnect_1_1_http_socket_args.html#a6dda2d739bd2c43d1b63d7a526ecf95c">certName</a>;       </div>
-<div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_http_socket_args.html#a57564bc3fed87b9ab2d3f4fff3d2dc24">  369</a></span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="structwiconnect_1_1_http_socket_args.html#a57564bc3fed87b9ab2d3f4fff3d2dc24">openOnly</a>;              </div>
-<div class="line"><a name="l00370"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_http_socket_args.html#adffa0b3f63392a28c19aef272c918772">  370</a></span>&#160;    <a class="code" href="group__api__socket__types.html#gadc1d6e26d4138c536bd5dce7ed4569d6">HttpSocketType</a> <a class="code" href="structwiconnect_1_1_http_socket_args.html#adffa0b3f63392a28c19aef272c918772">type</a>;        </div>
-<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;} <a class="code" href="structwiconnect_1_1_http_socket_args.html">HttpSocketArgs</a>;</div>
-<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;</div>
+<div class="line"><a name="l00348"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a">  348</a></span>&#160;    <a class="code" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a">SOCKET_TYPE_WS</a>,         </div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;} <a class="code" href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">SocketType</a>;</div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;</div>
+<div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#gadc1d6e26d4138c536bd5dce7ed4569d6">  355</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;{</div>
+<div class="line"><a name="l00357"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6afc257aa28936e9fa8a332995b5449685">  357</a></span>&#160;    <a class="code" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6afc257aa28936e9fa8a332995b5449685">SOCKET_HTTP_GET</a>,        </div>
+<div class="line"><a name="l00358"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6ab271a5cd1775076aeb8c25fc14da12cb">  358</a></span>&#160;    <a class="code" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6ab271a5cd1775076aeb8c25fc14da12cb">SOCKET_HTTP_POST</a>,       </div>
+<div class="line"><a name="l00359"></a><span class="lineno"><a class="line" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6a6d256a218aac67dffe66ae6c49a61236">  359</a></span>&#160;    <a class="code" href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6a6d256a218aac67dffe66ae6c49a61236">SOCKET_HTTP_HEAD</a>,       </div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;} <a class="code" href="group__api__socket__types.html#gadc1d6e26d4138c536bd5dce7ed4569d6">HttpSocketType</a>;</div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;</div>
+<div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_http_socket_args.html">  366</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct</span></div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;{</div>
+<div class="line"><a name="l00368"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_http_socket_args.html#a401fd2b9a75ec8c76d59bd798d36e25b">  368</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structwiconnect_1_1_http_socket_args.html#a401fd2b9a75ec8c76d59bd798d36e25b">contextType</a>;    </div>
+<div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_http_socket_args.html#a6dda2d739bd2c43d1b63d7a526ecf95c">  369</a></span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structwiconnect_1_1_http_socket_args.html#a6dda2d739bd2c43d1b63d7a526ecf95c">certName</a>;       </div>
+<div class="line"><a name="l00370"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_http_socket_args.html#a57564bc3fed87b9ab2d3f4fff3d2dc24">  370</a></span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="structwiconnect_1_1_http_socket_args.html#a57564bc3fed87b9ab2d3f4fff3d2dc24">openOnly</a>;              </div>
+<div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_http_socket_args.html#adffa0b3f63392a28c19aef272c918772">  371</a></span>&#160;    <a class="code" href="group__api__socket__types.html#gadc1d6e26d4138c536bd5dce7ed4569d6">HttpSocketType</a> <a class="code" href="structwiconnect_1_1_http_socket_args.html#adffa0b3f63392a28c19aef272c918772">type</a>;        </div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;} <a class="code" href="structwiconnect_1_1_http_socket_args.html">HttpSocketArgs</a>;</div>
 <div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;</div>
-<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;<span class="comment">// ----------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="comment">// ----------------------------------------------------------------------------</span></div>
 <div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;</div>
-<div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">  381</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;{</div>
-<div class="line"><a name="l00383"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eac40bade251c1d671283d3ab2515725a6">  383</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eac40bade251c1d671283d3ab2515725a6">FILE_FLAG_NONE</a>          = 0,            </div>
-<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;</div>
-<div class="line"><a name="l00385"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaff56da02ac3626bf5636e0aa6ffff78a">  385</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaff56da02ac3626bf5636e0aa6ffff78a">FILE_FLAG_VALID</a>         = (1 &lt;&lt; 0),     </div>
-<div class="line"><a name="l00386"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea94ddbab88df5f29013d5deb3f3d092c5">  386</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea94ddbab88df5f29013d5deb3f3d092c5">FILE_FLAG_EXECUTABLE</a>    = (1 &lt;&lt; 1),     </div>
-<div class="line"><a name="l00387"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea07f098f34c015d1c81d7592b476312e6">  387</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea07f098f34c015d1c81d7592b476312e6">FILE_FLAG_ENCRYPTED</a>     = (1 &lt;&lt; 2),     </div>
-<div class="line"><a name="l00388"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaad3ddfddf9e28a26df73b689e0898df0">  388</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaad3ddfddf9e28a26df73b689e0898df0">FILE_FLAG_INTERNAL</a>      = (1 &lt;&lt; 3),     </div>
-<div class="line"><a name="l00389"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaffe90e6784ad43acffbf823502a6a7bf">  389</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaffe90e6784ad43acffbf823502a6a7bf">FILE_FLAG_BOOTABLE</a>      = (1 &lt;&lt; 4),     </div>
-<div class="line"><a name="l00390"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea3864357fd0b63b4cd6594d00c2194ca8">  390</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea3864357fd0b63b4cd6594d00c2194ca8">FILE_FLAG_USER</a>          = (1 &lt;&lt; 5),     </div>
-<div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaa74f44cd76d69e9f32d70a2b13c8c4e2">  391</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaa74f44cd76d69e9f32d70a2b13c8c4e2">FILE_FLAG_ESSENTIAL</a>     = (1 &lt;&lt; 6),     </div>
-<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;</div>
-<div class="line"><a name="l00393"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea21f35fd8f0a4e38d91d5d1f5c5cc977f">  393</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea21f35fd8f0a4e38d91d5d1f5c5cc977f">FILE_FLAG_INVALID</a>       = 0xFFFF        </div>
-<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;} <a class="code" href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">FileFlags</a>;</div>
-<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;</div>
-<div class="line"><a name="l00400"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">  400</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
-<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;{</div>
-<div class="line"><a name="l00402"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ac2bf941d4f7f23cabf7c781c5741dc04">  402</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ac2bf941d4f7f23cabf7c781c5741dc04">FILE_TYPE_UPGRADE_APP</a>   = 0x00,         </div>
-<div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ad127cd0d4eeefee993a24b4d5095bfe7">  403</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ad127cd0d4eeefee993a24b4d5095bfe7">FILE_TYPE_WIFI_FW</a>       = 0x01,         </div>
-<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;</div>
-<div class="line"><a name="l00405"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a681a5a935adbd3aefdbb3639c36a4169">  405</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a681a5a935adbd3aefdbb3639c36a4169">FILE_TYPE_REGULAR_APP</a>   = 0x81,         </div>
-<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;</div>
-<div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2271e7ab227bf95699c260a258902eeb">  407</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2271e7ab227bf95699c260a258902eeb">FILE_TYPE_USER_RANGE_START</a> = 150,       </div>
-<div class="line"><a name="l00408"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2958dab5107b78cd1c14400770ab9b4e">  408</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2958dab5107b78cd1c14400770ab9b4e">FILE_TYPE_USER_RANGE_END</a> = 199,         </div>
-<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;</div>
-<div class="line"><a name="l00410"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63aaa4d15bf30361c1026fe15e029e9c3e2">  410</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63aaa4d15bf30361c1026fe15e029e9c3e2">FILE_TYPE_TEMPORY</a>       = 0xF9,         </div>
-<div class="line"><a name="l00411"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a5df6fc01411942aabcf83731d0d02d52">  411</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a5df6fc01411942aabcf83731d0d02d52">FILE_TYPE_GPIO_CONFIG</a>   = 0xFA,         </div>
-<div class="line"><a name="l00412"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a35624c078c19b7b632d832d15c0d1ef0">  412</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a35624c078c19b7b632d832d15c0d1ef0">FILE_TYPE_COMMAND_HELP</a>  = 0xFB,         </div>
-<div class="line"><a name="l00413"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a244c4ea312de84a2f4cabaff386fcffd">  413</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a244c4ea312de84a2f4cabaff386fcffd">FILE_TYPE_SDC_CAPS</a>      = 0xFC,         </div>
-<div class="line"><a name="l00414"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63afd6c376410552b54187a162e2c6fdad2">  414</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63afd6c376410552b54187a162e2c6fdad2">FILE_TYPE_SETUP_SCRIPT</a>  = 0xFD,         </div>
-<div class="line"><a name="l00415"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2508195aa2793d49c5c6a24879b52206">  415</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2508195aa2793d49c5c6a24879b52206">FILE_TYPE_MISC_FIX_LEN</a>  = 0xFE,         </div>
-<div class="line"><a name="l00416"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a077782e07756b6dc93f96e9a0cca5c9e">  416</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a077782e07756b6dc93f96e9a0cca5c9e">FILE_TYPE_UNKNOWN</a>       = 0xFF,         </div>
-<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;    FILE_TYPE_ANY           = <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a077782e07756b6dc93f96e9a0cca5c9e">FILE_TYPE_UNKNOWN</a></div>
-<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;} <a class="code" href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">FileType</a>;</div>
-<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;</div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;</div>
+<div class="line"><a name="l00382"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">  382</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;{</div>
+<div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eac40bade251c1d671283d3ab2515725a6">  384</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eac40bade251c1d671283d3ab2515725a6">FILE_FLAG_NONE</a>          = 0,            </div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;</div>
+<div class="line"><a name="l00386"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaff56da02ac3626bf5636e0aa6ffff78a">  386</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaff56da02ac3626bf5636e0aa6ffff78a">FILE_FLAG_VALID</a>         = (1 &lt;&lt; 0),     </div>
+<div class="line"><a name="l00387"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea94ddbab88df5f29013d5deb3f3d092c5">  387</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea94ddbab88df5f29013d5deb3f3d092c5">FILE_FLAG_EXECUTABLE</a>    = (1 &lt;&lt; 1),     </div>
+<div class="line"><a name="l00388"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea07f098f34c015d1c81d7592b476312e6">  388</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea07f098f34c015d1c81d7592b476312e6">FILE_FLAG_ENCRYPTED</a>     = (1 &lt;&lt; 2),     </div>
+<div class="line"><a name="l00389"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaad3ddfddf9e28a26df73b689e0898df0">  389</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaad3ddfddf9e28a26df73b689e0898df0">FILE_FLAG_INTERNAL</a>      = (1 &lt;&lt; 3),     </div>
+<div class="line"><a name="l00390"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaffe90e6784ad43acffbf823502a6a7bf">  390</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaffe90e6784ad43acffbf823502a6a7bf">FILE_FLAG_BOOTABLE</a>      = (1 &lt;&lt; 4),     </div>
+<div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea3864357fd0b63b4cd6594d00c2194ca8">  391</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea3864357fd0b63b4cd6594d00c2194ca8">FILE_FLAG_USER</a>          = (1 &lt;&lt; 5),     </div>
+<div class="line"><a name="l00392"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaa74f44cd76d69e9f32d70a2b13c8c4e2">  392</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaa74f44cd76d69e9f32d70a2b13c8c4e2">FILE_FLAG_ESSENTIAL</a>     = (1 &lt;&lt; 6),     </div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;</div>
+<div class="line"><a name="l00394"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea21f35fd8f0a4e38d91d5d1f5c5cc977f">  394</a></span>&#160;    <a class="code" href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea21f35fd8f0a4e38d91d5d1f5c5cc977f">FILE_FLAG_INVALID</a>       = 0xFFFF        </div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;} <a class="code" href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">FileFlags</a>;</div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;</div>
+<div class="line"><a name="l00401"></a><span class="lineno"><a class="line" href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">  401</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;{</div>
+<div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ac2bf941d4f7f23cabf7c781c5741dc04">  403</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ac2bf941d4f7f23cabf7c781c5741dc04">FILE_TYPE_UPGRADE_APP</a>   = 0x00,         </div>
+<div class="line"><a name="l00404"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ad127cd0d4eeefee993a24b4d5095bfe7">  404</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ad127cd0d4eeefee993a24b4d5095bfe7">FILE_TYPE_WIFI_FW</a>       = 0x01,         </div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;</div>
+<div class="line"><a name="l00406"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a681a5a935adbd3aefdbb3639c36a4169">  406</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a681a5a935adbd3aefdbb3639c36a4169">FILE_TYPE_REGULAR_APP</a>   = 0x81,         </div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;</div>
+<div class="line"><a name="l00408"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2271e7ab227bf95699c260a258902eeb">  408</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2271e7ab227bf95699c260a258902eeb">FILE_TYPE_USER_RANGE_START</a> = 150,       </div>
+<div class="line"><a name="l00409"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2958dab5107b78cd1c14400770ab9b4e">  409</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2958dab5107b78cd1c14400770ab9b4e">FILE_TYPE_USER_RANGE_END</a> = 199,         </div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;</div>
+<div class="line"><a name="l00411"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63aaa4d15bf30361c1026fe15e029e9c3e2">  411</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63aaa4d15bf30361c1026fe15e029e9c3e2">FILE_TYPE_TEMPORY</a>       = 0xF9,         </div>
+<div class="line"><a name="l00412"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a5df6fc01411942aabcf83731d0d02d52">  412</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a5df6fc01411942aabcf83731d0d02d52">FILE_TYPE_GPIO_CONFIG</a>   = 0xFA,         </div>
+<div class="line"><a name="l00413"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a35624c078c19b7b632d832d15c0d1ef0">  413</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a35624c078c19b7b632d832d15c0d1ef0">FILE_TYPE_COMMAND_HELP</a>  = 0xFB,         </div>
+<div class="line"><a name="l00414"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a244c4ea312de84a2f4cabaff386fcffd">  414</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a244c4ea312de84a2f4cabaff386fcffd">FILE_TYPE_SDC_CAPS</a>      = 0xFC,         </div>
+<div class="line"><a name="l00415"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63afd6c376410552b54187a162e2c6fdad2">  415</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63afd6c376410552b54187a162e2c6fdad2">FILE_TYPE_SETUP_SCRIPT</a>  = 0xFD,         </div>
+<div class="line"><a name="l00416"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2508195aa2793d49c5c6a24879b52206">  416</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2508195aa2793d49c5c6a24879b52206">FILE_TYPE_MISC_FIX_LEN</a>  = 0xFE,         </div>
+<div class="line"><a name="l00417"></a><span class="lineno"><a class="line" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a077782e07756b6dc93f96e9a0cca5c9e">  417</a></span>&#160;    <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a077782e07756b6dc93f96e9a0cca5c9e">FILE_TYPE_UNKNOWN</a>       = 0xFF,         </div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;    FILE_TYPE_ANY           = <a class="code" href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a077782e07756b6dc93f96e9a0cca5c9e">FILE_TYPE_UNKNOWN</a></div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;} <a class="code" href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">FileType</a>;</div>
 <div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;</div>
-<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;<span class="comment">// ----------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;</div>
-<div class="line"><a name="l00427"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#ga4174104f02851ee92e51846877706e67">  427</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
-<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;{</div>
-<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;    GHM_VALUE_INT,</div>
-<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;    GHM_VALUE_STR</div>
-<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;} <a class="code" href="group__api__ghm__types.html#ga4174104f02851ee92e51846877706e67">GhmElementValueType</a>;</div>
-<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;</div>
-<div class="line"><a name="l00437"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_ghm_element.html">  437</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;{</div>
-<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span> *elementName;</div>
-<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;    <a class="code" href="group__api__ghm__types.html#ga4174104f02851ee92e51846877706e67">GhmElementValueType</a> type;</div>
-<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;    <span class="keyword">union</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;    {</div>
-<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;       <span class="keyword">const</span> <span class="keywordtype">char</span> *strValue;</div>
-<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;       uint32_t intValue;</div>
-<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;    } u;</div>
-<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;} <a class="code" href="structwiconnect_1_1_ghm_element.html">GhmElement</a>;</div>
-<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;</div>
-<div class="line"><a name="l00452"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_ghm_element_array.html">  452</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;{</div>
-<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;    uint16_t count;</div>
-<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;    <a class="code" href="structwiconnect_1_1_ghm_element.html">GhmElement</a> elements[1];</div>
-<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;} <a class="code" href="structwiconnect_1_1_ghm_element_array.html">GhmElementArray</a>;</div>
-<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;</div>
-<div class="line"><a name="l00462"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#ga44ea17651dcf42ac9816f549beb577ac">  462</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
-<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;{</div>
-<div class="line"><a name="l00464"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7">  464</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7">GHM_SYNC_ALL</a>,           </div>
-<div class="line"><a name="l00465"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acafcf2af6407845b24a3abac79587243e0">  465</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acafcf2af6407845b24a3abac79587243e0">GHM_SYNC_PUSH_ONLY</a>,     </div>
-<div class="line"><a name="l00466"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acaad5fbcfa42d14a2662bc5a517c108bdd">  466</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acaad5fbcfa42d14a2662bc5a517c108bdd">GHM_SYNC_PULL_ONLY</a>      </div>
-<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;} <a class="code" href="group__api__ghm__types.html#ga44ea17651dcf42ac9816f549beb577ac">GhmSyncType</a>;</div>
-<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;</div>
-<div class="line"><a name="l00473"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#gaf75750bfef61c73f9e4677e9de663df1">  473</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;{</div>
-<div class="line"><a name="l00475"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127">  475</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127">GHM_MSG_GET_DATA_ONLY</a>,  </div>
-<div class="line"><a name="l00476"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a19876ca1d097b96c48a1e8b54ee562d1">  476</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a19876ca1d097b96c48a1e8b54ee562d1">GHM_MSG_GET_BODY</a>,       </div>
-<div class="line"><a name="l00477"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1adcf75ccabf6676b9b8f3050080f4bab7">  477</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1adcf75ccabf6676b9b8f3050080f4bab7">GHM_MSG_GET_ALL</a>         </div>
-<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;} <a class="code" href="group__api__ghm__types.html#gaf75750bfef61c73f9e4677e9de663df1">GhmMessageGetType</a>;</div>
-<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;</div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;</div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;<span class="comment">// ----------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;</div>
+<div class="line"><a name="l00428"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#ga4174104f02851ee92e51846877706e67">  428</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;{</div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;    GHM_VALUE_INT,</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;    GHM_VALUE_STR</div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;} <a class="code" href="group__api__ghm__types.html#ga4174104f02851ee92e51846877706e67">GhmElementValueType</a>;</div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;</div>
+<div class="line"><a name="l00438"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_ghm_element.html">  438</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct</span></div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;{</div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;    <span class="keyword">const</span> <span class="keywordtype">char</span> *elementName;</div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;    <a class="code" href="group__api__ghm__types.html#ga4174104f02851ee92e51846877706e67">GhmElementValueType</a> type;</div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;    <span class="keyword">union</span></div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;    {</div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;       <span class="keyword">const</span> <span class="keywordtype">char</span> *strValue;</div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;       uint32_t intValue;</div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;    } u;</div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;} <a class="code" href="structwiconnect_1_1_ghm_element.html">GhmElement</a>;</div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;</div>
+<div class="line"><a name="l00453"></a><span class="lineno"><a class="line" href="structwiconnect_1_1_ghm_element_array.html">  453</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct</span></div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;{</div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;    uint16_t count;</div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;    <a class="code" href="structwiconnect_1_1_ghm_element.html">GhmElement</a> elements[1];</div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;} <a class="code" href="structwiconnect_1_1_ghm_element_array.html">GhmElementArray</a>;</div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;</div>
+<div class="line"><a name="l00463"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#ga44ea17651dcf42ac9816f549beb577ac">  463</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;{</div>
+<div class="line"><a name="l00465"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7">  465</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7">GHM_SYNC_ALL</a>,           </div>
+<div class="line"><a name="l00466"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acafcf2af6407845b24a3abac79587243e0">  466</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acafcf2af6407845b24a3abac79587243e0">GHM_SYNC_PUSH_ONLY</a>,     </div>
+<div class="line"><a name="l00467"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acaad5fbcfa42d14a2662bc5a517c108bdd">  467</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acaad5fbcfa42d14a2662bc5a517c108bdd">GHM_SYNC_PULL_ONLY</a>      </div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;} <a class="code" href="group__api__ghm__types.html#ga44ea17651dcf42ac9816f549beb577ac">GhmSyncType</a>;</div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;</div>
+<div class="line"><a name="l00474"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#gaf75750bfef61c73f9e4677e9de663df1">  474</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span></div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;{</div>
+<div class="line"><a name="l00476"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127">  476</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127">GHM_MSG_GET_DATA_ONLY</a>,  </div>
+<div class="line"><a name="l00477"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a19876ca1d097b96c48a1e8b54ee562d1">  477</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a19876ca1d097b96c48a1e8b54ee562d1">GHM_MSG_GET_BODY</a>,       </div>
+<div class="line"><a name="l00478"></a><span class="lineno"><a class="line" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1adcf75ccabf6676b9b8f3050080f4bab7">  478</a></span>&#160;    <a class="code" href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1adcf75ccabf6676b9b8f3050080f4bab7">GHM_MSG_GET_ALL</a>         </div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;} <a class="code" href="group__api__ghm__types.html#gaf75750bfef61c73f9e4677e9de663df1">GhmMessageGetType</a>;</div>
 <div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;</div>
 <div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;</div>
-<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;<span class="comment">// ----------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;</div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;</div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;<span class="comment">// ----------------------------------------------------------------------------</span></div>
 <div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;</div>
-<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="comment">// Forward declarations</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;</div>
-<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;<span class="keyword">class </span>Wiconnect;</div>
-<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;<span class="keyword">class </span>TimeoutTimer;</div>
-<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;<span class="keyword">class </span>PeriodicTimer;</div>
-<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;<span class="keyword">class </span>QueuedCommand;</div>
-<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;<span class="keyword">class </span>CommandQueue;</div>
-<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;<span class="keyword">class </span>LogFunc;</div>
-<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;<span class="keyword">class </span>ReaderFunc;</div>
-<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;<span class="keyword">class </span>ReaderFuncCallback;</div>
-<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;<span class="keyword">class </span>Callback;</div>
-<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;<span class="keyword">class </span>ScanResult;</div>
-<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="keyword">class </span>ScanResultList;</div>
-<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="keyword">class </span>WiconnectSocket;</div>
-<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="keyword">class </span>WiconnectSerial;</div>
-<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;<span class="keyword">class </span>WiconnectFile;</div>
-<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;<span class="keyword">class </span>FileList;</div>
-<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;<span class="keyword">class </span>Gpio;</div>
-<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;<span class="keyword">class </span>SocketIrqHandlerMap;</div>
-<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;<span class="keyword">class </span>WiconnectUdpServer;</div>
-<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="keyword">class </span>GhmMessageList;</div>
-<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="keyword">class </span>GhmMessage;</div>
-<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;</div>
-<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;}</div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a2508195aa2793d49c5c6a24879b52206"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2508195aa2793d49c5c6a24879b52206">wiconnect::FILE_TYPE_MISC_FIX_LEN</a></div><div class="ttdoc">Miscellaneous fixed length file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00415">WiconnectTypes.h:415</a></div></div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;</div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="comment">// Forward declarations</span></div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;</div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;<span class="keyword">class </span>Wiconnect;</div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;<span class="keyword">class </span>TimeoutTimer;</div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;<span class="keyword">class </span>PeriodicTimer;</div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;<span class="keyword">class </span>QueuedCommand;</div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;<span class="keyword">class </span>CommandQueue;</div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;<span class="keyword">class </span>LogFunc;</div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;<span class="keyword">class </span>ReaderFunc;</div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;<span class="keyword">class </span>ReaderFuncCallback;</div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;<span class="keyword">class </span>Callback;</div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="keyword">class </span>ScanResult;</div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="keyword">class </span>ScanResultList;</div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="keyword">class </span>WiconnectSocket;</div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;<span class="keyword">class </span>WiconnectSerial;</div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;<span class="keyword">class </span>WiconnectFile;</div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;<span class="keyword">class </span>FileList;</div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;<span class="keyword">class </span>Gpio;</div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;<span class="keyword">class </span>SocketIrqHandlerMap;</div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="keyword">class </span>WiconnectUdpServer;</div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="keyword">class </span>GhmMessageList;</div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;<span class="keyword">class </span>GhmMessage;</div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;</div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;}</div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a2508195aa2793d49c5c6a24879b52206"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2508195aa2793d49c5c6a24879b52206">wiconnect::FILE_TYPE_MISC_FIX_LEN</a></div><div class="ttdoc">Miscellaneous fixed length file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00416">WiconnectTypes.h:416</a></div></div>
 <div class="ttc" id="structwiconnect_1_1_ssid_html_a7dd62e15567d9de9e9191f9aaba6a0a3"><div class="ttname"><a href="structwiconnect_1_1_ssid.html#a7dd62e15567d9de9e9191f9aaba6a0a3">wiconnect::Ssid::len</a></div><div class="ttdeci">uint8_t len</div><div class="ttdoc">The length in bytes of the SSID raw data. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00301">WiconnectTypes.h:301</a></div></div>
 <div class="ttc" id="group__api__socket__types_html_ga69dc55558df4c81599c5fb3dff98756d"><div class="ttname"><a href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">wiconnect::SocketType</a></div><div class="ttdeci">SocketType</div><div class="ttdoc">Socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00339">WiconnectTypes.h:339</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05acfd6d3c1efd03fae8cd443bc01bca8d6"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05acfd6d3c1efd03fae8cd443bc01bca8d6">wiconnect::WICONNECT_ERROR</a></div><div class="ttdoc">Generic error. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00175">WiconnectTypes.h:175</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gga5f6f5c916a5dd1676f98da7fa511451dabb8da6425a24810668eade3488113957"><div class="ttname"><a href="group__api__network__types.html#gga5f6f5c916a5dd1676f98da7fa511451dabb8da6425a24810668eade3488113957">wiconnect::NETWORK_JOIN_RESULT_BAD_SECURITY</a></div><div class="ttdoc">The specified security type is not supported by the network. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00258">WiconnectTypes.h:258</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ggab448e57fc1a5e21cbba0283fd1a35d99a6d6f2fd76cab833e55bc398541c52b46"><div class="ttname"><a href="group__api__network__types.html#ggab448e57fc1a5e21cbba0283fd1a35d99a6d6f2fd76cab833e55bc398541c52b46">wiconnect::NETWORK_STATUS_UP</a></div><div class="ttdoc">Conntected to network and have IP address. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00243">WiconnectTypes.h:243</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_gga44ea17651dcf42ac9816f549beb577acaad5fbcfa42d14a2662bc5a517c108bdd"><div class="ttname"><a href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acaad5fbcfa42d14a2662bc5a517c108bdd">wiconnect::GHM_SYNC_PULL_ONLY</a></div><div class="ttdoc">Only pull controls from remote server. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00466">WiconnectTypes.h:466</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_gga44ea17651dcf42ac9816f549beb577acafcf2af6407845b24a3abac79587243e0"><div class="ttname"><a href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acafcf2af6407845b24a3abac79587243e0">wiconnect::GHM_SYNC_PUSH_ONLY</a></div><div class="ttdoc">Only push streams and controls to remote server. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00465">WiconnectTypes.h:465</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_gga44ea17651dcf42ac9816f549beb577acaad5fbcfa42d14a2662bc5a517c108bdd"><div class="ttname"><a href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acaad5fbcfa42d14a2662bc5a517c108bdd">wiconnect::GHM_SYNC_PULL_ONLY</a></div><div class="ttdoc">Only pull controls from remote server. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00467">WiconnectTypes.h:467</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_gga44ea17651dcf42ac9816f549beb577acafcf2af6407845b24a3abac79587243e0"><div class="ttname"><a href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577acafcf2af6407845b24a3abac79587243e0">wiconnect::GHM_SYNC_PUSH_ONLY</a></div><div class="ttdoc">Only push streams and controls to remote server. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00466">WiconnectTypes.h:466</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ga026bd11cd5df47b7022362243e2d553f"><div class="ttname"><a href="group__api__network__types.html#ga026bd11cd5df47b7022362243e2d553f">wiconnect::NetworkSecurity</a></div><div class="ttdeci">NetworkSecurity</div><div class="ttdoc">Network security type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00282">WiconnectTypes.h:282</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a25c48e037bc3615840b81461db6385b5"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a25c48e037bc3615840b81461db6385b5">wiconnect::WICONNECT_NULL_BUFFER</a></div><div class="ttdoc">Null buffer supplied. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00177">WiconnectTypes.h:177</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a2958dab5107b78cd1c14400770ab9b4e"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2958dab5107b78cd1c14400770ab9b4e">wiconnect::FILE_TYPE_USER_RANGE_END</a></div><div class="ttdoc">User type end index. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00408">WiconnectTypes.h:408</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a2958dab5107b78cd1c14400770ab9b4e"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2958dab5107b78cd1c14400770ab9b4e">wiconnect::FILE_TYPE_USER_RANGE_END</a></div><div class="ttdoc">User type end index. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00409">WiconnectTypes.h:409</a></div></div>
 <div class="ttc" id="namespacewiconnect_html_aadd4d5e6774e21f382c20b594a644470"><div class="ttname"><a href="namespacewiconnect.html#aadd4d5e6774e21f382c20b594a644470">wiconnect::PinToGpioMapper</a></div><div class="ttdeci">int8_t(* PinToGpioMapper)(Pin pin)</div><div class="ttdoc">Function pointer for mapping from a host pin to a WiConnect Module GPIO. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00207">WiconnectTypes.h:207</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a376da897f3a629fd71abd9db9f4cea83"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a376da897f3a629fd71abd9db9f4cea83">wiconnect::WICONNECT_ANOTHER_CMD_EXECUTING</a></div><div class="ttdoc">Currently executing another command. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00183">WiconnectTypes.h:183</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ggac5aead2b4cca0122a60168e75ea41d36ab0e9cbbf4e2c6dee74d2639caef2cffa"><div class="ttname"><a href="group__api__network__types.html#ggac5aead2b4cca0122a60168e75ea41d36ab0e9cbbf4e2c6dee74d2639caef2cffa">wiconnect::NETWORK_RSSI_VERY_POOR</a></div><div class="ttdoc">< -71 dBm </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00274">WiconnectTypes.h:274</a></div></div>
-<div class="ttc" id="structwiconnect_1_1_http_socket_args_html_a401fd2b9a75ec8c76d59bd798d36e25b"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html#a401fd2b9a75ec8c76d59bd798d36e25b">wiconnect::HttpSocketArgs::contextType</a></div><div class="ttdeci">const char * contextType</div><div class="ttdoc">A POST Request &#39;context-type&#39; value. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00367">WiconnectTypes.h:367</a></div></div>
+<div class="ttc" id="structwiconnect_1_1_http_socket_args_html_a401fd2b9a75ec8c76d59bd798d36e25b"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html#a401fd2b9a75ec8c76d59bd798d36e25b">wiconnect::HttpSocketArgs::contextType</a></div><div class="ttdeci">const char * contextType</div><div class="ttdoc">A POST Request &#39;context-type&#39; value. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00368">WiconnectTypes.h:368</a></div></div>
 <div class="ttc" id="group__api__socket__types_html_gga69dc55558df4c81599c5fb3dff98756daece967eb28f8913c30bc70fa1e0e5ff9"><div class="ttname"><a href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756daece967eb28f8913c30bc70fa1e0e5ff9">wiconnect::SOCKET_TYPE_TCP</a></div><div class="ttdoc">TCP Socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00342">WiconnectTypes.h:342</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63ad127cd0d4eeefee993a24b4d5095bfe7"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ad127cd0d4eeefee993a24b4d5095bfe7">wiconnect::FILE_TYPE_WIFI_FW</a></div><div class="ttdoc">Wifi firmware binary. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00403">WiconnectTypes.h:403</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63ad127cd0d4eeefee993a24b4d5095bfe7"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ad127cd0d4eeefee993a24b4d5095bfe7">wiconnect::FILE_TYPE_WIFI_FW</a></div><div class="ttdoc">Wifi firmware binary. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00404">WiconnectTypes.h:404</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05ae6a9fb0c6333a0431e5775da996087ac"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ae6a9fb0c6333a0431e5775da996087ac">wiconnect::WICONNECT_TIMEOUT</a></div><div class="ttdoc">Command timed out. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00180">WiconnectTypes.h:180</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7"><div class="ttname"><a href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7">wiconnect::GHM_SYNC_ALL</a></div><div class="ttdoc">Push and pull all streams and controls. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00464">WiconnectTypes.h:464</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7"><div class="ttname"><a href="group__api__ghm__types.html#gga44ea17651dcf42ac9816f549beb577aca8aa4d4efd897cd69e0f08feaeaa122e7">wiconnect::GHM_SYNC_ALL</a></div><div class="ttdoc">Push and pull all streams and controls. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00465">WiconnectTypes.h:465</a></div></div>
 <div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609ea21f35fd8f0a4e38d91d5d1f5c5cc977f"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea21f35fd8f0a4e38d91d5d1f5c5cc977f">wiconnect::FILE_FLAG_INVALID</a></div><div class="ttdoc">File flags invalid. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00393">WiconnectTypes.h:393</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609ea21f35fd8f0a4e38d91d5d1f5c5cc977f"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea21f35fd8f0a4e38d91d5d1f5c5cc977f">wiconnect::FILE_FLAG_INVALID</a></div><div class="ttdoc">File flags invalid. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00394">WiconnectTypes.h:394</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gga5f6f5c916a5dd1676f98da7fa511451da2ac6866940725552e31532002ef649a5"><div class="ttname"><a href="group__api__network__types.html#gga5f6f5c916a5dd1676f98da7fa511451da2ac6866940725552e31532002ef649a5">wiconnect::NETWORK_JOIN_RESULT_NONE</a></div><div class="ttdoc">Haven&#39;t attempted to join. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00253">WiconnectTypes.h:253</a></div></div>
-<div class="ttc" id="structwiconnect_1_1_ghm_element_html"><div class="ttname"><a href="structwiconnect_1_1_ghm_element.html">wiconnect::GhmElement</a></div><div class="ttdoc">goHACK.me stream or control value </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00437">WiconnectTypes.h:437</a></div></div>
+<div class="ttc" id="structwiconnect_1_1_ghm_element_html"><div class="ttname"><a href="structwiconnect_1_1_ghm_element.html">wiconnect::GhmElement</a></div><div class="ttdoc">goHACK.me stream or control value </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00438">WiconnectTypes.h:438</a></div></div>
 <div class="ttc" id="structwiconnect_1_1_mac_address_html"><div class="ttname"><a href="structwiconnect_1_1_mac_address.html">wiconnect::MacAddress</a></div><div class="ttdoc">Network MAC Address type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00308">WiconnectTypes.h:308</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05ab9123e9628c3156f34c44913a72b4195"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ab9123e9628c3156f34c44913a72b4195">wiconnect::WICONNECT_NOT_FOUND</a></div><div class="ttdoc">Not found. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00188">WiconnectTypes.h:188</a></div></div>
 <div class="ttc" id="group__api__socket__types_html_gga69dc55558df4c81599c5fb3dff98756da77625728d545a400e0eae1483225ff91"><div class="ttname"><a href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da77625728d545a400e0eae1483225ff91">wiconnect::SOCKET_TYPE_UDPS</a></div><div class="ttdoc">UDP Server Socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00346">WiconnectTypes.h:346</a></div></div>
 <div class="ttc" id="group__api__socket__types_html_gga69dc55558df4c81599c5fb3dff98756dab1b41b1c4daf8d171414b68e9033cfbc"><div class="ttname"><a href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756dab1b41b1c4daf8d171414b68e9033cfbc">wiconnect::SOCKET_TYPE_UDP</a></div><div class="ttdoc">UDP Socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00344">WiconnectTypes.h:344</a></div></div>
-<div class="ttc" id="group__api__socket__types_html_gadc1d6e26d4138c536bd5dce7ed4569d6"><div class="ttname"><a href="group__api__socket__types.html#gadc1d6e26d4138c536bd5dce7ed4569d6">wiconnect::HttpSocketType</a></div><div class="ttdeci">HttpSocketType</div><div class="ttdoc">HTTP Socket sub-type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00354">WiconnectTypes.h:354</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_gaf75750bfef61c73f9e4677e9de663df1"><div class="ttname"><a href="group__api__ghm__types.html#gaf75750bfef61c73f9e4677e9de663df1">wiconnect::GhmMessageGetType</a></div><div class="ttdeci">GhmMessageGetType</div><div class="ttdoc">goHACK.me message GET type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00473">WiconnectTypes.h:473</a></div></div>
+<div class="ttc" id="group__api__socket__types_html_gadc1d6e26d4138c536bd5dce7ed4569d6"><div class="ttname"><a href="group__api__socket__types.html#gadc1d6e26d4138c536bd5dce7ed4569d6">wiconnect::HttpSocketType</a></div><div class="ttdeci">HttpSocketType</div><div class="ttdoc">HTTP Socket sub-type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00355">WiconnectTypes.h:355</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_gaf75750bfef61c73f9e4677e9de663df1"><div class="ttname"><a href="group__api__ghm__types.html#gaf75750bfef61c73f9e4677e9de663df1">wiconnect::GhmMessageGetType</a></div><div class="ttdeci">GhmMessageGetType</div><div class="ttdoc">goHACK.me message GET type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00474">WiconnectTypes.h:474</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gga5f6f5c916a5dd1676f98da7fa511451daed880c261bae590a5f59aebb01b6912c"><div class="ttname"><a href="group__api__network__types.html#gga5f6f5c916a5dd1676f98da7fa511451daed880c261bae590a5f59aebb01b6912c">wiconnect::NETWORK_JOIN_RESULT_ABORTED</a></div><div class="ttdoc">Joining was aborted (via command) </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00261">WiconnectTypes.h:261</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a2271e7ab227bf95699c260a258902eeb"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2271e7ab227bf95699c260a258902eeb">wiconnect::FILE_TYPE_USER_RANGE_START</a></div><div class="ttdoc">User type start index. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00407">WiconnectTypes.h:407</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a2271e7ab227bf95699c260a258902eeb"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a2271e7ab227bf95699c260a258902eeb">wiconnect::FILE_TYPE_USER_RANGE_START</a></div><div class="ttdoc">User type start index. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00408">WiconnectTypes.h:408</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a289d83a8cf2d1e1f272134d8268925c0"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a289d83a8cf2d1e1f272134d8268925c0">wiconnect::WICONNECT_PROCESSING</a></div><div class="ttdoc">Library processing current command. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00171">WiconnectTypes.h:171</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ggac5aead2b4cca0122a60168e75ea41d36a095c1eef3bdeb16e33b1f6a976e9f6c4"><div class="ttname"><a href="group__api__network__types.html#ggac5aead2b4cca0122a60168e75ea41d36a095c1eef3bdeb16e33b1f6a976e9f6c4">wiconnect::NETWORK_RSSI_UNKNOWN</a></div><div class="ttdoc">Not available. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00275">WiconnectTypes.h:275</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a7d4f9bd8b2b8ccc2ad902271e5241b02"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a7d4f9bd8b2b8ccc2ad902271e5241b02">wiconnect::WICONNECT_UNDERFLOW</a></div><div class="ttdoc">Data underflow. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00191">WiconnectTypes.h:191</a></div></div>
@@ -448,75 +449,76 @@
 <div class="ttc" id="group__api__network__types_html_ga38e0a82235258f96340b9ce2c6e1426c"><div class="ttname"><a href="group__api__network__types.html#ga38e0a82235258f96340b9ce2c6e1426c">wiconnect::SsidStrBuffer</a></div><div class="ttdeci">char SsidStrBuffer[129]</div><div class="ttdoc">Buffer to hold a SSID string. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00323">WiconnectTypes.h:323</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">wiconnect::WICONNECT_FIRMWARE_OUTDATED</a></div><div class="ttdoc">The WiFi module&#39;s firmware is out-dated. See updateFirmware() to update the firmware. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00194">WiconnectTypes.h:194</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ggab448e57fc1a5e21cbba0283fd1a35d99a8e40c9f169976770c3e65b9c0e44874c"><div class="ttname"><a href="group__api__network__types.html#ggab448e57fc1a5e21cbba0283fd1a35d99a8e40c9f169976770c3e65b9c0e44874c">wiconnect::NETWORK_STATUS_WIFI_ONLY</a></div><div class="ttdoc">Connected to network but don&#39;t have IP address. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00242">WiconnectTypes.h:242</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_ga4174104f02851ee92e51846877706e67"><div class="ttname"><a href="group__api__ghm__types.html#ga4174104f02851ee92e51846877706e67">wiconnect::GhmElementValueType</a></div><div class="ttdeci">GhmElementValueType</div><div class="ttdoc">goHACK.me stream or control value type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00427">WiconnectTypes.h:427</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609eac40bade251c1d671283d3ab2515725a6"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eac40bade251c1d671283d3ab2515725a6">wiconnect::FILE_FLAG_NONE</a></div><div class="ttdoc">No flags. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00383">WiconnectTypes.h:383</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_ga4174104f02851ee92e51846877706e67"><div class="ttname"><a href="group__api__ghm__types.html#ga4174104f02851ee92e51846877706e67">wiconnect::GhmElementValueType</a></div><div class="ttdeci">GhmElementValueType</div><div class="ttdoc">goHACK.me stream or control value type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00428">WiconnectTypes.h:428</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609eac40bade251c1d671283d3ab2515725a6"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eac40bade251c1d671283d3ab2515725a6">wiconnect::FILE_FLAG_NONE</a></div><div class="ttdoc">No flags. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00384">WiconnectTypes.h:384</a></div></div>
 <div class="ttc" id="group__api__socket__types_html_gga69dc55558df4c81599c5fb3dff98756da3d433f1b569dc48077861cde0e464751"><div class="ttname"><a href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da3d433f1b569dc48077861cde0e464751">wiconnect::SOCKET_TYPE_HTTP</a></div><div class="ttdoc">HTTP Socket type,. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00345">WiconnectTypes.h:345</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127"><div class="ttname"><a href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127">wiconnect::GHM_MSG_GET_DATA_ONLY</a></div><div class="ttdoc">Only GET the message data. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00475">WiconnectTypes.h:475</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127"><div class="ttname"><a href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a7b67ad45967438f44f6942968fb72127">wiconnect::GHM_MSG_GET_DATA_ONLY</a></div><div class="ttdoc">Only GET the message data. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00476">WiconnectTypes.h:476</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ga04b095d2e2f32a3fd23e346a4be969d8"><div class="ttname"><a href="group__api__network__types.html#ga04b095d2e2f32a3fd23e346a4be969d8">wiconnect::MacAddressStrBuffer</a></div><div class="ttdeci">char MacAddressStrBuffer[18]</div><div class="ttdoc">Buffer to hold a MAC address string. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00317">WiconnectTypes.h:317</a></div></div>
-<div class="ttc" id="group__api__socket__types_html_ggadc1d6e26d4138c536bd5dce7ed4569d6a6d256a218aac67dffe66ae6c49a61236"><div class="ttname"><a href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6a6d256a218aac67dffe66ae6c49a61236">wiconnect::SOCKET_HTTP_HEAD</a></div><div class="ttdoc">HTTP HEAD Request socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00358">WiconnectTypes.h:358</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609eaffe90e6784ad43acffbf823502a6a7bf"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaffe90e6784ad43acffbf823502a6a7bf">wiconnect::FILE_FLAG_BOOTABLE</a></div><div class="ttdoc">File bootable. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00389">WiconnectTypes.h:389</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609ea07f098f34c015d1c81d7592b476312e6"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea07f098f34c015d1c81d7592b476312e6">wiconnect::FILE_FLAG_ENCRYPTED</a></div><div class="ttdoc">File encrypted. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00387">WiconnectTypes.h:387</a></div></div>
+<div class="ttc" id="group__api__socket__types_html_ggadc1d6e26d4138c536bd5dce7ed4569d6a6d256a218aac67dffe66ae6c49a61236"><div class="ttname"><a href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6a6d256a218aac67dffe66ae6c49a61236">wiconnect::SOCKET_HTTP_HEAD</a></div><div class="ttdoc">HTTP HEAD Request socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00359">WiconnectTypes.h:359</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609eaffe90e6784ad43acffbf823502a6a7bf"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaffe90e6784ad43acffbf823502a6a7bf">wiconnect::FILE_FLAG_BOOTABLE</a></div><div class="ttdoc">File bootable. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00390">WiconnectTypes.h:390</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609ea07f098f34c015d1c81d7592b476312e6"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea07f098f34c015d1c81d7592b476312e6">wiconnect::FILE_FLAG_ENCRYPTED</a></div><div class="ttdoc">File encrypted. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00388">WiconnectTypes.h:388</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gga5f6f5c916a5dd1676f98da7fa511451da5c790fb0440c39d95ec785e1c31c3cb2"><div class="ttname"><a href="group__api__network__types.html#gga5f6f5c916a5dd1676f98da7fa511451da5c790fb0440c39d95ec785e1c31c3cb2">wiconnect::NETWORK_JOIN_RESULT_NOT_FOUND</a></div><div class="ttdoc">The network with the configured SSID was not found. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00259">WiconnectTypes.h:259</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ggac5aead2b4cca0122a60168e75ea41d36ad77f98cf80b81d4c5277672402c0b713"><div class="ttname"><a href="group__api__network__types.html#ggac5aead2b4cca0122a60168e75ea41d36ad77f98cf80b81d4c5277672402c0b713">wiconnect::NETWORK_RSSI_VERY_GOOD</a></div><div class="ttdoc">> -35 dBm </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00271">WiconnectTypes.h:271</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ga9919a4237eea2b0d1f27c16d64e62c63"><div class="ttname"><a href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">wiconnect::FileType</a></div><div class="ttdeci">FileType</div><div class="ttdoc">File type type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00400">WiconnectTypes.h:400</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ga9919a4237eea2b0d1f27c16d64e62c63"><div class="ttname"><a href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">wiconnect::FileType</a></div><div class="ttdeci">FileType</div><div class="ttdoc">File type type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00401">WiconnectTypes.h:401</a></div></div>
 <div class="ttc" id="group__api__core__types_html_ga1cf4dfa71da0b0dc3dc707dacf56cc9c"><div class="ttname"><a href="group__api__core__types.html#ga1cf4dfa71da0b0dc3dc707dacf56cc9c">wiconnect::Pin</a></div><div class="ttdeci">PinName Pin</div><div class="ttdoc">Pin name on HOST. </div><div class="ttdef"><b>Definition:</b> <a href="sdk_8h_source.html#l00142">sdk.h:142</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gga5f6f5c916a5dd1676f98da7fa511451daea6aa0a779a2823eadafa82dda6b7304"><div class="ttname"><a href="group__api__network__types.html#gga5f6f5c916a5dd1676f98da7fa511451daea6aa0a779a2823eadafa82dda6b7304">wiconnect::NETWORK_JOIN_RESULT_NO_SSID</a></div><div class="ttdoc">The SSID has not be configured. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00256">WiconnectTypes.h:256</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05ab18f839c77a6a1f964c096980ef24adc"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ab18f839c77a6a1f964c096980ef24adc">wiconnect::WICONNECT_UNSUPPORTED</a></div><div class="ttdoc">Command / parameter not supported. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00185">WiconnectTypes.h:185</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05afea61b8f5d17f6be2aee2ce5b6bb7c43"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05afea61b8f5d17f6be2aee2ce5b6bb7c43">wiconnect::WICONNECT_NOT_INITIALIZED</a></div><div class="ttdoc">Library not initialed. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00178">WiconnectTypes.h:178</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609ea3864357fd0b63b4cd6594d00c2194ca8"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea3864357fd0b63b4cd6594d00c2194ca8">wiconnect::FILE_FLAG_USER</a></div><div class="ttdoc">File created by user. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00390">WiconnectTypes.h:390</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609ea3864357fd0b63b4cd6594d00c2194ca8"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea3864357fd0b63b4cd6594d00c2194ca8">wiconnect::FILE_FLAG_USER</a></div><div class="ttdoc">File created by user. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00391">WiconnectTypes.h:391</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gga5f6f5c916a5dd1676f98da7fa511451da02f32115d4a39e6028e5ebb4944f0bec"><div class="ttname"><a href="group__api__network__types.html#gga5f6f5c916a5dd1676f98da7fa511451da02f32115d4a39e6028e5ebb4944f0bec">wiconnect::NETWORK_JOIN_RESULT_NO_PASSWORD</a></div><div class="ttdoc">The network requires a password and none has been set. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00257">WiconnectTypes.h:257</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63afd6c376410552b54187a162e2c6fdad2"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63afd6c376410552b54187a162e2c6fdad2">wiconnect::FILE_TYPE_SETUP_SCRIPT</a></div><div class="ttdoc">Setup script file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00414">WiconnectTypes.h:414</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63afd6c376410552b54187a162e2c6fdad2"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63afd6c376410552b54187a162e2c6fdad2">wiconnect::FILE_TYPE_SETUP_SCRIPT</a></div><div class="ttdoc">Setup script file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00415">WiconnectTypes.h:415</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a28240905349a60a6b52bddbbd152ea5e"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a28240905349a60a6b52bddbbd152ea5e">wiconnect::WICONNECT_MONITOR_NOT_AVAILABLE</a></div><div class="ttdoc">Background processing monitor is not available (i.e in use) </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00192">WiconnectTypes.h:192</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609eaff56da02ac3626bf5636e0aa6ffff78a"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaff56da02ac3626bf5636e0aa6ffff78a">wiconnect::FILE_FLAG_VALID</a></div><div class="ttdoc">File valid. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00385">WiconnectTypes.h:385</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609eaff56da02ac3626bf5636e0aa6ffff78a"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaff56da02ac3626bf5636e0aa6ffff78a">wiconnect::FILE_FLAG_VALID</a></div><div class="ttdoc">File valid. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00386">WiconnectTypes.h:386</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05ae96c2edcdade2809cdb60a8a5b0983fa"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ae96c2edcdade2809cdb60a8a5b0983fa">wiconnect::WICONNECT_BAD_ARG</a></div><div class="ttdoc">Bad argument supplied. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00184">WiconnectTypes.h:184</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a5bff05280d726da505c6e6ec2f085bd1"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a5bff05280d726da505c6e6ec2f085bd1">wiconnect::WICONNECT_IDLE</a></div><div class="ttdoc">Library not processing any commands. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00170">WiconnectTypes.h:170</a></div></div>
-<div class="ttc" id="group__api__socket__types_html_ggadc1d6e26d4138c536bd5dce7ed4569d6ab271a5cd1775076aeb8c25fc14da12cb"><div class="ttname"><a href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6ab271a5cd1775076aeb8c25fc14da12cb">wiconnect::SOCKET_HTTP_POST</a></div><div class="ttdoc">HTTP POST Request socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00357">WiconnectTypes.h:357</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609ea94ddbab88df5f29013d5deb3f3d092c5"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea94ddbab88df5f29013d5deb3f3d092c5">wiconnect::FILE_FLAG_EXECUTABLE</a></div><div class="ttdoc">File executable. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00386">WiconnectTypes.h:386</a></div></div>
+<div class="ttc" id="group__api__socket__types_html_ggadc1d6e26d4138c536bd5dce7ed4569d6ab271a5cd1775076aeb8c25fc14da12cb"><div class="ttname"><a href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6ab271a5cd1775076aeb8c25fc14da12cb">wiconnect::SOCKET_HTTP_POST</a></div><div class="ttdoc">HTTP POST Request socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00358">WiconnectTypes.h:358</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609ea94ddbab88df5f29013d5deb3f3d092c5"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609ea94ddbab88df5f29013d5deb3f3d092c5">wiconnect::FILE_FLAG_EXECUTABLE</a></div><div class="ttdoc">File executable. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00387">WiconnectTypes.h:387</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05aecb3384d1dc5a61345346a8cd63527b2"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05aecb3384d1dc5a61345346a8cd63527b2">wiconnect::WICONNECT_NOT_CONNECTED</a></div><div class="ttdoc">Not connected. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00190">WiconnectTypes.h:190</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a5df6fc01411942aabcf83731d0d02d52"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a5df6fc01411942aabcf83731d0d02d52">wiconnect::FILE_TYPE_GPIO_CONFIG</a></div><div class="ttdoc">GPIO configuration file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00411">WiconnectTypes.h:411</a></div></div>
-<div class="ttc" id="structwiconnect_1_1_http_socket_args_html_adffa0b3f63392a28c19aef272c918772"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html#adffa0b3f63392a28c19aef272c918772">wiconnect::HttpSocketArgs::type</a></div><div class="ttdeci">HttpSocketType type</div><div class="ttdoc">The type of HTTP connection. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00370">WiconnectTypes.h:370</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a5df6fc01411942aabcf83731d0d02d52"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a5df6fc01411942aabcf83731d0d02d52">wiconnect::FILE_TYPE_GPIO_CONFIG</a></div><div class="ttdoc">GPIO configuration file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00412">WiconnectTypes.h:412</a></div></div>
+<div class="ttc" id="structwiconnect_1_1_http_socket_args_html_adffa0b3f63392a28c19aef272c918772"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html#adffa0b3f63392a28c19aef272c918772">wiconnect::HttpSocketArgs::type</a></div><div class="ttdeci">HttpSocketType type</div><div class="ttdoc">The type of HTTP connection. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00371">WiconnectTypes.h:371</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a511a4e6fa8470f52110fc64f04cfe5ff"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a511a4e6fa8470f52110fc64f04cfe5ff">wiconnect::WICONNECT_CMD_RESPONSE_ERROR</a></div><div class="ttdoc">Module returned error code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00176">WiconnectTypes.h:176</a></div></div>
 <div class="ttc" id="group__api__socket__types_html_gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f"><div class="ttname"><a href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f">wiconnect::SOCKET_TYPE_GHM</a></div><div class="ttdoc">goHACK.me message type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00347">WiconnectTypes.h:347</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gafbe48908f5c190c3b0f272d3016e609e"><div class="ttname"><a href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">wiconnect::FileFlags</a></div><div class="ttdeci">FileFlags</div><div class="ttdoc">File flags type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00381">WiconnectTypes.h:381</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a244c4ea312de84a2f4cabaff386fcffd"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a244c4ea312de84a2f4cabaff386fcffd">wiconnect::FILE_TYPE_SDC_CAPS</a></div><div class="ttdoc">SDC / goHACK.me file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00413">WiconnectTypes.h:413</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gafbe48908f5c190c3b0f272d3016e609e"><div class="ttname"><a href="group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e">wiconnect::FileFlags</a></div><div class="ttdeci">FileFlags</div><div class="ttdoc">File flags type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00382">WiconnectTypes.h:382</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a244c4ea312de84a2f4cabaff386fcffd"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a244c4ea312de84a2f4cabaff386fcffd">wiconnect::FILE_TYPE_SDC_CAPS</a></div><div class="ttdoc">SDC / goHACK.me file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00414">WiconnectTypes.h:414</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gac5aead2b4cca0122a60168e75ea41d36"><div class="ttname"><a href="group__api__network__types.html#gac5aead2b4cca0122a60168e75ea41d36">wiconnect::NetworkSignalStrength</a></div><div class="ttdeci">NetworkSignalStrength</div><div class="ttdoc">Network RSSI signal level. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00268">WiconnectTypes.h:268</a></div></div>
 <div class="ttc" id="group__api__socket__types_html_gga69dc55558df4c81599c5fb3dff98756da0c365c200e62d61bf22798c25ccb96b4"><div class="ttname"><a href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da0c365c200e62d61bf22798c25ccb96b4">wiconnect::SOCKET_TYPE_TLS</a></div><div class="ttdoc">TLS Socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00343">WiconnectTypes.h:343</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ggac5aead2b4cca0122a60168e75ea41d36a2911018510263b4d6db772cf6ea69385"><div class="ttname"><a href="group__api__network__types.html#ggac5aead2b4cca0122a60168e75ea41d36a2911018510263b4d6db772cf6ea69385">wiconnect::NETWORK_RSSI_EXCELLENT</a></div><div class="ttdoc">> -20 dBm </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00270">WiconnectTypes.h:270</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609eaad3ddfddf9e28a26df73b689e0898df0"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaad3ddfddf9e28a26df73b689e0898df0">wiconnect::FILE_FLAG_INTERNAL</a></div><div class="ttdoc">File on internal module flash. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00388">WiconnectTypes.h:388</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609eaad3ddfddf9e28a26df73b689e0898df0"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaad3ddfddf9e28a26df73b689e0898df0">wiconnect::FILE_FLAG_INTERNAL</a></div><div class="ttdoc">File on internal module flash. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00389">WiconnectTypes.h:389</a></div></div>
 <div class="ttc" id="structwiconnect_1_1_ssid_html"><div class="ttname"><a href="structwiconnect_1_1_ssid.html">wiconnect::Ssid</a></div><div class="ttdoc">Network SSID type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00298">WiconnectTypes.h:298</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a5d9162280a5269a34245bf53c87401a4"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a5d9162280a5269a34245bf53c87401a4">wiconnect::WICONNECT_DUPLICATE</a></div><div class="ttdoc">Duplicate value. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00187">WiconnectTypes.h:187</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ga5f6f5c916a5dd1676f98da7fa511451d"><div class="ttname"><a href="group__api__network__types.html#ga5f6f5c916a5dd1676f98da7fa511451d">wiconnect::NetworkJoinResult</a></div><div class="ttdeci">NetworkJoinResult</div><div class="ttdoc">Network connection status. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00251">WiconnectTypes.h:251</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_ga44ea17651dcf42ac9816f549beb577ac"><div class="ttname"><a href="group__api__ghm__types.html#ga44ea17651dcf42ac9816f549beb577ac">wiconnect::GhmSyncType</a></div><div class="ttdeci">GhmSyncType</div><div class="ttdoc">goHACK.me sychronization type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00462">WiconnectTypes.h:462</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_ga44ea17651dcf42ac9816f549beb577ac"><div class="ttname"><a href="group__api__ghm__types.html#ga44ea17651dcf42ac9816f549beb577ac">wiconnect::GhmSyncType</a></div><div class="ttdeci">GhmSyncType</div><div class="ttdoc">goHACK.me sychronization type </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00463">WiconnectTypes.h:463</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05ad345e256266694df078c99eaee04f789"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ad345e256266694df078c99eaee04f789">wiconnect::WICONNECT_ABORTED</a></div><div class="ttdoc">Command was aborted. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00169">WiconnectTypes.h:169</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_ggaf75750bfef61c73f9e4677e9de663df1a19876ca1d097b96c48a1e8b54ee562d1"><div class="ttname"><a href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a19876ca1d097b96c48a1e8b54ee562d1">wiconnect::GHM_MSG_GET_BODY</a></div><div class="ttdoc">Get the message body. This is JSON formatted. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00476">WiconnectTypes.h:476</a></div></div>
-<div class="ttc" id="group__api__socket__types_html_ggadc1d6e26d4138c536bd5dce7ed4569d6afc257aa28936e9fa8a332995b5449685"><div class="ttname"><a href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6afc257aa28936e9fa8a332995b5449685">wiconnect::SOCKET_HTTP_GET</a></div><div class="ttdoc">HTTP GET Request socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00356">WiconnectTypes.h:356</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_ggaf75750bfef61c73f9e4677e9de663df1a19876ca1d097b96c48a1e8b54ee562d1"><div class="ttname"><a href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1a19876ca1d097b96c48a1e8b54ee562d1">wiconnect::GHM_MSG_GET_BODY</a></div><div class="ttdoc">Get the message body. This is JSON formatted. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00477">WiconnectTypes.h:477</a></div></div>
+<div class="ttc" id="group__api__socket__types_html_ggadc1d6e26d4138c536bd5dce7ed4569d6afc257aa28936e9fa8a332995b5449685"><div class="ttname"><a href="group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6afc257aa28936e9fa8a332995b5449685">wiconnect::SOCKET_HTTP_GET</a></div><div class="ttdoc">HTTP GET Request socket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00357">WiconnectTypes.h:357</a></div></div>
 <div class="ttc" id="namespacewiconnect_html_a0c27570b2913afc6339821df7c934810"><div class="ttname"><a href="namespacewiconnect.html#a0c27570b2913afc6339821df7c934810">wiconnect::TimerTimeout</a></div><div class="ttdeci">unsigned long TimerTimeout</div><div class="ttdoc">Timeout type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00213">WiconnectTypes.h:213</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05ab17f003b5f90e88328bbc76435f9f2e5"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ab17f003b5f90e88328bbc76435f9f2e5">wiconnect::WICONNECT_RESPONSE_PARSE_ERROR</a></div><div class="ttdoc">Failed to parse module response. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00182">WiconnectTypes.h:182</a></div></div>
-<div class="ttc" id="structwiconnect_1_1_http_socket_args_html_a6dda2d739bd2c43d1b63d7a526ecf95c"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html#a6dda2d739bd2c43d1b63d7a526ecf95c">wiconnect::HttpSocketArgs::certName</a></div><div class="ttdeci">const char * certName</div><div class="ttdoc">TLS certificate filename on module flash file system. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00368">WiconnectTypes.h:368</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a681a5a935adbd3aefdbb3639c36a4169"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a681a5a935adbd3aefdbb3639c36a4169">wiconnect::FILE_TYPE_REGULAR_APP</a></div><div class="ttdoc">Regular application. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00405">WiconnectTypes.h:405</a></div></div>
-<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609eaa74f44cd76d69e9f32d70a2b13c8c4e2"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaa74f44cd76d69e9f32d70a2b13c8c4e2">wiconnect::FILE_FLAG_ESSENTIAL</a></div><div class="ttdoc">File is essential. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00391">WiconnectTypes.h:391</a></div></div>
+<div class="ttc" id="structwiconnect_1_1_http_socket_args_html_a6dda2d739bd2c43d1b63d7a526ecf95c"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html#a6dda2d739bd2c43d1b63d7a526ecf95c">wiconnect::HttpSocketArgs::certName</a></div><div class="ttdeci">const char * certName</div><div class="ttdoc">TLS certificate filename on module flash file system. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00369">WiconnectTypes.h:369</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a681a5a935adbd3aefdbb3639c36a4169"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a681a5a935adbd3aefdbb3639c36a4169">wiconnect::FILE_TYPE_REGULAR_APP</a></div><div class="ttdoc">Regular application. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00406">WiconnectTypes.h:406</a></div></div>
+<div class="ttc" id="group__api__file__types_html_ggafbe48908f5c190c3b0f272d3016e609eaa74f44cd76d69e9f32d70a2b13c8c4e2"><div class="ttname"><a href="group__api__file__types.html#ggafbe48908f5c190c3b0f272d3016e609eaa74f44cd76d69e9f32d70a2b13c8c4e2">wiconnect::FILE_FLAG_ESSENTIAL</a></div><div class="ttdoc">File is essential. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00392">WiconnectTypes.h:392</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a2b2577cc3efe2cb37fda7dead222878f"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a2b2577cc3efe2cb37fda7dead222878f">wiconnect::WICONNECT_OVERFLOW</a></div><div class="ttdoc">Buffer overflowed. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00179">WiconnectTypes.h:179</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ggac5aead2b4cca0122a60168e75ea41d36a5aa38a03f1ec4cdcdd1f0c41dfd19533"><div class="ttname"><a href="group__api__network__types.html#ggac5aead2b4cca0122a60168e75ea41d36a5aa38a03f1ec4cdcdd1f0c41dfd19533">wiconnect::NETWORK_RSSI_GOOD</a></div><div class="ttdoc">> -50 dBm </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00272">WiconnectTypes.h:272</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05ab16dea725fe7b09d91a7651f18174cff"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ab16dea725fe7b09d91a7651f18174cff">wiconnect::WICONNECT_PINNAME_TO_GPIO_MAPPER_NULL</a></div><div class="ttdoc">The pinToGpioMapper hasn&#39;t been set. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00186">WiconnectTypes.h:186</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gga5f6f5c916a5dd1676f98da7fa511451dabfbb179ad94f8d5a57a9da86de9c65a8"><div class="ttname"><a href="group__api__network__types.html#gga5f6f5c916a5dd1676f98da7fa511451dabfbb179ad94f8d5a57a9da86de9c65a8">wiconnect::NETWORK_JOIN_RESULT_SUCCESS</a></div><div class="ttdoc">Successfully joined the network. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00254">WiconnectTypes.h:254</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63aaa4d15bf30361c1026fe15e029e9c3e2"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63aaa4d15bf30361c1026fe15e029e9c3e2">wiconnect::FILE_TYPE_TEMPORY</a></div><div class="ttdoc">Temporary file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00410">WiconnectTypes.h:410</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a077782e07756b6dc93f96e9a0cca5c9e"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a077782e07756b6dc93f96e9a0cca5c9e">wiconnect::FILE_TYPE_UNKNOWN</a></div><div class="ttdoc">Unknown file type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00416">WiconnectTypes.h:416</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63aaa4d15bf30361c1026fe15e029e9c3e2"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63aaa4d15bf30361c1026fe15e029e9c3e2">wiconnect::FILE_TYPE_TEMPORY</a></div><div class="ttdoc">Temporary file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00411">WiconnectTypes.h:411</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a077782e07756b6dc93f96e9a0cca5c9e"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a077782e07756b6dc93f96e9a0cca5c9e">wiconnect::FILE_TYPE_UNKNOWN</a></div><div class="ttdoc">Unknown file type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00417">WiconnectTypes.h:417</a></div></div>
+<div class="ttc" id="group__api__socket__types_html_gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a"><div class="ttname"><a href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a">wiconnect::SOCKET_TYPE_WS</a></div><div class="ttdoc">WebSocket type. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00348">WiconnectTypes.h:348</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">wiconnect::WICONNECT_SUCCESS</a></div><div class="ttdoc">Command successfully completed. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00172">WiconnectTypes.h:172</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ggab448e57fc1a5e21cbba0283fd1a35d99a2916360f96699b2bf42cf5e122562497"><div class="ttname"><a href="group__api__network__types.html#ggab448e57fc1a5e21cbba0283fd1a35d99a2916360f96699b2bf42cf5e122562497">wiconnect::NETWORK_STATUS_JOINING</a></div><div class="ttdoc">Joining a network. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00244">WiconnectTypes.h:244</a></div></div>
-<div class="ttc" id="structwiconnect_1_1_ghm_element_array_html"><div class="ttname"><a href="structwiconnect_1_1_ghm_element_array.html">wiconnect::GhmElementArray</a></div><div class="ttdoc">Array of goHACK.me stream or control values. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00452">WiconnectTypes.h:452</a></div></div>
+<div class="ttc" id="structwiconnect_1_1_ghm_element_array_html"><div class="ttname"><a href="structwiconnect_1_1_ghm_element_array.html">wiconnect::GhmElementArray</a></div><div class="ttdoc">Array of goHACK.me stream or control values. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00453">WiconnectTypes.h:453</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gab448e57fc1a5e21cbba0283fd1a35d99"><div class="ttname"><a href="group__api__network__types.html#gab448e57fc1a5e21cbba0283fd1a35d99">wiconnect::NetworkStatus</a></div><div class="ttdeci">NetworkStatus</div><div class="ttdoc">Network connection status. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00239">WiconnectTypes.h:239</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gga5f6f5c916a5dd1676f98da7fa511451da76b3ad647f00a3dc52e71e4ed670e7dc"><div class="ttname"><a href="group__api__network__types.html#gga5f6f5c916a5dd1676f98da7fa511451da76b3ad647f00a3dc52e71e4ed670e7dc">wiconnect::NETWORK_JOIN_RESULT_FAILED</a></div><div class="ttdoc">Failed to join the network. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00260">WiconnectTypes.h:260</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a35624c078c19b7b632d832d15c0d1ef0"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a35624c078c19b7b632d832d15c0d1ef0">wiconnect::FILE_TYPE_COMMAND_HELP</a></div><div class="ttdoc">WiConnect command help file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00412">WiconnectTypes.h:412</a></div></div>
-<div class="ttc" id="group__api__ghm__types_html_ggaf75750bfef61c73f9e4677e9de663df1adcf75ccabf6676b9b8f3050080f4bab7"><div class="ttname"><a href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1adcf75ccabf6676b9b8f3050080f4bab7">wiconnect::GHM_MSG_GET_ALL</a></div><div class="ttdoc">Get entire message. This includes headers. Is JSON formatted. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00477">WiconnectTypes.h:477</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63a35624c078c19b7b632d832d15c0d1ef0"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63a35624c078c19b7b632d832d15c0d1ef0">wiconnect::FILE_TYPE_COMMAND_HELP</a></div><div class="ttdoc">WiConnect command help file. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00413">WiconnectTypes.h:413</a></div></div>
+<div class="ttc" id="group__api__ghm__types_html_ggaf75750bfef61c73f9e4677e9de663df1adcf75ccabf6676b9b8f3050080f4bab7"><div class="ttname"><a href="group__api__ghm__types.html#ggaf75750bfef61c73f9e4677e9de663df1adcf75ccabf6676b9b8f3050080f4bab7">wiconnect::GHM_MSG_GET_ALL</a></div><div class="ttdoc">Get entire message. This includes headers. Is JSON formatted. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00478">WiconnectTypes.h:478</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gaa68646bb07ee9f174097b60ac7327342"><div class="ttname"><a href="group__api__network__types.html#gaa68646bb07ee9f174097b60ac7327342">wiconnect::IpStrBuffer</a></div><div class="ttdeci">char IpStrBuffer[18]</div><div class="ttdoc">Buffer to hold an IP address string. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00329">WiconnectTypes.h:329</a></div></div>
 <div class="ttc" id="group__api__network__types_html_ggac5aead2b4cca0122a60168e75ea41d36a2728fe7e544bee45b00ef95117085eae"><div class="ttname"><a href="group__api__network__types.html#ggac5aead2b4cca0122a60168e75ea41d36a2728fe7e544bee45b00ef95117085eae">wiconnect::NETWORK_RSSI_POOR</a></div><div class="ttdoc">> -70 dBm </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00273">WiconnectTypes.h:273</a></div></div>
-<div class="ttc" id="structwiconnect_1_1_http_socket_args_html"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html">wiconnect::HttpSocketArgs</a></div><div class="ttdoc">Struct for hold HTTP socket configuration. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00365">WiconnectTypes.h:365</a></div></div>
+<div class="ttc" id="structwiconnect_1_1_http_socket_args_html"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html">wiconnect::HttpSocketArgs</a></div><div class="ttdoc">Struct for hold HTTP socket configuration. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00366">WiconnectTypes.h:366</a></div></div>
 <div class="ttc" id="group__api__network__types_html_gga5f6f5c916a5dd1676f98da7fa511451da60569216928bd30142e2e143eaf58475"><div class="ttname"><a href="group__api__network__types.html#gga5f6f5c916a5dd1676f98da7fa511451da60569216928bd30142e2e143eaf58475">wiconnect::NETWORK_JOIN_RESULT_JOINING</a></div><div class="ttdoc">Currently attempting to join. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00255">WiconnectTypes.h:255</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a8d6d7c580a7aa3c4d64d41cac6e0307a"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a8d6d7c580a7aa3c4d64d41cac6e0307a">wiconnect::WICONNECT_PINNAME_TO_GPIO_NO_MAPPING</a></div><div class="ttdoc">No mapping found for given pin. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00189">WiconnectTypes.h:189</a></div></div>
-<div class="ttc" id="structwiconnect_1_1_http_socket_args_html_a57564bc3fed87b9ab2d3f4fff3d2dc24"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html#a57564bc3fed87b9ab2d3f4fff3d2dc24">wiconnect::HttpSocketArgs::openOnly</a></div><div class="ttdeci">bool openOnly</div><div class="ttdoc">Only open the connection, don&#39;t issue the request yet. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00369">WiconnectTypes.h:369</a></div></div>
+<div class="ttc" id="structwiconnect_1_1_http_socket_args_html_a57564bc3fed87b9ab2d3f4fff3d2dc24"><div class="ttname"><a href="structwiconnect_1_1_http_socket_args.html#a57564bc3fed87b9ab2d3f4fff3d2dc24">wiconnect::HttpSocketArgs::openOnly</a></div><div class="ttdeci">bool openOnly</div><div class="ttdoc">Only open the connection, don&#39;t issue the request yet. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00370">WiconnectTypes.h:370</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05ab3f9c2611514967ca4f155e35f522cc2"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ab3f9c2611514967ca4f155e35f522cc2">wiconnect::WICONNECT_NOT_OPENED_FOR_READING</a></div><div class="ttdoc">The file is not open for reading. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00193">WiconnectTypes.h:193</a></div></div>
 <div class="ttc" id="group__api__socket__types_html_gga69dc55558df4c81599c5fb3dff98756da6469a1b9d8fa6448c0f6f13e0028a60e"><div class="ttname"><a href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da6469a1b9d8fa6448c0f6f13e0028a60e">wiconnect::SOCKET_TYPE_UNKNOWN</a></div><div class="ttdoc">Socket type not known. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00341">WiconnectTypes.h:341</a></div></div>
-<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63ac2bf941d4f7f23cabf7c781c5741dc04"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ac2bf941d4f7f23cabf7c781c5741dc04">wiconnect::FILE_TYPE_UPGRADE_APP</a></div><div class="ttdoc">Internal upgrade application. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00402">WiconnectTypes.h:402</a></div></div>
+<div class="ttc" id="group__api__file__types_html_gga9919a4237eea2b0d1f27c16d64e62c63ac2bf941d4f7f23cabf7c781c5741dc04"><div class="ttname"><a href="group__api__file__types.html#gga9919a4237eea2b0d1f27c16d64e62c63ac2bf941d4f7f23cabf7c781c5741dc04">wiconnect::FILE_TYPE_UPGRADE_APP</a></div><div class="ttdoc">Internal upgrade application. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00403">WiconnectTypes.h:403</a></div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
--- a/doc/mbed/html/classwiconnect_1_1_socket_interface-members.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/classwiconnect_1_1_socket_interface-members.html	Mon Feb 23 20:30:18 2015 -0800
@@ -115,19 +115,20 @@
 <table class="directory">
   <tr class="even"><td class="entry"><a class="el" href="group__api__socket__misc.html#ga8a80d96efac7cc514fe7fc61d1878106">closeAllSockets</a>()</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="group__api__socket__misc.html#ga3316a2d22f865774960f3af90b54baf0">connect</a>(WiconnectSocket &amp;socket, SocketType type, const char *host, uint16_t remortPort, uint16_t localPort, const void *args)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec">httpAddHeader</a>(WiconnectSocket &amp;socket, const char *key, const char *value)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed">httpConnect</a>(WiconnectSocket &amp;socket, const char *url, const HttpSocketArgs *args)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6">httpGet</a>(WiconnectSocket &amp;socket, const char *url, bool openOnly=false, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">httpGetStatus</a>(WiconnectSocket &amp;socket, uint32_t *statusCodePtr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#gabcb3d69b2b1718e7ebe1ed171dec1f85">httpHead</a>(WiconnectSocket &amp;socket, const char *url, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#ga1b6a3ebdbd164f0eb683fc335ef4d365">httpPost</a>(WiconnectSocket &amp;socket, const char *url, const char *contextType, bool openOnly=true, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__tcp.html#ga9e12bc568b7e8d72152e53a90de13035">tcpAccept</a>(WiconnectSocket &amp;socket, uint32_t timeoutMs=WICONNECT_WAIT_FOREVER)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__socket__tcp.html#gaddca62644b64e2640abdc1fc5f526559">tcpConnect</a>(WiconnectSocket &amp;socket, const char *host, uint16_t remortPort)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__tcp.html#gadf3ba6b5941028eec0442c3e8e9dfc2f">tcpListen</a>(uint16_t listeningPort, int maxClients=0)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__socket__tcp.html#ga3d0137ebe308674e75f81457c38679d0">tcpServerStop</a>(void)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__tls.html#ga099eebadd568e150a9f2188d04444e96">tlsConnect</a>(WiconnectSocket &amp;socket, const char *host, uint16_t remortPort, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__socket__udp.html#gac61e0445efcfa48fb98b5b2bc0b77119">udpConnect</a>(WiconnectSocket &amp;socket, const char *host, uint16_t remortPort, uint16_t localPort=SOCKET_ANY_PORT)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__udp.html#ga067fb0d662d8e27e3f5b561ded29a51a">udpListen</a>(WiconnectUdpServer &amp;udpServer, uint16_t listeningPort)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">httpAcceptWebSocket</a>(WiconnectSocket &amp;socket, uint32_t timeoutMs=WICONNECT_WAIT_FOREVER)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec">httpAddHeader</a>(WiconnectSocket &amp;socket, const char *key, const char *value)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed">httpConnect</a>(WiconnectSocket &amp;socket, const char *url, const HttpSocketArgs *args)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6">httpGet</a>(WiconnectSocket &amp;socket, const char *url, bool openOnly=false, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">httpGetStatus</a>(WiconnectSocket &amp;socket, uint32_t *statusCodePtr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#gabcb3d69b2b1718e7ebe1ed171dec1f85">httpHead</a>(WiconnectSocket &amp;socket, const char *url, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#ga1b6a3ebdbd164f0eb683fc335ef4d365">httpPost</a>(WiconnectSocket &amp;socket, const char *url, const char *contextType, bool openOnly=true, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__socket__tcp.html#ga9e12bc568b7e8d72152e53a90de13035">tcpAccept</a>(WiconnectSocket &amp;socket, uint32_t timeoutMs=WICONNECT_WAIT_FOREVER)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__tcp.html#gaddca62644b64e2640abdc1fc5f526559">tcpConnect</a>(WiconnectSocket &amp;socket, const char *host, uint16_t remortPort)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__socket__tcp.html#gadf3ba6b5941028eec0442c3e8e9dfc2f">tcpListen</a>(uint16_t listeningPort, int maxClients=0)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__tcp.html#ga3d0137ebe308674e75f81457c38679d0">tcpServerStop</a>(void)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__socket__tls.html#ga099eebadd568e150a9f2188d04444e96">tlsConnect</a>(WiconnectSocket &amp;socket, const char *host, uint16_t remortPort, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__udp.html#gac61e0445efcfa48fb98b5b2bc0b77119">udpConnect</a>(WiconnectSocket &amp;socket, const char *host, uint16_t remortPort, uint16_t localPort=SOCKET_ANY_PORT)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__socket__udp.html#ga067fb0d662d8e27e3f5b561ded29a51a">udpListen</a>(WiconnectUdpServer &amp;udpServer, uint16_t listeningPort)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 </div><!-- doc-content -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
--- a/doc/mbed/html/classwiconnect_1_1_socket_interface.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/classwiconnect_1_1_socket_interface.html	Mon Feb 23 20:30:18 2015 -0800
@@ -168,6 +168,9 @@
 <tr class="memitem:gadf59ca0783b89ee32f205e33f1bd5517"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">httpGetStatus</a> (<a class="el" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> &amp;socket, uint32_t *statusCodePtr)</td></tr>
 <tr class="memdesc:gadf59ca0783b89ee32f205e33f1bd5517"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the HTTP status code from HTTP request.  <a href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">More...</a><br /></td></tr>
 <tr class="separator:gadf59ca0783b89ee32f205e33f1bd5517"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga856d6866c6fc59ebedccade4822acbc8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">httpAcceptWebSocket</a> (<a class="el" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> &amp;socket, uint32_t timeoutMs=<a class="el" href="group__api__core__macro.html#ga580e5f45fee866c845e0d3fd1eb1744a">WICONNECT_WAIT_FOREVER</a>)</td></tr>
+<tr class="memdesc:ga856d6866c6fc59ebedccade4822acbc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wait for next HTTP Server WebSocket to connect.  <a href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">More...</a><br /></td></tr>
+<tr class="separator:ga856d6866c6fc59ebedccade4822acbc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>The provides an interface for creating TCP/UDP/TLS/HTTP client sockets. A client socket connects to a remote server. </p>
--- a/doc/mbed/html/classwiconnect_1_1_socket_interface.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/classwiconnect_1_1_socket_interface.js	Mon Feb 23 20:30:18 2015 -0800
@@ -2,6 +2,7 @@
 [
     [ "closeAllSockets", "group__api__socket__misc.html#ga8a80d96efac7cc514fe7fc61d1878106", null ],
     [ "connect", "group__api__socket__misc.html#ga3316a2d22f865774960f3af90b54baf0", null ],
+    [ "httpAcceptWebSocket", "group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8", null ],
     [ "httpAddHeader", "group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec", null ],
     [ "httpConnect", "group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed", null ],
     [ "httpGet", "group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6", null ],
--- a/doc/mbed/html/classwiconnect_1_1_wiconnect-members.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/classwiconnect_1_1_wiconnect-members.html	Mon Feb 23 20:30:18 2015 -0800
@@ -165,30 +165,32 @@
   <tr><td class="entry"><a class="el" href="group__api__ghm__com.html#ga26ef47c451e7dbe869f19f5f36695e7c">ghmWrite</a>(const char *elementName, uint32_t uintValue)</td><td class="entry"><a class="el" href="classwiconnect_1_1_ghm_interface.html">wiconnect::GhmInterface</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="group__api__ghm__com.html#gab524e64f4bbae826c27bf39d7f2d3c2e">ghmWrite</a>(const char *elementName, int32_t intValue)</td><td class="entry"><a class="el" href="classwiconnect_1_1_ghm_interface.html">wiconnect::GhmInterface</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="group__api__ghm__com.html#ga5eb797aba87a3ab76d742afe34292ee6">ghmWrite</a>(const GhmElementArray *elementArray)</td><td class="entry"><a class="el" href="classwiconnect_1_1_ghm_interface.html">wiconnect::GhmInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec">httpAddHeader</a>(WiconnectSocket &amp;socket, const char *key, const char *value)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed">httpConnect</a>(WiconnectSocket &amp;socket, const char *url, const HttpSocketArgs *args)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6">httpGet</a>(WiconnectSocket &amp;socket, const char *url, bool openOnly=false, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">httpGetStatus</a>(WiconnectSocket &amp;socket, uint32_t *statusCodePtr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#gabcb3d69b2b1718e7ebe1ed171dec1f85">httpHead</a>(WiconnectSocket &amp;socket, const char *url, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#ga1b6a3ebdbd164f0eb683fc335ef4d365">httpPost</a>(WiconnectSocket &amp;socket, const char *url, const char *contextType, bool openOnly=true, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__core__misc.html#gae2e3add2e60543d0e3340ed7a9e034ad">init</a>(bool bringNetworkUp=false)</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__conversion__util.html#gaff8b0af70f4d4be792b943ad3af27303">ipToStr</a>(uint32_t ip, char *ipStrBuffer=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__core__misc.html#gab00c7110984f6d6187241d17a4a431ff">isInitialized</a>()</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__network__setup.html#gab52d3a01427d0e8bd52460d992144f65">isWebSetupRunning</a>(bool *isRunningPtr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__network__wlan.html#gac439d0af5a17da32d405e25dcba83d16">join</a>(const char *ssid=NULL, const char *password=NULL, const Callback &amp;completeHandler=Callback())</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__network__wlan.html#ga14dc0f4fa58a7ebb25b77fae22052328">leave</a>()</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__file__methods.html#ga10536639c61213c037883dade021838f">listFiles</a>(FileList &amp;list, const char *name=NULL, FileType type=FILE_TYPE_ANY, uint32_t version=0)</td><td class="entry"><a class="el" href="classwiconnect_1_1_file_interface.html">wiconnect::FileInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__network__util.html#ga1770babfc2abc6da7c085ef92709ee89">lookup</a>(const char *domain, uint32_t *ipAddressPtr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__conversion__util.html#ga13ecaf390b4bf4a68b51a6b18e669134">macAddressToStr</a>(const MacAddress *macAddress, char *macStrBuffer=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr><td class="entry"><a class="el" href="group__conversion__util.html#ga5a682e671900b9b7f931137deb847fa6">networkJoinResultToStr</a>(NetworkJoinResult joinResult)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__conversion__util.html#gae02c549079cfb0350117cd6343a3d66f">networkSecurityToStr</a>(NetworkSecurity security)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr><td class="entry"><a class="el" href="group__conversion__util.html#gacff5a4927d79e8b4c0d5a3050f5950b0">networkStatusToStr</a>(NetworkStatus status)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__file__methods.html#gaaf2977c691be09aeda102267a6769583">openFile</a>(WiconnectFile &amp;file, const char *name)</td><td class="entry"><a class="el" href="classwiconnect_1_1_file_interface.html">wiconnect::FileInterface</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__network__util.html#ga1da909dadb6f0e90218927ed350f72bc">ping</a>(const char *domain=NULL, uint32_t *timeMsPtr=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__core__misc.html#gabec1504eb7f486085dad82c4a94310e3">reset</a>()</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__api__core__misc.html#gada79343aece515e00f9be4045d3858a0">responseToInt32</a>(int32_t *int32Ptr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="group__api__core__misc.html#gac40b2964149e60245ff3cac6adbcd565">responseToUint32</a>(uint32_t *uint32Ptr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
-  <tr><td class="entry"><a class="el" href="group__conversion__util.html#ga6216eed4cc05c37ce1ed13a0fbb6acd8">rssiToSignalStrength</a>(int rssi)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">httpAcceptWebSocket</a>(WiconnectSocket &amp;socket, uint32_t timeoutMs=WICONNECT_WAIT_FOREVER)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec">httpAddHeader</a>(WiconnectSocket &amp;socket, const char *key, const char *value)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed">httpConnect</a>(WiconnectSocket &amp;socket, const char *url, const HttpSocketArgs *args)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6">httpGet</a>(WiconnectSocket &amp;socket, const char *url, bool openOnly=false, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">httpGetStatus</a>(WiconnectSocket &amp;socket, uint32_t *statusCodePtr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__socket__http.html#gabcb3d69b2b1718e7ebe1ed171dec1f85">httpHead</a>(WiconnectSocket &amp;socket, const char *url, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__socket__http.html#ga1b6a3ebdbd164f0eb683fc335ef4d365">httpPost</a>(WiconnectSocket &amp;socket, const char *url, const char *contextType, bool openOnly=true, const char *certFilename=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_socket_interface.html">wiconnect::SocketInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__core__misc.html#gae2e3add2e60543d0e3340ed7a9e034ad">init</a>(bool bringNetworkUp=false)</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__conversion__util.html#gaff8b0af70f4d4be792b943ad3af27303">ipToStr</a>(uint32_t ip, char *ipStrBuffer=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__core__misc.html#gab00c7110984f6d6187241d17a4a431ff">isInitialized</a>()</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__network__setup.html#gab52d3a01427d0e8bd52460d992144f65">isWebSetupRunning</a>(bool *isRunningPtr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__network__wlan.html#gac439d0af5a17da32d405e25dcba83d16">join</a>(const char *ssid=NULL, const char *password=NULL, const Callback &amp;completeHandler=Callback())</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__network__wlan.html#ga14dc0f4fa58a7ebb25b77fae22052328">leave</a>()</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__file__methods.html#ga10536639c61213c037883dade021838f">listFiles</a>(FileList &amp;list, const char *name=NULL, FileType type=FILE_TYPE_ANY, uint32_t version=0)</td><td class="entry"><a class="el" href="classwiconnect_1_1_file_interface.html">wiconnect::FileInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__network__util.html#ga1770babfc2abc6da7c085ef92709ee89">lookup</a>(const char *domain, uint32_t *ipAddressPtr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__conversion__util.html#ga13ecaf390b4bf4a68b51a6b18e669134">macAddressToStr</a>(const MacAddress *macAddress, char *macStrBuffer=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__conversion__util.html#ga5a682e671900b9b7f931137deb847fa6">networkJoinResultToStr</a>(NetworkJoinResult joinResult)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="group__conversion__util.html#gae02c549079cfb0350117cd6343a3d66f">networkSecurityToStr</a>(NetworkSecurity security)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__conversion__util.html#gacff5a4927d79e8b4c0d5a3050f5950b0">networkStatusToStr</a>(NetworkStatus status)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__file__methods.html#gaaf2977c691be09aeda102267a6769583">openFile</a>(WiconnectFile &amp;file, const char *name)</td><td class="entry"><a class="el" href="classwiconnect_1_1_file_interface.html">wiconnect::FileInterface</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__network__util.html#ga1da909dadb6f0e90218927ed350f72bc">ping</a>(const char *domain=NULL, uint32_t *timeMsPtr=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__core__misc.html#gabec1504eb7f486085dad82c4a94310e3">reset</a>()</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__api__core__misc.html#gada79343aece515e00f9be4045d3858a0">responseToInt32</a>(int32_t *int32Ptr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__core__misc.html#gac40b2964149e60245ff3cac6adbcd565">responseToUint32</a>(uint32_t *uint32Ptr)</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="group__conversion__util.html#ga6216eed4cc05c37ce1ed13a0fbb6acd8">rssiToSignalStrength</a>(int rssi)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a">saveSettings</a>()</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="group__api__network__util.html#gacdf014d8aca9de33dbc1563c6bb1f956">scan</a>(ScanResultList &amp;resultList, const uint8_t *channelList=NULL, const char *ssid=NULL)</td><td class="entry"><a class="el" href="classwiconnect_1_1_network_interface.html">wiconnect::NetworkInterface</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="group__api__core__send__command.html#gadd23f2f86fcc0a438dad798ab3353505">sendCommand</a>(const Callback &amp;completeCallback, char *responseBuffer, int responseBufferLen, TimerTimeout timeoutMs, const ReaderFunc &amp;reader, void *user, const char *cmd, va_list vaList)</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="group__api__core__send__command.html#gaa36b07b28a166fe51f9dc92bcab5d3d8">sendCommand</a>(char *responseBuffer, int responseBufferLen, TimerTimeout timeoutMs, const ReaderFunc &amp;reader, void *user, const char *cmd, va_list vaList)</td><td class="entry"><a class="el" href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></td><td class="entry"></td></tr>
--- a/doc/mbed/html/classwiconnect_1_1_wiconnect.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/classwiconnect_1_1_wiconnect.html	Mon Feb 23 20:30:18 2015 -0800
@@ -231,6 +231,9 @@
 <tr class="memitem:ga670947ef630233f7866f885500548233"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core__settings.html#ga670947ef630233f7866f885500548233">getSetting</a> (const char *settingStr, char *valueBuffer, uint16_t valueBufferLen)</td></tr>
 <tr class="memdesc:ga670947ef630233f7866f885500548233"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a module setting.  <a href="group__api__core__settings.html#ga670947ef630233f7866f885500548233">More...</a><br /></td></tr>
 <tr class="separator:ga670947ef630233f7866f885500548233"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga7dc2351dfb8a7360b2972ecdf9cdf01a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a">saveSettings</a> ()</td></tr>
+<tr class="memdesc:ga7dc2351dfb8a7360b2972ecdf9cdf01a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save settings to Non-Volatile Memory.  <a href="group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a">More...</a><br /></td></tr>
+<tr class="separator:ga7dc2351dfb8a7360b2972ecdf9cdf01a"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga851795595a422a14249b7ea9f0038c4c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core__settings.html#ga851795595a422a14249b7ea9f0038c4c">setBlockingEnabled</a> (bool blockingEnabled)</td></tr>
 <tr class="memdesc:ga851795595a422a14249b7ea9f0038c4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets if API calls are blocking or non-blocking.  <a href="group__api__core__settings.html#ga851795595a422a14249b7ea9f0038c4c">More...</a><br /></td></tr>
 <tr class="separator:ga851795595a422a14249b7ea9f0038c4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -378,6 +381,9 @@
 <tr class="memitem:gadf59ca0783b89ee32f205e33f1bd5517 inherit pub_methods_classwiconnect_1_1_socket_interface"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">httpGetStatus</a> (<a class="el" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> &amp;socket, uint32_t *statusCodePtr)</td></tr>
 <tr class="memdesc:gadf59ca0783b89ee32f205e33f1bd5517 inherit pub_methods_classwiconnect_1_1_socket_interface"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the HTTP status code from HTTP request.  <a href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">More...</a><br /></td></tr>
 <tr class="separator:gadf59ca0783b89ee32f205e33f1bd5517 inherit pub_methods_classwiconnect_1_1_socket_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga856d6866c6fc59ebedccade4822acbc8 inherit pub_methods_classwiconnect_1_1_socket_interface"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">httpAcceptWebSocket</a> (<a class="el" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> &amp;socket, uint32_t timeoutMs=<a class="el" href="group__api__core__macro.html#ga580e5f45fee866c845e0d3fd1eb1744a">WICONNECT_WAIT_FOREVER</a>)</td></tr>
+<tr class="memdesc:ga856d6866c6fc59ebedccade4822acbc8 inherit pub_methods_classwiconnect_1_1_socket_interface"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wait for next HTTP Server WebSocket to connect.  <a href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">More...</a><br /></td></tr>
+<tr class="separator:ga856d6866c6fc59ebedccade4822acbc8 inherit pub_methods_classwiconnect_1_1_socket_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="inherit_header pub_methods_classwiconnect_1_1_file_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classwiconnect_1_1_file_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classwiconnect_1_1_file_interface.html">wiconnect::FileInterface</a></td></tr>
 <tr class="memitem:ga16fb09105975644879eb09581ce486e5 inherit pub_methods_classwiconnect_1_1_file_interface"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__file__methods.html#ga16fb09105975644879eb09581ce486e5">createFile</a> (const <a class="el" href="classwiconnect_1_1_reader_func.html">ReaderFunc</a> &amp;reader, void *user, const char *name, uint32_t size, uint32_t version=0, <a class="el" href="group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63">FileType</a> type=FILE_TYPE_ANY, bool isEssential=false, int32_t checksum=-1)</td></tr>
 <tr class="memdesc:ga16fb09105975644879eb09581ce486e5 inherit pub_methods_classwiconnect_1_1_file_interface"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a file on the <a class="el" href="classwiconnect_1_1_wiconnect.html" title="The root WiConnect library class. This class inheriets all WiConnect functionality. ">Wiconnect</a> WiFi module filesystem.  <a href="group__api__file__methods.html#ga16fb09105975644879eb09581ce486e5">More...</a><br /></td></tr>
--- a/doc/mbed/html/classwiconnect_1_1_wiconnect.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/classwiconnect_1_1_wiconnect.js	Mon Feb 23 20:30:18 2015 -0800
@@ -20,6 +20,7 @@
     [ "reset", "group__api__core__misc.html#gabec1504eb7f486085dad82c4a94310e3", null ],
     [ "responseToInt32", "group__api__core__misc.html#gada79343aece515e00f9be4045d3858a0", null ],
     [ "responseToUint32", "group__api__core__misc.html#gac40b2964149e60245ff3cac6adbcd565", null ],
+    [ "saveSettings", "group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a", null ],
     [ "sendCommand", "group__api__core__send__command.html#gadd23f2f86fcc0a438dad798ab3353505", null ],
     [ "sendCommand", "group__api__core__send__command.html#gaa36b07b28a166fe51f9dc92bcab5d3d8", null ],
     [ "sendCommand", "group__api__core__send__command.html#gabe0e5c170b9c6ec7d6dc96a3639c721e", null ],
@@ -43,5 +44,6 @@
     [ "setSetting", "group__api__core__settings.html#ga085a17a466905069940611bdd14c1d3e", null ],
     [ "stopCurrentCommand", "group__api__core__send__command.html#ga4a9bd29de1d5c496fbcc28ecfa51e7c0", null ],
     [ "updateFirmware", "group__api__core__misc.html#gad447fe3341539eb9b276d269645bb632", null ],
+    [ "updateRequired", "group__api__core__misc.html#gaa4fbf58d622cf370f5445ddd15536170", null ],
     [ "wakeup", "group__api__core__misc.html#gad552c8f23dd0a0e8844ee1fc4d9358e5", null ]
 ];
\ No newline at end of file
--- a/doc/mbed/html/functions.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/functions.html	Mon Feb 23 20:30:18 2015 -0800
@@ -86,7 +86,7 @@
   <div id="navrow4" class="tabs3">
     <ul class="tablist">
       <li><a href="#index_c"><span>c</span></a></li>
-      <li class="current"><a href="#index_d"><span>d</span></a></li>
+      <li><a href="#index_d"><span>d</span></a></li>
       <li><a href="#index_e"><span>e</span></a></li>
       <li><a href="#index_f"><span>f</span></a></li>
       <li><a href="#index_g"><span>g</span></a></li>
@@ -103,7 +103,7 @@
       <li><a href="#index_t"><span>t</span></a></li>
       <li><a href="#index_u"><span>u</span></a></li>
       <li><a href="#index_v"><span>v</span></a></li>
-      <li><a href="#index_w"><span>w</span></a></li>
+      <li class="current"><a href="#index_w"><span>w</span></a></li>
     </ul>
   </div>
 </div><!-- top -->
@@ -165,7 +165,7 @@
 : <a class="el" href="group__api__core__misc.html#ga9d6c981a54c6ab964b469e4f247142d6">wiconnect::Wiconnect</a>
 </li>
 <li>deleteFile()
-: <a class="el" href="group__api__file__methods.html#gafcf335cef42b7b3d0fd9d5af70c6ef7d">wiconnect::FileInterface</a>
+: <a class="el" href="group__api__file__methods.html#gaa9ea2d05871ee7e7bbfa360b86fefb20">wiconnect::FileInterface</a>
 </li>
 </ul>
 
@@ -240,7 +240,7 @@
 : <a class="el" href="group__api__network__wlan.html#gaa9db3c463cf6b4f351c37671882dd3ee">wiconnect::NetworkInterface</a>
 </li>
 <li>getSetting()
-: <a class="el" href="group__api__core__settings.html#ga670947ef630233f7866f885500548233">wiconnect::Wiconnect</a>
+: <a class="el" href="group__api__core__settings.html#ga9dfd70aac8f0770f300ccf3a126ba296">wiconnect::Wiconnect</a>
 </li>
 <li>getSignalStrength()
 : <a class="el" href="group__api__network__wlan.html#gaba16b9918e55c08285cf5b8b50dbabea">wiconnect::NetworkInterface</a>
@@ -282,12 +282,15 @@
 : <a class="el" href="group__api__ghm__com.html#ga0aa48506edb22c90be513683672b96c7">wiconnect::GhmInterface</a>
 </li>
 <li>ghmWrite()
-: <a class="el" href="group__api__ghm__com.html#gab524e64f4bbae826c27bf39d7f2d3c2e">wiconnect::GhmInterface</a>
+: <a class="el" href="group__api__ghm__com.html#ga5eb797aba87a3ab76d742afe34292ee6">wiconnect::GhmInterface</a>
 </li>
 </ul>
 
 
 <h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>httpAcceptWebSocket()
+: <a class="el" href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">wiconnect::SocketInterface</a>
+</li>
 <li>httpAddHeader()
 : <a class="el" href="group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec">wiconnect::SocketInterface</a>
 </li>
@@ -402,11 +405,14 @@
 
 
 <h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>saveSettings()
+: <a class="el" href="group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a">wiconnect::Wiconnect</a>
+</li>
 <li>scan()
 : <a class="el" href="group__api__network__util.html#gacdf014d8aca9de33dbc1563c6bb1f956">wiconnect::NetworkInterface</a>
 </li>
 <li>sendCommand()
-: <a class="el" href="group__api__core__send__command.html#gadd23f2f86fcc0a438dad798ab3353505">wiconnect::Wiconnect</a>
+: <a class="el" href="group__api__core__send__command.html#ga8c6d84b338847fbdd41f61c5375117e9">wiconnect::Wiconnect</a>
 </li>
 <li>setAssertLogger()
 : <a class="el" href="group__api__core__settings.html#ga273f67fede26be4a3d5d909c5cf8c7e0">wiconnect::Wiconnect</a>
--- a/doc/mbed/html/functions_func.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/functions_func.html	Mon Feb 23 20:30:18 2015 -0800
@@ -49,7 +49,7 @@
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="http://wiconnect.ack.me/2.0/general_overview"><span>WiConnect&#160;Reference&#160;Manual</span></a></li>
       <li><a href="http://www.ack.me/WiConnect"><span>ACKme&#160;Website</span></a></li>
-      <li><a href="http://developer.mbed.org/teams/ACKme/code/WiConnect/"><span>mBed&#160;Repository</span></a></li>
+      <li><a href="http://developer.mbed.org/teams/ACKme/code/WiConnect/"><span>WiConnect&#160;Repository</span></a></li>
       <li>
         <div id="MSearchBox" class="MSearchBoxInactive">
         <span class="left">
@@ -281,6 +281,9 @@
 
 
 <h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>httpAcceptWebSocket()
+: <a class="el" href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">wiconnect::SocketInterface</a>
+</li>
 <li>httpAddHeader()
 : <a class="el" href="group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec">wiconnect::SocketInterface</a>
 </li>
@@ -389,11 +392,14 @@
 
 
 <h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>saveSettings()
+: <a class="el" href="group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a">wiconnect::Wiconnect</a>
+</li>
 <li>scan()
 : <a class="el" href="group__api__network__util.html#gacdf014d8aca9de33dbc1563c6bb1f956">wiconnect::NetworkInterface</a>
 </li>
 <li>sendCommand()
-: <a class="el" href="group__api__core__send__command.html#gadd23f2f86fcc0a438dad798ab3353505">wiconnect::Wiconnect</a>
+: <a class="el" href="group__api__core__send__command.html#gaac75ca154bd5d5a21c714dd828a92363">wiconnect::Wiconnect</a>
 </li>
 <li>setAssertLogger()
 : <a class="el" href="group__api__core__settings.html#ga273f67fede26be4a3d5d909c5cf8c7e0">wiconnect::Wiconnect</a>
@@ -484,6 +490,9 @@
 <li>updateFirmware()
 : <a class="el" href="group__api__core__misc.html#gad447fe3341539eb9b276d269645bb632">wiconnect::Wiconnect</a>
 </li>
+<li>updateRequired()
+: <a class="el" href="group__api__core__misc.html#gaa4fbf58d622cf370f5445ddd15536170">wiconnect::Wiconnect</a>
+</li>
 </ul>
 
 
@@ -494,6 +503,9 @@
 <li>Wiconnect()
 : <a class="el" href="classwiconnect_1_1_wiconnect.html#ace00de05bc1ae1e56a6b708eb58f172e">wiconnect::Wiconnect</a>
 </li>
+<li>wiconnectVersionToInt()
+: <a class="el" href="group__conversion__util.html#ga84ad058a41473f81547245976d3474d2">wiconnect::Wiconnect</a>
+</li>
 </ul>
 </div><!-- contents -->
 </div><!-- doc-content -->
--- a/doc/mbed/html/functions_vars.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/functions_vars.html	Mon Feb 23 20:30:18 2015 -0800
@@ -49,7 +49,7 @@
       <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
       <li><a href="http://wiconnect.ack.me/2.0/general_overview"><span>WiConnect&#160;Reference&#160;Manual</span></a></li>
       <li><a href="http://www.ack.me/WiConnect"><span>ACKme&#160;Website</span></a></li>
-      <li><a href="http://developer.mbed.org/teams/ACKme/code/WiConnect/"><span>mBed&#160;Repository</span></a></li>
+      <li><a href="http://developer.mbed.org/teams/ACKme/code/WiConnect/"><span>WiConnect&#160;Repository</span></a></li>
       <li>
         <div id="MSearchBox" class="MSearchBoxInactive">
         <span class="left">
--- a/doc/mbed/html/group__api__core__macro.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__core__macro.js	Mon Feb 23 20:30:18 2015 -0800
@@ -27,6 +27,7 @@
     [ "WICONNECT_MAX_QUEUED_COMMANDS", "group__api__core__macro.html#ga7352d6662e438d0969593df9e657d43f", null ],
     [ "WICONNECT_MAX_SOCKETS", "group__api__core__macro.html#ga45fe565132845ca570ded816f25561b0", null ],
     [ "WICONNECT_MAX_VERSION_SIZE", "group__api__core__macro.html#ga1525d7c98c2da34fc1a64de49253abdb", null ],
+    [ "WICONNECT_MINIMUM_VERSION", "group__api__core__macro.html#ga2e7c7d657cf5debc8b385206c13a1c0d", null ],
     [ "WICONNECT_NO_WAIT", "group__api__core__macro.html#ga12620767dcf50182fb9f72fe5d995301", null ],
     [ "WICONNECT_SERIAL_RX_BUFFER", "group__api__core__macro.html#ga53fde64c3e7647a192281a015cd02f48", null ],
     [ "WICONNECT_SUCCEEDED", "group__api__core__macro.html#gabb158b483cd6d8a8d2d4bf8d38bc9830", null ],
--- a/doc/mbed/html/group__api__core__misc.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__core__misc.js	Mon Feb 23 20:30:18 2015 -0800
@@ -13,5 +13,6 @@
     [ "responseToInt32", "group__api__core__misc.html#gada79343aece515e00f9be4045d3858a0", null ],
     [ "responseToUint32", "group__api__core__misc.html#gac40b2964149e60245ff3cac6adbcd565", null ],
     [ "updateFirmware", "group__api__core__misc.html#gad447fe3341539eb9b276d269645bb632", null ],
+    [ "updateRequired", "group__api__core__misc.html#gaa4fbf58d622cf370f5445ddd15536170", null ],
     [ "wakeup", "group__api__core__misc.html#gad552c8f23dd0a0e8844ee1fc4d9358e5", null ]
 ];
\ No newline at end of file
--- a/doc/mbed/html/group__api__core__settings.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__core__settings.html	Mon Feb 23 20:30:18 2015 -0800
@@ -125,6 +125,9 @@
 <tr class="memitem:ga670947ef630233f7866f885500548233"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core__settings.html#ga670947ef630233f7866f885500548233">wiconnect::Wiconnect::getSetting</a> (const char *settingStr, char *valueBuffer, uint16_t valueBufferLen)</td></tr>
 <tr class="memdesc:ga670947ef630233f7866f885500548233"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a module setting.  <a href="#ga670947ef630233f7866f885500548233">More...</a><br /></td></tr>
 <tr class="separator:ga670947ef630233f7866f885500548233"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga7dc2351dfb8a7360b2972ecdf9cdf01a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a">wiconnect::Wiconnect::saveSettings</a> ()</td></tr>
+<tr class="memdesc:ga7dc2351dfb8a7360b2972ecdf9cdf01a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save settings to Non-Volatile Memory.  <a href="#ga7dc2351dfb8a7360b2972ecdf9cdf01a">More...</a><br /></td></tr>
+<tr class="separator:ga7dc2351dfb8a7360b2972ecdf9cdf01a"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga851795595a422a14249b7ea9f0038c4c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core__settings.html#ga851795595a422a14249b7ea9f0038c4c">wiconnect::Wiconnect::setBlockingEnabled</a> (bool blockingEnabled)</td></tr>
 <tr class="memdesc:ga851795595a422a14249b7ea9f0038c4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets if API calls are blocking or non-blocking.  <a href="#ga851795595a422a14249b7ea9f0038c4c">More...</a><br /></td></tr>
 <tr class="separator:ga851795595a422a14249b7ea9f0038c4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -290,6 +293,24 @@
 
 </div>
 </div>
+<a class="anchor" id="ga7dc2351dfb8a7360b2972ecdf9cdf01a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> wiconnect::Wiconnect::saveSettings </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Save settings to Non-Volatile Memory. </p>
+<dl class="section return"><dt>Returns</dt><dd>Result of method. See <a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> </dd></dl>
+
+</div>
+</div>
 <a class="anchor" id="ga273f67fede26be4a3d5d909c5cf8c7e0"></a>
 <div class="memitem">
 <div class="memproto">
--- a/doc/mbed/html/group__api__core__settings.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__core__settings.js	Mon Feb 23 20:30:18 2015 -0800
@@ -5,6 +5,7 @@
     [ "getSetting", "group__api__core__settings.html#ga16d5022d1fbd784fe0fd90a56911c5bc", null ],
     [ "getSetting", "group__api__core__settings.html#ga9dfd70aac8f0770f300ccf3a126ba296", null ],
     [ "getSetting", "group__api__core__settings.html#ga670947ef630233f7866f885500548233", null ],
+    [ "saveSettings", "group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a", null ],
     [ "setAssertLogger", "group__api__core__settings.html#ga273f67fede26be4a3d5d909c5cf8c7e0", null ],
     [ "setBlockingEnabled", "group__api__core__settings.html#ga851795595a422a14249b7ea9f0038c4c", null ],
     [ "setCommandDefaultTimeout", "group__api__core__settings.html#gacae50138f9388a66496408f9c2bf6a6f", null ],
--- a/doc/mbed/html/group__api__core__types.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__core__types.html	Mon Feb 23 20:30:18 2015 -0800
@@ -276,7 +276,7 @@
 <p>The WiFi module's firmware is out-dated. See updateFirmware() to update the firmware. </p>
 </td></tr>
 </table>
-<dl><dt><b>Examples: </b></dt><dd><a class="el" href="tcp_server_2example_8cpp-example.html#a0">tcp_server/example.cpp</a>, and <a class="el" href="web_setup_2example_8cpp-example.html#a0">web_setup/example.cpp</a>.</dd>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="http_get_2example_8cpp-example.html#a0">http_get/example.cpp</a>, <a class="el" href="join_2example_8cpp-example.html#a0">join/example.cpp</a>, <a class="el" href="ota_2example_8cpp-example.html#a0">ota/example.cpp</a>, <a class="el" href="tcp_server_2example_8cpp-example.html#a0">tcp_server/example.cpp</a>, and <a class="el" href="web_setup_2example_8cpp-example.html#a0">web_setup/example.cpp</a>.</dd>
 </dl>
 <p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00166">166</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
 
--- a/doc/mbed/html/group__api__core__types.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__core__types.js	Mon Feb 23 20:30:18 2015 -0800
@@ -21,6 +21,7 @@
       [ "reset", "group__api__core__misc.html#gabec1504eb7f486085dad82c4a94310e3", null ],
       [ "responseToInt32", "group__api__core__misc.html#gada79343aece515e00f9be4045d3858a0", null ],
       [ "responseToUint32", "group__api__core__misc.html#gac40b2964149e60245ff3cac6adbcd565", null ],
+      [ "saveSettings", "group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a", null ],
       [ "sendCommand", "group__api__core__send__command.html#gadd23f2f86fcc0a438dad798ab3353505", null ],
       [ "sendCommand", "group__api__core__send__command.html#gaa36b07b28a166fe51f9dc92bcab5d3d8", null ],
       [ "sendCommand", "group__api__core__send__command.html#gabe0e5c170b9c6ec7d6dc96a3639c721e", null ],
@@ -44,6 +45,7 @@
       [ "setSetting", "group__api__core__settings.html#ga085a17a466905069940611bdd14c1d3e", null ],
       [ "stopCurrentCommand", "group__api__core__send__command.html#ga4a9bd29de1d5c496fbcc28ecfa51e7c0", null ],
       [ "updateFirmware", "group__api__core__misc.html#gad447fe3341539eb9b276d269645bb632", null ],
+      [ "updateRequired", "group__api__core__misc.html#gaa4fbf58d622cf370f5445ddd15536170", null ],
       [ "wakeup", "group__api__core__misc.html#gad552c8f23dd0a0e8844ee1fc4d9358e5", null ]
     ] ],
     [ "Callback", "classwiconnect_1_1_callback.html", null ],
@@ -74,6 +76,7 @@
       [ "WICONNECT_NOT_CONNECTED", "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05aecb3384d1dc5a61345346a8cd63527b2", null ],
       [ "WICONNECT_UNDERFLOW", "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a7d4f9bd8b2b8ccc2ad902271e5241b02", null ],
       [ "WICONNECT_MONITOR_NOT_AVAILABLE", "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a28240905349a60a6b52bddbbd152ea5e", null ],
-      [ "WICONNECT_NOT_OPENED_FOR_READING", "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ab3f9c2611514967ca4f155e35f522cc2", null ]
+      [ "WICONNECT_NOT_OPENED_FOR_READING", "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ab3f9c2611514967ca4f155e35f522cc2", null ],
+      [ "WICONNECT_FIRMWARE_OUTDATED", "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e", null ]
     ] ]
 ];
\ No newline at end of file
--- a/doc/mbed/html/group__api__file__types.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__file__types.html	Mon Feb 23 20:30:18 2015 -0800
@@ -218,7 +218,7 @@
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00381">381</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
+<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00382">382</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
 
 </div>
 </div>
@@ -272,7 +272,7 @@
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00400">400</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
+<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00401">401</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
 
 </div>
 </div>
--- a/doc/mbed/html/group__api__ghm__types.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__ghm__types.html	Mon Feb 23 20:30:18 2015 -0800
@@ -179,7 +179,7 @@
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00473">473</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
+<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00474">474</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
 
 </div>
 </div>
@@ -206,7 +206,7 @@
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00462">462</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
+<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00463">463</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
 
 </div>
 </div>
--- a/doc/mbed/html/group__api__socket__http.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__socket__http.html	Mon Feb 23 20:30:18 2015 -0800
@@ -128,10 +128,49 @@
 <tr class="memitem:gadf59ca0783b89ee32f205e33f1bd5517"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517">wiconnect::SocketInterface::httpGetStatus</a> (<a class="el" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> &amp;socket, uint32_t *statusCodePtr)</td></tr>
 <tr class="memdesc:gadf59ca0783b89ee32f205e33f1bd5517"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the HTTP status code from HTTP request.  <a href="#gadf59ca0783b89ee32f205e33f1bd5517">More...</a><br /></td></tr>
 <tr class="separator:gadf59ca0783b89ee32f205e33f1bd5517"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga856d6866c6fc59ebedccade4822acbc8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8">wiconnect::SocketInterface::httpAcceptWebSocket</a> (<a class="el" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> &amp;socket, uint32_t timeoutMs=<a class="el" href="group__api__core__macro.html#ga580e5f45fee866c845e0d3fd1eb1744a">WICONNECT_WAIT_FOREVER</a>)</td></tr>
+<tr class="memdesc:ga856d6866c6fc59ebedccade4822acbc8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wait for next HTTP Server WebSocket to connect.  <a href="#ga856d6866c6fc59ebedccade4822acbc8">More...</a><br /></td></tr>
+<tr class="separator:ga856d6866c6fc59ebedccade4822acbc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <p>HTTP methods. </p>
 <h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ga856d6866c6fc59ebedccade4822acbc8"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> wiconnect::SocketInterface::httpAcceptWebSocket </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> &amp;&#160;</td>
+          <td class="paramname"><em>socket</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">uint32_t&#160;</td>
+          <td class="paramname"><em>timeoutMs</em> = <code><a class="el" href="group__api__core__macro.html#ga580e5f45fee866c845e0d3fd1eb1744a">WICONNECT_WAIT_FOREVER</a></code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Wait for next HTTP Server WebSocket to connect. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">socket</td><td>Socket to connected websocket </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">timeoutMs</td><td>Optional, specifiy maximum amount of time in ms to wait for a client </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Result of method. See <a class="el" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> </dd></dl>
+
+</div>
+</div>
 <a class="anchor" id="gabed18edc44f464bac64ce8a6dc3617ec"></a>
 <div class="memitem">
 <div class="memproto">
--- a/doc/mbed/html/group__api__socket__http.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__socket__http.js	Mon Feb 23 20:30:18 2015 -0800
@@ -1,5 +1,6 @@
 var group__api__socket__http =
 [
+    [ "httpAcceptWebSocket", "group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8", null ],
     [ "httpAddHeader", "group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec", null ],
     [ "httpConnect", "group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed", null ],
     [ "httpGet", "group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6", null ],
--- a/doc/mbed/html/group__api__socket__types.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__socket__types.html	Mon Feb 23 20:30:18 2015 -0800
@@ -139,7 +139,9 @@
 <br />
 &#160;&#160;<a class="el" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da77625728d545a400e0eae1483225ff91">wiconnect::SOCKET_TYPE_UDPS</a>, 
 <br />
-&#160;&#160;<a class="el" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f">wiconnect::SOCKET_TYPE_GHM</a>
+&#160;&#160;<a class="el" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f">wiconnect::SOCKET_TYPE_GHM</a>, 
+<br />
+&#160;&#160;<a class="el" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a">wiconnect::SOCKET_TYPE_WS</a>
 <br />
  }</td></tr>
 <tr class="memdesc:ga69dc55558df4c81599c5fb3dff98756d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Socket type.  <a href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">More...</a><br /></td></tr>
@@ -181,7 +183,7 @@
 </td></tr>
 </table>
 
-<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00354">354</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
+<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00355">355</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
 
 </div>
 </div>
@@ -218,6 +220,9 @@
 <tr><td class="fieldname"><a class="anchor" id="gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f"></a>SOCKET_TYPE_GHM&#160;</td><td class="fielddoc">
 <p>goHACK.me message type </p>
 </td></tr>
+<tr><td class="fieldname"><a class="anchor" id="gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a"></a>SOCKET_TYPE_WS&#160;</td><td class="fielddoc">
+<p>WebSocket type. </p>
+</td></tr>
 </table>
 
 <p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00339">339</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
--- a/doc/mbed/html/group__api__socket__types.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__api__socket__types.js	Mon Feb 23 20:30:18 2015 -0800
@@ -3,6 +3,7 @@
     [ "SocketInterface", "classwiconnect_1_1_socket_interface.html", [
       [ "closeAllSockets", "group__api__socket__misc.html#ga8a80d96efac7cc514fe7fc61d1878106", null ],
       [ "connect", "group__api__socket__misc.html#ga3316a2d22f865774960f3af90b54baf0", null ],
+      [ "httpAcceptWebSocket", "group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8", null ],
       [ "httpAddHeader", "group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec", null ],
       [ "httpConnect", "group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed", null ],
       [ "httpGet", "group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6", null ],
@@ -37,6 +38,7 @@
       [ "SOCKET_TYPE_UDP", "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756dab1b41b1c4daf8d171414b68e9033cfbc", null ],
       [ "SOCKET_TYPE_HTTP", "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da3d433f1b569dc48077861cde0e464751", null ],
       [ "SOCKET_TYPE_UDPS", "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da77625728d545a400e0eae1483225ff91", null ],
-      [ "SOCKET_TYPE_GHM", "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f", null ]
+      [ "SOCKET_TYPE_GHM", "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f", null ],
+      [ "SOCKET_TYPE_WS", "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a", null ]
     ] ]
 ];
\ No newline at end of file
--- a/doc/mbed/html/group__conversion__util.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/group__conversion__util.js	Mon Feb 23 20:30:18 2015 -0800
@@ -16,5 +16,6 @@
     [ "strToIp", "group__conversion__util.html#ga93bdb8669a70adaa61dc76073ce66591", null ],
     [ "strToMacAddress", "group__conversion__util.html#ga347f05073370d6872a5cdac74de39b1b", null ],
     [ "strToNetworkSecurity", "group__conversion__util.html#gad7d49be19f9ca91bc129668dd50d9e57", null ],
-    [ "strToSsid", "group__conversion__util.html#ga6a479a58591ead92dcf0586e11fcad17", null ]
+    [ "strToSsid", "group__conversion__util.html#ga6a479a58591ead92dcf0586e11fcad17", null ],
+    [ "wiconnectVersionToInt", "group__conversion__util.html#ga84ad058a41473f81547245976d3474d2", null ]
 ];
\ No newline at end of file
--- a/doc/mbed/html/http__get_2example_8cpp_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/http__get_2example_8cpp_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -108,7 +108,7 @@
 <div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> */</span></div>
 <div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div>
 <div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment">// the URL of the webpage to GET</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#define HTTP_URL &quot;http://ack.me&quot;</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#define HTTP_URL &quot;http://mbed.org&quot;</span></div>
 <div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
 <div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div>
 <div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
@@ -144,95 +144,101 @@
 <div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment"> */</span></div>
 <div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
 <div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;{</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    <span class="comment">// STEP 1: Instantiate WiConnect Library</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    </div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
 <div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <span class="comment">// Setup  wiconnect serial interface configuration</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="comment">// Here we only specify the rx buffer size and not rx buffer pointer, this means</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <span class="comment">// The serial RX buffer will be dynamically allocated</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256, NULL);</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="comment">// Instantiate and initialize the Wiconnect library</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="comment">// Here we only specify the buffer size and not buffer pointer, this means</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="comment">// The internal buffer will be dynamically allocated</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="comment">// set the default timeout to 15s as some websites take awhile to respond</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    wiconnect.setCommandDefaultTimeout(15000);</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="comment">// STEP 1: Instantiate WiConnect Library</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <span class="comment">// Setup  wiconnect serial interface configuration</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="comment">// Here we only specify the rx buffer size and not rx buffer pointer, this means</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="comment">// The serial RX buffer will be dynamically allocated</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256, NULL);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="comment">// Instantiate and initialize the Wiconnect library</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="comment">// Here we only specify the buffer size and not buffer pointer, this means</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <span class="comment">// The internal buffer will be dynamically allocated</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <span class="comment">// set the default timeout to 15s as some websites take awhile to respond</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    wiconnect.setCommandDefaultTimeout(15000);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;</div>
 <div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
 <div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="keywordflow">if</span>(wiconnect.init(<span class="keyword">true</span>) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    {</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        {</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;            printf(<span class="stringliteral">&quot;The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example&quot;</span>);</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        }</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        {</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;            printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module!\r\n&quot;</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                   <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>);</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        }</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    }</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;</div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <span class="comment">// STEP 3: Issue a HTTP GET request</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init(<span class="keyword">true</span>)))</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    {</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        {</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;            printf(<span class="stringliteral">&quot;** The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example\r\n\r\n&quot;</span>);</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        }</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <span class="keywordflow">else</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        {</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;            printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module!\r\n&quot;</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                   <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>);</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        }</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    }</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;</div>
 <div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    <span class="comment">// Initiate a socket with an RX buffer of 256 bytes</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <span class="comment">// We&#39;re not specifying the rx buffer pointer so that means it&#39;s dynamically allocated</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> socket(256);</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    printf(<span class="stringliteral">&quot;Issuing HTTP Request: %s\r\n&quot;</span>, HTTP_URL);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="comment">// STEP 3: Issue a HTTP GET request</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    <span class="comment">// Initiate a socket with an RX buffer of 256 bytes</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <span class="comment">// We&#39;re not specifying the rx buffer pointer so that means it&#39;s dynamically allocated</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> socket(256);</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;</div>
 <div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    <span class="comment">// Issue HTTP request</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    <span class="comment">// NOTE: the module must have valid network credentials</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    <span class="keywordflow">if</span>(wiconnect.httpGet(socket, HTTP_URL) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    {</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        printf(<span class="stringliteral">&quot;Failed to issue HTTP request. Does the module have valid network credentials?\r\n&quot;</span>);</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    }</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    <span class="comment">// STEP 4: Read the HTTP page and print</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    printf(<span class="stringliteral">&quot;Issuing HTTP Request: %s\r\n&quot;</span>, HTTP_URL);</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    <span class="comment">// Issue HTTP request</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="comment">// NOTE: the module must have valid network credentials</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="keywordflow">if</span>(wiconnect.httpGet(socket, HTTP_URL) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    {</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        printf(<span class="stringliteral">&quot;Failed to issue HTTP request. Does the module have valid network credentials?\r\n&quot;</span>);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        printf(<span class="stringliteral">&quot;Use the network join example to configure the module&#39;s network credentials:\r\n&quot;</span>);</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-join_example\r\n&quot;</span>);</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    }</div>
 <div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    uint8_t *dataPtr;</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    uint16_t dataLength;</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="comment">// while there&#39;s data to read, retreive and print it</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    <span class="keywordflow">while</span>(socket.read(&amp;dataPtr, &amp;dataLength) == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    {</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        fwrite(dataPtr, 1, dataLength, stdout);</div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    }</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    <span class="comment">// STEP 5: Done!</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <span class="comment">// STEP 4: Read the HTTP page and print</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    uint8_t *dataPtr;</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    uint16_t dataLength;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    <span class="comment">// while there&#39;s data to read, retreive and print it</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    <span class="keywordflow">while</span>(socket.read(&amp;dataPtr, &amp;dataLength) == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    {</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        fwrite(dataPtr, 1, dataLength, stdout);</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    }</div>
 <div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;</div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    printf(<span class="stringliteral">&quot;HTTP GET example has completed!\r\n&quot;</span>);</div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>){} <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;}</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    <span class="comment">// STEP 5: Done!</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    printf(<span class="stringliteral">&quot;HTTP GET example has completed!\r\n&quot;</span>);</div>
 <div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>){} <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;}</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div>
+<div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_serial_config_html"><div class="ttname"><a href="classwiconnect_1_1_serial_config.html">wiconnect::SerialConfig</a></div><div class="ttdoc">Host<->Wiconnect Module serial configuration. </div><div class="ttdef"><b>Definition:</b> <a href="sdk_8h_source.html#l00148">sdk.h:148</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">wiconnect::WICONNECT_FIRMWARE_OUTDATED</a></div><div class="ttdoc">The WiFi module&#39;s firmware is out-dated. See updateFirmware() to update the firmware. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00194">WiconnectTypes.h:194</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_socket_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect_socket.html">wiconnect::WiconnectSocket</a></div><div class="ttdoc">Connection object to remote server. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_socket_8h_source.html#l00043">WiconnectSocket.h:43</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">wiconnect::WICONNECT_SUCCESS</a></div><div class="ttdoc">Command successfully completed. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00172">WiconnectTypes.h:172</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></div><div class="ttdoc">The root WiConnect library class. This class inheriets all WiConnect functionality. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_interface_8h_source.html#l00078">WiconnectInterface.h:78</a></div></div>
+<div class="ttc" id="group__api__core__macro_html_gab27aa3ef76302b5221766abfd4f47e64"><div class="ttname"><a href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a></div><div class="ttdeci">#define WICONNECT_FAILED(result, func)</div><div class="ttdoc">Populates result with return value from func, returns TRUE if return value contains error...</div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00093">WiconnectTypes.h:93</a></div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
--- a/doc/mbed/html/http_get_2example_8cpp-example.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/http_get_2example_8cpp-example.html	Mon Feb 23 20:30:18 2015 -0800
@@ -116,7 +116,7 @@
 <div class="line"><span class="comment"> */</span></div>
 <div class="line"></div>
 <div class="line"><span class="comment">// the URL of the webpage to GET</span></div>
-<div class="line"><span class="preprocessor">#define HTTP_URL &quot;http://ack.me&quot;</span></div>
+<div class="line"><span class="preprocessor">#define HTTP_URL &quot;http://mbed.org&quot;</span></div>
 <div class="line"></div>
 <div class="line"></div>
 <div class="line"></div>
@@ -152,6 +152,8 @@
 <div class="line"><span class="comment"> */</span></div>
 <div class="line"><span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
 <div class="line">{</div>
+<div class="line">    <a name="a0"></a><a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
+<div class="line">    </div>
 <div class="line">    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
 <div class="line"></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
@@ -178,12 +180,12 @@
 <div class="line">    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
 <div class="line"></div>
 <div class="line">    <span class="comment">// Initialize communication with WiFi module</span></div>
-<div class="line">    <span class="keywordflow">if</span>(wiconnect.init(<span class="keyword">true</span>) != <a name="a0"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line">    <span class="keywordflow">if</span>(<a name="a1"></a><a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init(<span class="keyword">true</span>)))</div>
 <div class="line">    {</div>
-<div class="line">        <span class="keywordflow">if</span>(result == <a name="a1"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
+<div class="line">        <span class="keywordflow">if</span>(result == <a name="a2"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
 <div class="line">        {</div>
-<div class="line">            printf(<span class="stringliteral">&quot;The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
-<div class="line">            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example&quot;</span>);</div>
+<div class="line">            printf(<span class="stringliteral">&quot;** The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
+<div class="line">            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example\r\n\r\n&quot;</span>);</div>
 <div class="line">        }</div>
 <div class="line">        <span class="keywordflow">else</span></div>
 <div class="line">        {</div>
@@ -207,9 +209,11 @@
 <div class="line"></div>
 <div class="line">    <span class="comment">// Issue HTTP request</span></div>
 <div class="line">    <span class="comment">// NOTE: the module must have valid network credentials</span></div>
-<div class="line">    <span class="keywordflow">if</span>(wiconnect.httpGet(socket, HTTP_URL) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line">    <span class="keywordflow">if</span>(wiconnect.httpGet(socket, HTTP_URL) != <a name="a3"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
 <div class="line">    {</div>
 <div class="line">        printf(<span class="stringliteral">&quot;Failed to issue HTTP request. Does the module have valid network credentials?\r\n&quot;</span>);</div>
+<div class="line">        printf(<span class="stringliteral">&quot;Use the network join example to configure the module&#39;s network credentials:\r\n&quot;</span>);</div>
+<div class="line">        printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-join_example\r\n&quot;</span>);</div>
 <div class="line">        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
 <div class="line">    }</div>
 <div class="line"></div>
--- a/doc/mbed/html/join_2example_8cpp-example.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/join_2example_8cpp-example.html	Mon Feb 23 20:30:18 2015 -0800
@@ -125,8 +125,6 @@
 <div class="line"><span class="preprocessor">#define NETWORK_PASSWORD &quot;\&quot;&lt;YOUR NETWORK PASSWORD HERE&gt;\&quot;&quot;</span></div>
 <div class="line"></div>
 <div class="line"></div>
-<div class="line"></div>
-<div class="line"></div>
 <div class="line"><span class="comment">/******************************************************************************</span></div>
 <div class="line"><span class="comment"> * Includes</span></div>
 <div class="line"><span class="comment"> */</span></div>
@@ -150,13 +148,13 @@
 <div class="line"><span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
 <div class="line"></div>
 <div class="line"></div>
-<div class="line"></div>
-<div class="line"></div>
 <div class="line"><span class="comment">/******************************************************************************</span></div>
 <div class="line"><span class="comment"> * Starting point of application</span></div>
 <div class="line"><span class="comment"> */</span></div>
 <div class="line"><span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
 <div class="line">{</div>
+<div class="line">    <a name="a0"></a><a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
+<div class="line">    </div>
 <div class="line">    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
 <div class="line"></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
@@ -173,7 +171,6 @@
 <div class="line">    <span class="comment">// The internal buffer will be dynamically allocated</span></div>
 <div class="line">    Wiconnect wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
 <div class="line"></div>
-<div class="line"></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
 <div class="line">    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
@@ -181,12 +178,12 @@
 <div class="line">    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
 <div class="line"></div>
 <div class="line">    <span class="comment">// Initialize communication with WiFi module</span></div>
-<div class="line">    <span class="keywordflow">if</span>(wiconnect.init(<span class="keyword">true</span>) != <a name="a0"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line">    <span class="keywordflow">if</span>(<a name="a1"></a><a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init(<span class="keyword">true</span>)))</div>
 <div class="line">    {</div>
-<div class="line">        <span class="keywordflow">if</span>(result == <a name="a1"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
+<div class="line">        <span class="keywordflow">if</span>(result == <a name="a2"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
 <div class="line">        {</div>
-<div class="line">            printf(<span class="stringliteral">&quot;The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
-<div class="line">            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example&quot;</span>);</div>
+<div class="line">            printf(<span class="stringliteral">&quot;** The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
+<div class="line">            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example\r\n\r\n&quot;</span>);</div>
 <div class="line">        }</div>
 <div class="line">        <span class="keywordflow">else</span></div>
 <div class="line">        {</div>
@@ -203,7 +200,7 @@
 <div class="line"></div>
 <div class="line">    printf(<span class="stringliteral">&quot;Joining network: %s....\r\n&quot;</span>, NETWORK_SSID);</div>
 <div class="line"></div>
-<div class="line">    <span class="keywordflow">if</span>(wiconnect.join(NETWORK_SSID, NETWORK_PASSWORD) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line">    <span class="keywordflow">if</span>(wiconnect.join(NETWORK_SSID, NETWORK_PASSWORD) != <a name="a3"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
 <div class="line">    {</div>
 <div class="line">        printf(<span class="stringliteral">&quot;Failed to send join command\r\n&quot;</span>);</div>
 <div class="line">        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
--- a/doc/mbed/html/join_2example_8cpp_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/join_2example_8cpp_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -118,104 +118,103 @@
 <div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#define NETWORK_PASSWORD &quot;\&quot;&lt;YOUR NETWORK PASSWORD HERE&gt;\&quot;&quot;</span></div>
 <div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
 <div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment"> * Includes</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment">// include C library headers</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span> <span class="comment">// needed for printf</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="comment">// include target specific defines</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#include &quot;target_config.h&quot;</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment">// include the Wiconnect Host Library API header</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#include &quot;Wiconnect.h&quot;</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="comment"> * Includes</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment">// include C library headers</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span> <span class="comment">// needed for printf</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="comment">// include target specific defines</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#include &quot;target_config.h&quot;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="comment">// include the Wiconnect Host Library API header</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#include &quot;Wiconnect.h&quot;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
 <div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="comment"> * Global Defines</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="comment">// Serial used for printfs to terminal (i.e. NOT used for WiConnect)</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment"> * Starting point of application</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;{</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment"> * Global Defines</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment">// Serial used for printfs to terminal (i.e. NOT used for WiConnect)</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="comment"> * Starting point of application</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;{</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="comment">// STEP 1: Instantiate WiConnect Library</span></div>
 <div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="comment">// STEP 1: Instantiate WiConnect Library</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="comment">// Setup  wiconnect serial interface configuration</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="comment">// Here we only specify the rx buffer size and not rx buffer pointer, this means</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="comment">// The serial RX buffer will be dynamically allocated</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256, NULL);</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <span class="comment">// Instantiate the Wiconnect library</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <span class="comment">// Here we only specify the buffer size and not buffer pointer, this means</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="comment">// The internal buffer will be dynamically allocated</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;</div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    <span class="keywordflow">if</span>(wiconnect.init(<span class="keyword">true</span>) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    {</div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        {</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;            printf(<span class="stringliteral">&quot;The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example&quot;</span>);</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        }</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        {</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;            printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module!\r\n&quot;</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                   <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>);</div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        }</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    }</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <span class="comment">// STEP 3: Join a network using the specified parameters</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    printf(<span class="stringliteral">&quot;Joining network: %s....\r\n&quot;</span>, NETWORK_SSID);</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <span class="keywordflow">if</span>(wiconnect.join(NETWORK_SSID, NETWORK_PASSWORD) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    {</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        printf(<span class="stringliteral">&quot;Failed to send join command\r\n&quot;</span>);</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    }</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    <span class="comment">// STEP 4: Done!</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="comment">// Setup  wiconnect serial interface configuration</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="comment">// Here we only specify the rx buffer size and not rx buffer pointer, this means</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="comment">// The serial RX buffer will be dynamically allocated</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256, NULL);</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <span class="comment">// Instantiate the Wiconnect library</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="comment">// Here we only specify the buffer size and not buffer pointer, this means</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <span class="comment">// The internal buffer will be dynamically allocated</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init(<span class="keyword">true</span>)))</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    {</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        {</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;            printf(<span class="stringliteral">&quot;** The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example\r\n\r\n&quot;</span>);</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        }</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        <span class="keywordflow">else</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        {</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;            printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module!\r\n&quot;</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                   <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        }</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;    }</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    <span class="comment">// STEP 3: Join a network using the specified parameters</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    printf(<span class="stringliteral">&quot;Joining network: %s....\r\n&quot;</span>, NETWORK_SSID);</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <span class="keywordflow">if</span>(wiconnect.join(NETWORK_SSID, NETWORK_PASSWORD) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    {</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        printf(<span class="stringliteral">&quot;Failed to send join command\r\n&quot;</span>);</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    }</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="comment">// STEP 4: Done!</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    printf(<span class="stringliteral">&quot;IP Address: %s\r\n&quot;</span>, wiconnect.getIpAddress());</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    printf(<span class="stringliteral">&quot;Network join example has completed!\r\n&quot;</span>);</div>
 <div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    printf(<span class="stringliteral">&quot;IP Address: %s\r\n&quot;</span>, wiconnect.getIpAddress());</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    printf(<span class="stringliteral">&quot;Network join example has completed!\r\n&quot;</span>);</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>){} <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;}</div>
 <div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>){} <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;}</div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div>
+<div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_serial_config_html"><div class="ttname"><a href="classwiconnect_1_1_serial_config.html">wiconnect::SerialConfig</a></div><div class="ttdoc">Host<->Wiconnect Module serial configuration. </div><div class="ttdef"><b>Definition:</b> <a href="sdk_8h_source.html#l00148">sdk.h:148</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">wiconnect::WICONNECT_FIRMWARE_OUTDATED</a></div><div class="ttdoc">The WiFi module&#39;s firmware is out-dated. See updateFirmware() to update the firmware. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00194">WiconnectTypes.h:194</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">wiconnect::WICONNECT_SUCCESS</a></div><div class="ttdoc">Command successfully completed. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00172">WiconnectTypes.h:172</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></div><div class="ttdoc">The root WiConnect library class. This class inheriets all WiConnect functionality. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_interface_8h_source.html#l00078">WiconnectInterface.h:78</a></div></div>
+<div class="ttc" id="group__api__core__macro_html_gab27aa3ef76302b5221766abfd4f47e64"><div class="ttname"><a href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a></div><div class="ttdeci">#define WICONNECT_FAILED(result, func)</div><div class="ttdoc">Populates result with return value from func, returns TRUE if return value contains error...</div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00093">WiconnectTypes.h:93</a></div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
--- a/doc/mbed/html/namespacewiconnect.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/namespacewiconnect.html	Mon Feb 23 20:30:18 2015 -0800
@@ -329,7 +329,9 @@
 <br />
 &#160;&#160;<a class="el" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da77625728d545a400e0eae1483225ff91">SOCKET_TYPE_UDPS</a>, 
 <br />
-&#160;&#160;<a class="el" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f">SOCKET_TYPE_GHM</a>
+&#160;&#160;<a class="el" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f">SOCKET_TYPE_GHM</a>, 
+<br />
+&#160;&#160;<a class="el" href="group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a">SOCKET_TYPE_WS</a>
 <br />
  }</td></tr>
 <tr class="memdesc:ga69dc55558df4c81599c5fb3dff98756d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Socket type.  <a href="group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d">More...</a><br /></td></tr>
--- a/doc/mbed/html/navtree.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/navtree.js	Mon Feb 23 20:30:18 2015 -0800
@@ -28,14 +28,14 @@
     ] ],
     [ "WiConnect Reference Manual", "^http://wiconnect.ack.me/2.0/general_overview", null ],
     [ "ACKme Website", "^http://www.ack.me/WiConnect", null ],
-    [ "mBed Repository", "^http://developer.mbed.org/teams/ACKme/code/WiConnect/", null ]
+    [ "WiConnect Repository", "^http://developer.mbed.org/teams/ACKme/code/WiConnect/", null ]
   ] ]
 ];
 
 var NAVTREEINDEX =
 [
 "annotated.html",
-"group__api__ghm__msg.html#ga451de9d69f7ecbf38e36056e502b94b0"
+"group__api__ghm__examples.html"
 ];
 
 var SYNCONMSG = 'click to disable panel synchronisation';
--- a/doc/mbed/html/navtreeindex0.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/navtreeindex0.js	Mon Feb 23 20:30:18 2015 -0800
@@ -32,16 +32,17 @@
 "group__api__core__examples.html":[1,0,5],
 "group__api__core__macro.html":[1,0,4],
 "group__api__core__macro.html#ga0a14e4bc7a0aed9311b552c0ee8fd7ef":[1,0,4,11],
-"group__api__core__macro.html#ga12620767dcf50182fb9f72fe5d995301":[1,0,4,27],
+"group__api__core__macro.html#ga12620767dcf50182fb9f72fe5d995301":[1,0,4,28],
 "group__api__core__macro.html#ga1525d7c98c2da34fc1a64de49253abdb":[1,0,4,26],
 "group__api__core__macro.html#ga2aa16118029ab13ab41514cb8eb93ba7":[1,0,4,21],
+"group__api__core__macro.html#ga2e7c7d657cf5debc8b385206c13a1c0d":[1,0,4,27],
 "group__api__core__macro.html#ga2e7ffaac225bc56852bb504f531aafa0":[1,0,4,9],
 "group__api__core__macro.html#ga346c951fa5af23cdbf1d18a59b2babd1":[1,0,4,2],
 "group__api__core__macro.html#ga347d0e1228e8174563c6bcf48de18401":[1,0,4,13],
 "group__api__core__macro.html#ga436d782bd2cdce3696eadda1083416af":[1,0,4,20],
 "group__api__core__macro.html#ga45fe565132845ca570ded816f25561b0":[1,0,4,25],
-"group__api__core__macro.html#ga53fde64c3e7647a192281a015cd02f48":[1,0,4,28],
-"group__api__core__macro.html#ga580e5f45fee866c845e0d3fd1eb1744a":[1,0,4,31],
+"group__api__core__macro.html#ga53fde64c3e7647a192281a015cd02f48":[1,0,4,29],
+"group__api__core__macro.html#ga580e5f45fee866c845e0d3fd1eb1744a":[1,0,4,32],
 "group__api__core__macro.html#ga593c6629b59a853057cd6a5547ed3f4f":[1,0,4,19],
 "group__api__core__macro.html#ga596d1da2fb23f4e748c83d64a47e10b3":[1,0,4,4],
 "group__api__core__macro.html#ga6d336ec791dcd22238d2fc4995fb9431":[1,0,4,18],
@@ -58,10 +59,10 @@
 "group__api__core__macro.html#gaacc3ee1a7f283f8ef65cea31f4436a95":[1,0,4,5],
 "group__api__core__macro.html#gaaff0108d684631b2bb88e1f6c255e9ac":[1,0,4,12],
 "group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64":[1,0,4,17],
-"group__api__core__macro.html#gabb158b483cd6d8a8d2d4bf8d38bc9830":[1,0,4,29],
+"group__api__core__macro.html#gabb158b483cd6d8a8d2d4bf8d38bc9830":[1,0,4,30],
 "group__api__core__macro.html#gad466ede4f07512308e38402d777d8380":[1,0,4,8],
 "group__api__core__macro.html#gad7bc04eee187f219f2544905267568b0":[1,0,4,1],
-"group__api__core__macro.html#gae7b6cfdff3a9aef465d5c4434937417d":[1,0,4,30],
+"group__api__core__macro.html#gae7b6cfdff3a9aef465d5c4434937417d":[1,0,4,31],
 "group__api__core__macro.html#gae9cf1249b46e784aa05250e2bcbe2e02":[1,0,4,16],
 "group__api__core__misc.html":[1,0,2],
 "group__api__core__misc.html#ga27b5d6b8207e4ef0f73875606d628da8":[1,0,3,0,10],
@@ -75,16 +76,18 @@
 "group__api__core__misc.html#ga96ac50d85d8ab376755d7d5325de1713":[1,0,2,1],
 "group__api__core__misc.html#ga9d6c981a54c6ab964b469e4f247142d6":[1,0,3,0,3],
 "group__api__core__misc.html#ga9d6c981a54c6ab964b469e4f247142d6":[1,0,2,0],
+"group__api__core__misc.html#gaa4fbf58d622cf370f5445ddd15536170":[1,0,2,13],
+"group__api__core__misc.html#gaa4fbf58d622cf370f5445ddd15536170":[1,0,3,0,44],
 "group__api__core__misc.html#gab00c7110984f6d6187241d17a4a431ff":[1,0,3,0,16],
 "group__api__core__misc.html#gab00c7110984f6d6187241d17a4a431ff":[1,0,2,8],
 "group__api__core__misc.html#gabec1504eb7f486085dad82c4a94310e3":[1,0,3,0,17],
 "group__api__core__misc.html#gabec1504eb7f486085dad82c4a94310e3":[1,0,2,9],
 "group__api__core__misc.html#gac40b2964149e60245ff3cac6adbcd565":[1,0,3,0,19],
 "group__api__core__misc.html#gac40b2964149e60245ff3cac6adbcd565":[1,0,2,11],
-"group__api__core__misc.html#gad447fe3341539eb9b276d269645bb632":[1,0,3,0,42],
+"group__api__core__misc.html#gad447fe3341539eb9b276d269645bb632":[1,0,3,0,43],
 "group__api__core__misc.html#gad447fe3341539eb9b276d269645bb632":[1,0,2,12],
-"group__api__core__misc.html#gad552c8f23dd0a0e8844ee1fc4d9358e5":[1,0,3,0,43],
-"group__api__core__misc.html#gad552c8f23dd0a0e8844ee1fc4d9358e5":[1,0,2,13],
+"group__api__core__misc.html#gad552c8f23dd0a0e8844ee1fc4d9358e5":[1,0,3,0,45],
+"group__api__core__misc.html#gad552c8f23dd0a0e8844ee1fc4d9358e5":[1,0,2,14],
 "group__api__core__misc.html#gad8069679fabb52d44647d27703f1a09a":[1,0,3,0,8],
 "group__api__core__misc.html#gad8069679fabb52d44647d27703f1a09a":[1,0,2,3],
 "group__api__core__misc.html#gada79343aece515e00f9be4045d3858a0":[1,0,3,0,18],
@@ -95,58 +98,60 @@
 "group__api__core__send__command.html#ga423c201755b4bac9e069d4ab4c241d1a":[1,0,3,0,4],
 "group__api__core__send__command.html#ga423c201755b4bac9e069d4ab4c241d1a":[1,0,1,1],
 "group__api__core__send__command.html#ga4a9bd29de1d5c496fbcc28ecfa51e7c0":[1,0,1,15],
-"group__api__core__send__command.html#ga4a9bd29de1d5c496fbcc28ecfa51e7c0":[1,0,3,0,41],
+"group__api__core__send__command.html#ga4a9bd29de1d5c496fbcc28ecfa51e7c0":[1,0,3,0,42],
 "group__api__core__send__command.html#ga5666d99d72494995db0a812fcc9bbd09":[1,0,1,13],
-"group__api__core__send__command.html#ga5666d99d72494995db0a812fcc9bbd09":[1,0,3,0,31],
-"group__api__core__send__command.html#ga5f437c3518de14706c6fcff32a0b0f97":[1,0,3,0,25],
+"group__api__core__send__command.html#ga5666d99d72494995db0a812fcc9bbd09":[1,0,3,0,32],
 "group__api__core__send__command.html#ga5f437c3518de14706c6fcff32a0b0f97":[1,0,1,7],
+"group__api__core__send__command.html#ga5f437c3518de14706c6fcff32a0b0f97":[1,0,3,0,26],
 "group__api__core__send__command.html#ga7eb983a196daa5de20a73fd234dc6f64":[1,0,1,10],
-"group__api__core__send__command.html#ga7eb983a196daa5de20a73fd234dc6f64":[1,0,3,0,28],
+"group__api__core__send__command.html#ga7eb983a196daa5de20a73fd234dc6f64":[1,0,3,0,29],
 "group__api__core__send__command.html#ga8c6d84b338847fbdd41f61c5375117e9":[1,0,1,5],
-"group__api__core__send__command.html#ga8c6d84b338847fbdd41f61c5375117e9":[1,0,3,0,23],
+"group__api__core__send__command.html#ga8c6d84b338847fbdd41f61c5375117e9":[1,0,3,0,24],
 "group__api__core__send__command.html#ga9a89a0dd00f8eedb5e3eb8d4a4ed58df":[1,0,1,12],
-"group__api__core__send__command.html#ga9a89a0dd00f8eedb5e3eb8d4a4ed58df":[1,0,3,0,30],
+"group__api__core__send__command.html#ga9a89a0dd00f8eedb5e3eb8d4a4ed58df":[1,0,3,0,31],
 "group__api__core__send__command.html#ga9d0ade0ec2866d7e0df5391bc69f5698":[1,0,1,14],
-"group__api__core__send__command.html#ga9d0ade0ec2866d7e0df5391bc69f5698":[1,0,3,0,32],
+"group__api__core__send__command.html#ga9d0ade0ec2866d7e0df5391bc69f5698":[1,0,3,0,33],
 "group__api__core__send__command.html#gaa36b07b28a166fe51f9dc92bcab5d3d8":[1,0,1,3],
-"group__api__core__send__command.html#gaa36b07b28a166fe51f9dc92bcab5d3d8":[1,0,3,0,21],
+"group__api__core__send__command.html#gaa36b07b28a166fe51f9dc92bcab5d3d8":[1,0,3,0,22],
 "group__api__core__send__command.html#gaac75ca154bd5d5a21c714dd828a92363":[1,0,1,9],
-"group__api__core__send__command.html#gaac75ca154bd5d5a21c714dd828a92363":[1,0,3,0,27],
+"group__api__core__send__command.html#gaac75ca154bd5d5a21c714dd828a92363":[1,0,3,0,28],
 "group__api__core__send__command.html#gabe0e5c170b9c6ec7d6dc96a3639c721e":[1,0,1,4],
-"group__api__core__send__command.html#gabe0e5c170b9c6ec7d6dc96a3639c721e":[1,0,3,0,22],
+"group__api__core__send__command.html#gabe0e5c170b9c6ec7d6dc96a3639c721e":[1,0,3,0,23],
 "group__api__core__send__command.html#gaca2f1b17d2cc98cbc6dac219ffcf9e84":[1,0,1,6],
-"group__api__core__send__command.html#gaca2f1b17d2cc98cbc6dac219ffcf9e84":[1,0,3,0,24],
+"group__api__core__send__command.html#gaca2f1b17d2cc98cbc6dac219ffcf9e84":[1,0,3,0,25],
 "group__api__core__send__command.html#gadad1c5b3df07a24ab09492edf93dd1f4":[1,0,1,11],
-"group__api__core__send__command.html#gadad1c5b3df07a24ab09492edf93dd1f4":[1,0,3,0,29],
+"group__api__core__send__command.html#gadad1c5b3df07a24ab09492edf93dd1f4":[1,0,3,0,30],
 "group__api__core__send__command.html#gadd23f2f86fcc0a438dad798ab3353505":[1,0,1,2],
-"group__api__core__send__command.html#gadd23f2f86fcc0a438dad798ab3353505":[1,0,3,0,20],
+"group__api__core__send__command.html#gadd23f2f86fcc0a438dad798ab3353505":[1,0,3,0,21],
 "group__api__core__send__command.html#gaf48c1ec0b92af2619ab846baaaa471cd":[1,0,3,0,2],
 "group__api__core__send__command.html#gaf48c1ec0b92af2619ab846baaaa471cd":[1,0,1,0],
 "group__api__core__send__command.html#gaf93db1b2730bb586287f7756f3cdf092":[1,0,1,8],
-"group__api__core__send__command.html#gaf93db1b2730bb586287f7756f3cdf092":[1,0,3,0,26],
+"group__api__core__send__command.html#gaf93db1b2730bb586287f7756f3cdf092":[1,0,3,0,27],
 "group__api__core__settings.html":[1,0,0],
-"group__api__core__settings.html#ga085a17a466905069940611bdd14c1d3e":[1,0,3,0,40],
-"group__api__core__settings.html#ga085a17a466905069940611bdd14c1d3e":[1,0,0,12],
+"group__api__core__settings.html#ga085a17a466905069940611bdd14c1d3e":[1,0,3,0,41],
+"group__api__core__settings.html#ga085a17a466905069940611bdd14c1d3e":[1,0,0,13],
 "group__api__core__settings.html#ga16d5022d1fbd784fe0fd90a56911c5bc":[1,0,0,2],
 "group__api__core__settings.html#ga16d5022d1fbd784fe0fd90a56911c5bc":[1,0,3,0,11],
-"group__api__core__settings.html#ga180b043ec83c53b5bf6b9ef2b187d08d":[1,0,0,10],
-"group__api__core__settings.html#ga180b043ec83c53b5bf6b9ef2b187d08d":[1,0,3,0,38],
-"group__api__core__settings.html#ga273f67fede26be4a3d5d909c5cf8c7e0":[1,0,0,5],
-"group__api__core__settings.html#ga273f67fede26be4a3d5d909c5cf8c7e0":[1,0,3,0,33],
+"group__api__core__settings.html#ga180b043ec83c53b5bf6b9ef2b187d08d":[1,0,0,11],
+"group__api__core__settings.html#ga180b043ec83c53b5bf6b9ef2b187d08d":[1,0,3,0,39],
+"group__api__core__settings.html#ga273f67fede26be4a3d5d909c5cf8c7e0":[1,0,0,6],
+"group__api__core__settings.html#ga273f67fede26be4a3d5d909c5cf8c7e0":[1,0,3,0,34],
 "group__api__core__settings.html#ga670947ef630233f7866f885500548233":[1,0,3,0,13],
 "group__api__core__settings.html#ga670947ef630233f7866f885500548233":[1,0,0,4],
-"group__api__core__settings.html#ga75fb083451ee530a1c19e6a4c1be185e":[1,0,3,0,37],
-"group__api__core__settings.html#ga75fb083451ee530a1c19e6a4c1be185e":[1,0,0,9],
-"group__api__core__settings.html#ga851795595a422a14249b7ea9f0038c4c":[1,0,0,6],
-"group__api__core__settings.html#ga851795595a422a14249b7ea9f0038c4c":[1,0,3,0,34],
-"group__api__core__settings.html#ga8dc9e906da9d4bcb9f44e111bc709042":[1,0,0,8],
-"group__api__core__settings.html#ga8dc9e906da9d4bcb9f44e111bc709042":[1,0,3,0,36],
+"group__api__core__settings.html#ga75fb083451ee530a1c19e6a4c1be185e":[1,0,3,0,38],
+"group__api__core__settings.html#ga75fb083451ee530a1c19e6a4c1be185e":[1,0,0,10],
+"group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a":[1,0,0,5],
+"group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a":[1,0,3,0,20],
+"group__api__core__settings.html#ga851795595a422a14249b7ea9f0038c4c":[1,0,0,7],
+"group__api__core__settings.html#ga851795595a422a14249b7ea9f0038c4c":[1,0,3,0,35],
+"group__api__core__settings.html#ga8dc9e906da9d4bcb9f44e111bc709042":[1,0,3,0,37],
+"group__api__core__settings.html#ga8dc9e906da9d4bcb9f44e111bc709042":[1,0,0,9],
 "group__api__core__settings.html#ga9dfd70aac8f0770f300ccf3a126ba296":[1,0,0,3],
 "group__api__core__settings.html#ga9dfd70aac8f0770f300ccf3a126ba296":[1,0,3,0,12],
-"group__api__core__settings.html#gacae50138f9388a66496408f9c2bf6a6f":[1,0,0,7],
-"group__api__core__settings.html#gacae50138f9388a66496408f9c2bf6a6f":[1,0,3,0,35],
-"group__api__core__settings.html#gace51a2841415a53f54fcce336182f0ec":[1,0,3,0,39],
-"group__api__core__settings.html#gace51a2841415a53f54fcce336182f0ec":[1,0,0,11],
+"group__api__core__settings.html#gacae50138f9388a66496408f9c2bf6a6f":[1,0,0,8],
+"group__api__core__settings.html#gacae50138f9388a66496408f9c2bf6a6f":[1,0,3,0,36],
+"group__api__core__settings.html#gace51a2841415a53f54fcce336182f0ec":[1,0,3,0,40],
+"group__api__core__settings.html#gace51a2841415a53f54fcce336182f0ec":[1,0,0,12],
 "group__api__core__settings.html#gad8d98b8d2610f4ea564bede27e87857e":[1,0,3,0,7],
 "group__api__core__settings.html#gad8d98b8d2610f4ea564bede27e87857e":[1,0,0,1],
 "group__api__core__settings.html#gaf6115968c49c128717cacd2f06b883ad":[1,0,3,0,6],
@@ -162,6 +167,7 @@
 "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a511a4e6fa8470f52110fc64f04cfe5ff":[1,0,3,7,5],
 "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a5bff05280d726da505c6e6ec2f085bd1":[1,0,3,7,1],
 "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a5d9162280a5269a34245bf53c87401a4":[1,0,3,7,15],
+"group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e":[1,0,3,7,22],
 "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a7d4f9bd8b2b8ccc2ad902271e5241b02":[1,0,3,7,19],
 "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a8d6d7c580a7aa3c4d64d41cac6e0307a":[1,0,3,7,17],
 "group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05ab16dea725fe7b09d91a7651f18174cff":[1,0,3,7,14],
@@ -191,8 +197,8 @@
 "group__api__file__methods.html#gaa9ea2d05871ee7e7bbfa360b86fefb20":[1,3,1,0,2],
 "group__api__file__methods.html#gaaf2977c691be09aeda102267a6769583":[1,3,0,4],
 "group__api__file__methods.html#gaaf2977c691be09aeda102267a6769583":[1,3,1,0,4],
+"group__api__file__methods.html#gafcf335cef42b7b3d0fd9d5af70c6ef7d":[1,3,0,1],
 "group__api__file__methods.html#gafcf335cef42b7b3d0fd9d5af70c6ef7d":[1,3,1,0,1],
-"group__api__file__methods.html#gafcf335cef42b7b3d0fd9d5af70c6ef7d":[1,3,0,1],
 "group__api__file__types.html":[1,3,1],
 "group__api__file__types.html#ga9919a4237eea2b0d1f27c16d64e62c63":[1,3,1,4],
 "group__api__file__types.html#gafbe48908f5c190c3b0f272d3016e609e":[1,3,1,3],
@@ -221,8 +227,8 @@
 "group__api__ghm__activate.html":[1,4,0],
 "group__api__ghm__activate.html#ga8bec70f780ca7de9dce1a15830c179ff":[1,4,0,3],
 "group__api__ghm__activate.html#ga8bec70f780ca7de9dce1a15830c179ff":[1,4,3,0,8],
+"group__api__ghm__activate.html#gaa0213731eebd4a14e9099d01ff76beff":[1,4,3,0,0],
 "group__api__ghm__activate.html#gaa0213731eebd4a14e9099d01ff76beff":[1,4,0,0],
-"group__api__ghm__activate.html#gaa0213731eebd4a14e9099d01ff76beff":[1,4,3,0,0],
 "group__api__ghm__activate.html#gad0e0484d1f9a6608475874544f96708b":[1,4,3,0,1],
 "group__api__ghm__activate.html#gad0e0484d1f9a6608475874544f96708b":[1,4,0,1],
 "group__api__ghm__activate.html#gaff03ecaa08146e6925820209cdab56bd":[1,4,0,2],
@@ -236,18 +242,12 @@
 "group__api__ghm__com.html#ga2d4f14ef409c30b49ce2a06b72d10c7f":[1,4,3,0,12],
 "group__api__ghm__com.html#ga2f57fc33ad0e71d608b1350d4e3ab223":[1,4,3,0,15],
 "group__api__ghm__com.html#ga2f57fc33ad0e71d608b1350d4e3ab223":[1,4,1,4],
+"group__api__ghm__com.html#ga3fde7b34da992719b41fc52178b73bc2":[1,4,3,0,11],
 "group__api__ghm__com.html#ga3fde7b34da992719b41fc52178b73bc2":[1,4,1,0],
-"group__api__ghm__com.html#ga3fde7b34da992719b41fc52178b73bc2":[1,4,3,0,11],
 "group__api__ghm__com.html#ga5eb797aba87a3ab76d742afe34292ee6":[1,4,1,7],
 "group__api__ghm__com.html#ga5eb797aba87a3ab76d742afe34292ee6":[1,4,3,0,18],
 "group__api__ghm__com.html#ga965090d4b28bda9f58716b522a6bee12":[1,4,3,0,13],
 "group__api__ghm__com.html#ga965090d4b28bda9f58716b522a6bee12":[1,4,1,2],
 "group__api__ghm__com.html#gab524e64f4bbae826c27bf39d7f2d3c2e":[1,4,3,0,17],
-"group__api__ghm__com.html#gab524e64f4bbae826c27bf39d7f2d3c2e":[1,4,1,6],
-"group__api__ghm__examples.html":[1,4,5],
-"group__api__ghm__macro.html":[1,4,4],
-"group__api__ghm__macro.html#ga44f544c4ecf31c39907fc256ea16e86a":[1,4,4,0],
-"group__api__ghm__macro.html#gaab18c9d71474abbd98b34982644e8069":[1,4,4,1],
-"group__api__ghm__msg.html":[1,4,2],
-"group__api__ghm__msg.html#ga451de9d69f7ecbf38e36056e502b94b0":[1,4,2,0]
+"group__api__ghm__com.html#gab524e64f4bbae826c27bf39d7f2d3c2e":[1,4,1,6]
 };
--- a/doc/mbed/html/navtreeindex1.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/navtreeindex1.js	Mon Feb 23 20:30:18 2015 -0800
@@ -1,16 +1,22 @@
 var NAVTREEINDEX1 =
 {
+"group__api__ghm__examples.html":[1,4,5],
+"group__api__ghm__macro.html":[1,4,4],
+"group__api__ghm__macro.html#ga44f544c4ecf31c39907fc256ea16e86a":[1,4,4,0],
+"group__api__ghm__macro.html#gaab18c9d71474abbd98b34982644e8069":[1,4,4,1],
+"group__api__ghm__msg.html":[1,4,2],
 "group__api__ghm__msg.html#ga451de9d69f7ecbf38e36056e502b94b0":[1,4,3,0,2],
+"group__api__ghm__msg.html#ga451de9d69f7ecbf38e36056e502b94b0":[1,4,2,0],
 "group__api__ghm__msg.html#ga7273f4c691aeccd241327f1be3e8d0e9":[1,4,3,0,3],
 "group__api__ghm__msg.html#ga7273f4c691aeccd241327f1be3e8d0e9":[1,4,2,1],
+"group__api__ghm__msg.html#ga9c6dffaa871f2443a32d75276160682d":[1,4,2,4],
 "group__api__ghm__msg.html#ga9c6dffaa871f2443a32d75276160682d":[1,4,3,0,7],
-"group__api__ghm__msg.html#ga9c6dffaa871f2443a32d75276160682d":[1,4,2,4],
-"group__api__ghm__msg.html#gaa905a010f0e234d290eaef6e42975c29":[1,4,2,3],
 "group__api__ghm__msg.html#gaa905a010f0e234d290eaef6e42975c29":[1,4,3,0,6],
-"group__api__ghm__msg.html#gaaa05391432b2ca38bb416c671f57b234":[1,4,2,2],
+"group__api__ghm__msg.html#gaa905a010f0e234d290eaef6e42975c29":[1,4,2,3],
 "group__api__ghm__msg.html#gaaa05391432b2ca38bb416c671f57b234":[1,4,3,0,5],
+"group__api__ghm__msg.html#gaaa05391432b2ca38bb416c671f57b234":[1,4,2,2],
+"group__api__ghm__msg.html#gadc281f497041b26a151c72a0b5d03543":[1,4,3,0,10],
 "group__api__ghm__msg.html#gadc281f497041b26a151c72a0b5d03543":[1,4,2,6],
-"group__api__ghm__msg.html#gadc281f497041b26a151c72a0b5d03543":[1,4,3,0,10],
 "group__api__ghm__msg.html#gae69971594793e1a10f11a51277909502":[1,4,3,0,9],
 "group__api__ghm__msg.html#gae69971594793e1a10f11a51277909502":[1,4,2,5],
 "group__api__ghm__types.html":[1,4,3],
@@ -27,12 +33,12 @@
 "group__api__network__examples.html":[1,1,6],
 "group__api__network__macros.html":[1,1,5],
 "group__api__network__settings.html":[1,1,0],
+"group__api__network__settings.html#ga0b8fc3d5be0bae9ffcdc1b4b9aee6290":[1,1,0,2],
 "group__api__network__settings.html#ga0b8fc3d5be0bae9ffcdc1b4b9aee6290":[1,1,4,0,2],
-"group__api__network__settings.html#ga0b8fc3d5be0bae9ffcdc1b4b9aee6290":[1,1,0,2],
 "group__api__network__settings.html#ga258d8b80064c6ce311a433affe63a0e9":[1,1,0,5],
 "group__api__network__settings.html#ga258d8b80064c6ce311a433affe63a0e9":[1,1,4,0,16],
+"group__api__network__settings.html#ga291aef702f1c10bf2970394e3458022b":[1,1,4,0,3],
 "group__api__network__settings.html#ga291aef702f1c10bf2970394e3458022b":[1,1,0,3],
-"group__api__network__settings.html#ga291aef702f1c10bf2970394e3458022b":[1,1,4,0,3],
 "group__api__network__settings.html#ga2f7ec21084d3f2835d9c1c201915a9e0":[1,1,0,6],
 "group__api__network__settings.html#ga2f7ec21084d3f2835d9c1c201915a9e0":[1,1,4,0,17],
 "group__api__network__settings.html#ga585cb71d386ee61db3772f4b3218cb6e":[1,1,0,1],
@@ -48,8 +54,8 @@
 "group__api__network__setup.html#gab52d3a01427d0e8bd52460d992144f65":[1,1,4,0,9],
 "group__api__network__setup.html#gac5ca67b7bfa587935b5619e441dc8d8a":[1,1,2,2],
 "group__api__network__setup.html#gac5ca67b7bfa587935b5619e441dc8d8a":[1,1,4,0,20],
+"group__api__network__setup.html#gaea3e133f2ee8c95d8d108c15561f3847":[1,1,4,0,19],
 "group__api__network__setup.html#gaea3e133f2ee8c95d8d108c15561f3847":[1,1,2,1],
-"group__api__network__setup.html#gaea3e133f2ee8c95d8d108c15561f3847":[1,1,4,0,19],
 "group__api__network__types.html":[1,1,4],
 "group__api__network__types.html#ga026bd11cd5df47b7022362243e2d553f":[1,1,4,9],
 "group__api__network__types.html#ga04b095d2e2f32a3fd23e346a4be969d8":[1,1,4,6],
@@ -80,8 +86,8 @@
 "group__api__network__util.html":[1,1,3],
 "group__api__network__util.html#ga1770babfc2abc6da7c085ef92709ee89":[1,1,3,0],
 "group__api__network__util.html#ga1770babfc2abc6da7c085ef92709ee89":[1,1,4,0,12],
+"group__api__network__util.html#ga1da909dadb6f0e90218927ed350f72bc":[1,1,3,1],
 "group__api__network__util.html#ga1da909dadb6f0e90218927ed350f72bc":[1,1,4,0,13],
-"group__api__network__util.html#ga1da909dadb6f0e90218927ed350f72bc":[1,1,3,1],
 "group__api__network__util.html#gacdf014d8aca9de33dbc1563c6bb1f956":[1,1,3,2],
 "group__api__network__util.html#gacdf014d8aca9de33dbc1563c6bb1f956":[1,1,4,0,14],
 "group__api__network__wlan.html":[1,1,1],
@@ -89,12 +95,12 @@
 "group__api__network__wlan.html#ga047ba9670f60406466391cec5bdd28e5":[1,1,4,0,6],
 "group__api__network__wlan.html#ga14dc0f4fa58a7ebb25b77fae22052328":[1,1,1,6],
 "group__api__network__wlan.html#ga14dc0f4fa58a7ebb25b77fae22052328":[1,1,4,0,11],
+"group__api__network__wlan.html#ga70991a2c5865c8f0b44b67de35f3b6b3":[1,1,1,0],
 "group__api__network__wlan.html#ga70991a2c5865c8f0b44b67de35f3b6b3":[1,1,4,0,4],
-"group__api__network__wlan.html#ga70991a2c5865c8f0b44b67de35f3b6b3":[1,1,1,0],
+"group__api__network__wlan.html#gaa9db3c463cf6b4f351c37671882dd3ee":[1,1,1,3],
 "group__api__network__wlan.html#gaa9db3c463cf6b4f351c37671882dd3ee":[1,1,4,0,7],
-"group__api__network__wlan.html#gaa9db3c463cf6b4f351c37671882dd3ee":[1,1,1,3],
+"group__api__network__wlan.html#gaba16b9918e55c08285cf5b8b50dbabea":[1,1,1,4],
 "group__api__network__wlan.html#gaba16b9918e55c08285cf5b8b50dbabea":[1,1,4,0,8],
-"group__api__network__wlan.html#gaba16b9918e55c08285cf5b8b50dbabea":[1,1,1,4],
 "group__api__network__wlan.html#gac439d0af5a17da32d405e25dcba83d16":[1,1,4,0,10],
 "group__api__network__wlan.html#gac439d0af5a17da32d405e25dcba83d16":[1,1,1,5],
 "group__api__network__wlan.html#gafefe6e679d7b48a7127d3ed6371fe58b":[1,1,4,0,5],
@@ -102,37 +108,39 @@
 "group__api__socket.html":[1,2],
 "group__api__socket__examples.html":[1,2,7],
 "group__api__socket__http.html":[1,2,3],
-"group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed":[1,2,3,1],
-"group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed":[1,2,5,0,3],
-"group__api__socket__http.html#ga1b6a3ebdbd164f0eb683fc335ef4d365":[1,2,3,5],
-"group__api__socket__http.html#ga1b6a3ebdbd164f0eb683fc335ef4d365":[1,2,5,0,7],
-"group__api__socket__http.html#gabcb3d69b2b1718e7ebe1ed171dec1f85":[1,2,5,0,6],
-"group__api__socket__http.html#gabcb3d69b2b1718e7ebe1ed171dec1f85":[1,2,3,4],
-"group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec":[1,2,3,0],
-"group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec":[1,2,5,0,2],
-"group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6":[1,2,3,2],
-"group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6":[1,2,5,0,4],
-"group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517":[1,2,3,3],
-"group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517":[1,2,5,0,5],
+"group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed":[1,2,3,2],
+"group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed":[1,2,5,0,4],
+"group__api__socket__http.html#ga1b6a3ebdbd164f0eb683fc335ef4d365":[1,2,3,6],
+"group__api__socket__http.html#ga1b6a3ebdbd164f0eb683fc335ef4d365":[1,2,5,0,8],
+"group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8":[1,2,3,0],
+"group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8":[1,2,5,0,2],
+"group__api__socket__http.html#gabcb3d69b2b1718e7ebe1ed171dec1f85":[1,2,5,0,7],
+"group__api__socket__http.html#gabcb3d69b2b1718e7ebe1ed171dec1f85":[1,2,3,5],
+"group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec":[1,2,3,1],
+"group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec":[1,2,5,0,3],
+"group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6":[1,2,5,0,5],
+"group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6":[1,2,3,3],
+"group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517":[1,2,3,4],
+"group__api__socket__http.html#gadf59ca0783b89ee32f205e33f1bd5517":[1,2,5,0,6],
 "group__api__socket__macro.html":[1,2,6],
 "group__api__socket__macro.html#ga311741238658c89ea9344d32c0cec923":[1,2,6,1],
 "group__api__socket__macro.html#gae54117ebe433295ef992b9ca83c46d98":[1,2,6,0],
 "group__api__socket__misc.html":[1,2,4],
+"group__api__socket__misc.html#ga3316a2d22f865774960f3af90b54baf0":[1,2,4,1],
 "group__api__socket__misc.html#ga3316a2d22f865774960f3af90b54baf0":[1,2,5,0,1],
-"group__api__socket__misc.html#ga3316a2d22f865774960f3af90b54baf0":[1,2,4,1],
+"group__api__socket__misc.html#ga8a80d96efac7cc514fe7fc61d1878106":[1,2,4,0],
 "group__api__socket__misc.html#ga8a80d96efac7cc514fe7fc61d1878106":[1,2,5,0,0],
-"group__api__socket__misc.html#ga8a80d96efac7cc514fe7fc61d1878106":[1,2,4,0],
 "group__api__socket__tcp.html":[1,2,0],
 "group__api__socket__tcp.html#ga3d0137ebe308674e75f81457c38679d0":[1,2,0,3],
-"group__api__socket__tcp.html#ga3d0137ebe308674e75f81457c38679d0":[1,2,5,0,11],
-"group__api__socket__tcp.html#ga9e12bc568b7e8d72152e53a90de13035":[1,2,5,0,8],
+"group__api__socket__tcp.html#ga3d0137ebe308674e75f81457c38679d0":[1,2,5,0,12],
+"group__api__socket__tcp.html#ga9e12bc568b7e8d72152e53a90de13035":[1,2,5,0,9],
 "group__api__socket__tcp.html#ga9e12bc568b7e8d72152e53a90de13035":[1,2,0,0],
-"group__api__socket__tcp.html#gaddca62644b64e2640abdc1fc5f526559":[1,2,5,0,9],
+"group__api__socket__tcp.html#gaddca62644b64e2640abdc1fc5f526559":[1,2,5,0,10],
 "group__api__socket__tcp.html#gaddca62644b64e2640abdc1fc5f526559":[1,2,0,1],
 "group__api__socket__tcp.html#gadf3ba6b5941028eec0442c3e8e9dfc2f":[1,2,0,2],
-"group__api__socket__tcp.html#gadf3ba6b5941028eec0442c3e8e9dfc2f":[1,2,5,0,10],
+"group__api__socket__tcp.html#gadf3ba6b5941028eec0442c3e8e9dfc2f":[1,2,5,0,11],
 "group__api__socket__tls.html":[1,2,2],
-"group__api__socket__tls.html#ga099eebadd568e150a9f2188d04444e96":[1,2,5,0,12],
+"group__api__socket__tls.html#ga099eebadd568e150a9f2188d04444e96":[1,2,5,0,13],
 "group__api__socket__tls.html#ga099eebadd568e150a9f2188d04444e96":[1,2,2,0],
 "group__api__socket__types.html":[1,2,5],
 "group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d":[1,2,5,5],
@@ -140,6 +148,7 @@
 "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da0c365c200e62d61bf22798c25ccb96b4":[1,2,5,5,2],
 "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da3d433f1b569dc48077861cde0e464751":[1,2,5,5,4],
 "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da6469a1b9d8fa6448c0f6f13e0028a60e":[1,2,5,5,0],
+"group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a":[1,2,5,5,7],
 "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da77625728d545a400e0eae1483225ff91":[1,2,5,5,5],
 "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da94c82597ad724e81c0bace9ed64ebc5f":[1,2,5,5,6],
 "group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756dab1b41b1c4daf8d171414b68e9033cfbc":[1,2,5,5,3],
@@ -148,9 +157,9 @@
 "group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6ab271a5cd1775076aeb8c25fc14da12cb":[1,2,5,4,1],
 "group__api__socket__types.html#ggadc1d6e26d4138c536bd5dce7ed4569d6afc257aa28936e9fa8a332995b5449685":[1,2,5,4,0],
 "group__api__socket__udp.html":[1,2,1],
-"group__api__socket__udp.html#ga067fb0d662d8e27e3f5b561ded29a51a":[1,2,5,0,14],
+"group__api__socket__udp.html#ga067fb0d662d8e27e3f5b561ded29a51a":[1,2,5,0,15],
 "group__api__socket__udp.html#ga067fb0d662d8e27e3f5b561ded29a51a":[1,2,1,1],
-"group__api__socket__udp.html#gac61e0445efcfa48fb98b5b2bc0b77119":[1,2,5,0,13],
+"group__api__socket__udp.html#gac61e0445efcfa48fb98b5b2bc0b77119":[1,2,5,0,14],
 "group__api__socket__udp.html#gac61e0445efcfa48fb98b5b2bc0b77119":[1,2,1,0],
 "group__conversion__util.html":[1,5],
 "group__conversion__util.html#ga13ecaf390b4bf4a68b51a6b18e669134":[1,5,6],
@@ -159,6 +168,7 @@
 "group__conversion__util.html#ga6216eed4cc05c37ce1ed13a0fbb6acd8":[1,5,10],
 "group__conversion__util.html#ga6a479a58591ead92dcf0586e11fcad17":[1,5,16],
 "group__conversion__util.html#ga7503f1876a6e1f5086d8b4bb2c1a653a":[1,5,0],
+"group__conversion__util.html#ga84ad058a41473f81547245976d3474d2":[1,5,17],
 "group__conversion__util.html#ga8d8da39cd5d2948367429ed4d8885c6b":[1,5,1],
 "group__conversion__util.html#ga93bdb8669a70adaa61dc76073ce66591":[1,5,13],
 "group__conversion__util.html#gac96e2d2fca60cba12e7429626f9186be":[1,5,4],
@@ -172,8 +182,8 @@
 "group__conversion__util.html#gaff8b0af70f4d4be792b943ad3af27303":[1,5,5],
 "hierarchy.html":[3,2],
 "http_get_2example_8cpp-example.html":[2,0],
+"index.html":[],
 "index.html":[0],
-"index.html":[],
 "index.html#Overview":[0,0],
 "index.html#features":[0,2],
 "index.html#notes":[0,1],
--- a/doc/mbed/html/ota_2example_8cpp-example.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/ota_2example_8cpp-example.html	Mon Feb 23 20:30:18 2015 -0800
@@ -106,7 +106,7 @@
 <p>It works as follows:</p><ol type="1">
 <li>Instantiate the WiConnect Library</li>
 <li>Initiate Communication with WiFi Module</li>
-<li>Join a network using the specified parameters</li>
+<li>Set the network credentials</li>
 <li>Call the 'updateFirmware' wiconnect API and wait for the update to complete (takes ~60s)</li>
 <li>That's it!</li>
 </ol>
@@ -127,8 +127,6 @@
 <div class="line"><span class="preprocessor">#define NETWORK_PASSWORD &quot;\&quot;&lt;YOUR NETWORK PASSWORD HERE&gt;\&quot;&quot;</span></div>
 <div class="line"></div>
 <div class="line"></div>
-<div class="line"></div>
-<div class="line"></div>
 <div class="line"><span class="comment">/******************************************************************************</span></div>
 <div class="line"><span class="comment"> * Includes</span></div>
 <div class="line"><span class="comment"> */</span></div>
@@ -152,13 +150,13 @@
 <div class="line"><span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
 <div class="line"></div>
 <div class="line"></div>
-<div class="line"></div>
-<div class="line"></div>
 <div class="line"><span class="comment">/******************************************************************************</span></div>
 <div class="line"><span class="comment"> * Starting point of application</span></div>
 <div class="line"><span class="comment"> */</span></div>
 <div class="line"><span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
 <div class="line">{</div>
+<div class="line">    <a name="a0"></a><a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
+<div class="line">    </div>
 <div class="line">    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
 <div class="line"></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
@@ -175,7 +173,6 @@
 <div class="line">    <span class="comment">// The internal buffer will be dynamically allocated</span></div>
 <div class="line">    Wiconnect wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
 <div class="line"></div>
-<div class="line"></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
 <div class="line">    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
@@ -183,33 +180,51 @@
 <div class="line">    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
 <div class="line"></div>
 <div class="line">    <span class="comment">// Initialize communication with WiFi module</span></div>
-<div class="line">    <span class="keywordflow">if</span>(wiconnect.init(<span class="keyword">true</span>) != <a name="a0"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line">    <span class="keywordflow">if</span>(<a name="a1"></a><a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init(<span class="keyword">true</span>)))</div>
 <div class="line">    {</div>
-<div class="line">        printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module!\r\n&quot;</span></div>
-<div class="line">                <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>);</div>
-<div class="line">        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line">        <span class="comment">// if the error is that the firmware is out-dated, then continue, else stop</span></div>
+<div class="line">        <span class="keywordflow">if</span>(result != <a name="a2"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
+<div class="line">        {</div>
+<div class="line">            printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module!\r\n&quot;</span></div>
+<div class="line">                    <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>);</div>
+<div class="line">            <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line">        }</div>
 <div class="line">    }</div>
 <div class="line"></div>
 <div class="line"></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line">    <span class="comment">// STEP 3: Join a network using the specified parameters</span></div>
+<div class="line">    <span class="comment">// STEP 3: Set the network credentials</span></div>
+<div class="line">    <span class="comment">// Note: We manually set the network parameters to ensure SDK backward compatibility</span></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
 <div class="line"></div>
-<div class="line">    printf(<span class="stringliteral">&quot;Joining network: %s....\r\n&quot;</span>, NETWORK_SSID);</div>
-<div class="line"></div>
-<div class="line">    <span class="keywordflow">if</span>(wiconnect.join(NETWORK_SSID, NETWORK_PASSWORD) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line">    printf(<span class="stringliteral">&quot;Setting network SSID: %s\r\n&quot;</span>, NETWORK_SSID);</div>
+<div class="line">    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.setSetting(<span class="stringliteral">&quot;wlan.ssid&quot;</span>, NETWORK_SSID)))</div>
 <div class="line">    {</div>
-<div class="line">        printf(<span class="stringliteral">&quot;Failed to send join command\r\n&quot;</span>);</div>
+<div class="line">        printf(<span class="stringliteral">&quot;Failed to set wlan.ssid setting\r\n&quot;</span>);</div>
+<div class="line">        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line">    }</div>
+<div class="line">    </div>
+<div class="line">    printf(<span class="stringliteral">&quot;Setting network password\r\n&quot;</span>);</div>
+<div class="line">    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.setSetting(<span class="stringliteral">&quot;wlan.passkey&quot;</span>, NETWORK_PASSWORD)))</div>
+<div class="line">    {</div>
+<div class="line">        printf(<span class="stringliteral">&quot;Failed to set wlan.passkey setting\r\n&quot;</span>);</div>
 <div class="line">        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
 <div class="line">    }</div>
 <div class="line"></div>
+<div class="line">    printf(<span class="stringliteral">&quot;Saving settings to Non-volatile Memory\r\n&quot;</span>);</div>
+<div class="line">    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.saveSettings()))</div>
+<div class="line">    {</div>
+<div class="line">        printf(<span class="stringliteral">&quot;Failed save settings\r\n&quot;</span>);</div>
+<div class="line">        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line">    }</div>
+<div class="line">    </div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
 <div class="line">    <span class="comment">// STEP 4: Update the module&#39;s firmware, this takes about 60s</span></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
 <div class="line"></div>
-<div class="line">    printf(<span class="stringliteral">&quot;Updating WiFi module&#39;s internal firmware to latest...\r\n&quot;</span>);</div>
+<div class="line">    printf(<span class="stringliteral">&quot;Updating WiFi module&#39;s internal firmware to latest (note this can take up to 60s)\r\n&quot;</span>);</div>
 <div class="line"></div>
-<div class="line">    <span class="keywordflow">if</span>(wiconnect.updateFirmware() != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line">    <span class="keywordflow">if</span>(wiconnect.updateFirmware() != <a name="a3"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
 <div class="line">    {</div>
 <div class="line">        printf(<span class="stringliteral">&quot;Failed to update the module&#39;s firmware\r\n&quot;</span>);</div>
 <div class="line">        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
--- a/doc/mbed/html/ota_2example_8cpp_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/ota_2example_8cpp_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -119,107 +119,125 @@
 <div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#define NETWORK_PASSWORD &quot;\&quot;&lt;YOUR NETWORK PASSWORD HERE&gt;\&quot;&quot;</span></div>
 <div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
 <div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="comment"> * Includes</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="comment">// include C library headers</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span> <span class="comment">// needed for printf</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment">// include target specific defines</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#include &quot;target_config.h&quot;</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">// include the Wiconnect Host Library API header</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#include &quot;Wiconnect.h&quot;</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment"> * Includes</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="comment">// include C library headers</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span> <span class="comment">// needed for printf</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="comment">// include target specific defines</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#include &quot;target_config.h&quot;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment">// include the Wiconnect Host Library API header</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#include &quot;Wiconnect.h&quot;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
 <div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment"> * Global Defines</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">// Serial used for printfs to terminal (i.e. NOT used for WiConnect)</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment"> * Starting point of application</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;{</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="comment"> * Global Defines</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="comment">// Serial used for printfs to terminal (i.e. NOT used for WiConnect)</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="comment"> * Starting point of application</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;{</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    </div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <span class="comment">// STEP 1: Instantiate WiConnect Library</span></div>
 <div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="comment">// STEP 1: Instantiate WiConnect Library</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="comment">// Setup  wiconnect serial interface configuration</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <span class="comment">// Here we only specify the rx buffer size and not rx buffer pointer, this means</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="comment">// The serial RX buffer will be dynamically allocated</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256, NULL);</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="comment">// Instantiate the Wiconnect library</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <span class="comment">// Here we only specify the buffer size and not buffer pointer, this means</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <span class="comment">// The internal buffer will be dynamically allocated</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    <span class="keywordflow">if</span>(wiconnect.init(<span class="keyword">true</span>) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    {</div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module!\r\n&quot;</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>);</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    }</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="comment">// Setup  wiconnect serial interface configuration</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="comment">// Here we only specify the rx buffer size and not rx buffer pointer, this means</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="comment">// The serial RX buffer will be dynamically allocated</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256, NULL);</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <span class="comment">// Instantiate the Wiconnect library</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <span class="comment">// Here we only specify the buffer size and not buffer pointer, this means</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="comment">// The internal buffer will be dynamically allocated</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init(<span class="keyword">true</span>)))</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    {</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        <span class="comment">// if the error is that the firmware is out-dated, then continue, else stop</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        <span class="keywordflow">if</span>(result != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        {</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;            printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module!\r\n&quot;</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                    <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>);</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;            <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        }</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;    }</div>
 <div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    <span class="comment">// STEP 3: Join a network using the specified parameters</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    printf(<span class="stringliteral">&quot;Joining network: %s....\r\n&quot;</span>, NETWORK_SSID);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <span class="comment">// STEP 3: Set the network credentials</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <span class="comment">// Note: We manually set the network parameters to ensure SDK backward compatibility</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
 <div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    <span class="keywordflow">if</span>(wiconnect.join(NETWORK_SSID, NETWORK_PASSWORD) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    {</div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        printf(<span class="stringliteral">&quot;Failed to send join command\r\n&quot;</span>);</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    }</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    <span class="comment">// STEP 4: Update the module&#39;s firmware, this takes about 60s</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    printf(<span class="stringliteral">&quot;Updating WiFi module&#39;s internal firmware to latest...\r\n&quot;</span>);</div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    <span class="keywordflow">if</span>(wiconnect.updateFirmware() != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    {</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        printf(<span class="stringliteral">&quot;Failed to update the module&#39;s firmware\r\n&quot;</span>);</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    }</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <span class="comment">// STEP 5: Done!</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    wiconnect.getVersion();</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    printf(<span class="stringliteral">&quot;Version: %s\r\n&quot;</span>, wiconnect.getResponseBuffer());</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    printf(<span class="stringliteral">&quot;Setting network SSID: %s\r\n&quot;</span>, NETWORK_SSID);</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.setSetting(<span class="stringliteral">&quot;wlan.ssid&quot;</span>, NETWORK_SSID)))</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    {</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        printf(<span class="stringliteral">&quot;Failed to set wlan.ssid setting\r\n&quot;</span>);</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    }</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    printf(<span class="stringliteral">&quot;Setting network password\r\n&quot;</span>);</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.setSetting(<span class="stringliteral">&quot;wlan.passkey&quot;</span>, NETWORK_PASSWORD)))</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    {</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;        printf(<span class="stringliteral">&quot;Failed to set wlan.passkey setting\r\n&quot;</span>);</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    }</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    printf(<span class="stringliteral">&quot;Saving settings to Non-volatile Memory\r\n&quot;</span>);</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.saveSettings()))</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    {</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        printf(<span class="stringliteral">&quot;Failed save settings\r\n&quot;</span>);</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    }</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    </div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="comment">// STEP 4: Update the module&#39;s firmware, this takes about 60s</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
 <div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>){} <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;}</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    printf(<span class="stringliteral">&quot;Updating WiFi module&#39;s internal firmware to latest (note this can take up to 60s)\r\n&quot;</span>);</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    <span class="keywordflow">if</span>(wiconnect.updateFirmware() != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    {</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        printf(<span class="stringliteral">&quot;Failed to update the module&#39;s firmware\r\n&quot;</span>);</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    }</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <span class="comment">// STEP 5: Done!</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    wiconnect.getVersion();</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    printf(<span class="stringliteral">&quot;Version: %s\r\n&quot;</span>, wiconnect.getResponseBuffer());</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>){} <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;}</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div>
+<div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_serial_config_html"><div class="ttname"><a href="classwiconnect_1_1_serial_config.html">wiconnect::SerialConfig</a></div><div class="ttdoc">Host<->Wiconnect Module serial configuration. </div><div class="ttdef"><b>Definition:</b> <a href="sdk_8h_source.html#l00148">sdk.h:148</a></div></div>
+<div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">wiconnect::WICONNECT_FIRMWARE_OUTDATED</a></div><div class="ttdoc">The WiFi module&#39;s firmware is out-dated. See updateFirmware() to update the firmware. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00194">WiconnectTypes.h:194</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">wiconnect::WICONNECT_SUCCESS</a></div><div class="ttdoc">Command successfully completed. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00172">WiconnectTypes.h:172</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></div><div class="ttdoc">The root WiConnect library class. This class inheriets all WiConnect functionality. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_interface_8h_source.html#l00078">WiconnectInterface.h:78</a></div></div>
+<div class="ttc" id="group__api__core__macro_html_gab27aa3ef76302b5221766abfd4f47e64"><div class="ttname"><a href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a></div><div class="ttdeci">#define WICONNECT_FAILED(result, func)</div><div class="ttdoc">Populates result with return value from func, returns TRUE if return value contains error...</div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00093">WiconnectTypes.h:93</a></div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
--- a/doc/mbed/html/search/all_10.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/search/all_10.js	Mon Feb 23 20:30:18 2015 -0800
@@ -4,6 +4,7 @@
   ['settings_20methods',['Settings Methods',['../group__api__core__settings.html',1,'']]],
   ['settings_20methods',['Settings Methods',['../group__api__network__settings.html',1,'']]],
   ['socket',['Socket',['../group__api__socket.html',1,'']]],
+  ['savesettings',['saveSettings',['../group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a',1,'wiconnect::Wiconnect']]],
   ['scan',['scan',['../group__api__network__util.html#gacdf014d8aca9de33dbc1563c6bb1f956',1,'wiconnect::NetworkInterface']]],
   ['scanresult',['ScanResult',['../classwiconnect_1_1_scan_result.html',1,'wiconnect']]],
   ['scanresultlist',['ScanResultList',['../classwiconnect_1_1_scan_result_list.html',1,'wiconnect']]],
@@ -32,6 +33,7 @@
   ['socket_5ftype_5fudp',['SOCKET_TYPE_UDP',['../group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756dab1b41b1c4daf8d171414b68e9033cfbc',1,'wiconnect']]],
   ['socket_5ftype_5fudps',['SOCKET_TYPE_UDPS',['../group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da77625728d545a400e0eae1483225ff91',1,'wiconnect']]],
   ['socket_5ftype_5funknown',['SOCKET_TYPE_UNKNOWN',['../group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da6469a1b9d8fa6448c0f6f13e0028a60e',1,'wiconnect']]],
+  ['socket_5ftype_5fws',['SOCKET_TYPE_WS',['../group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a',1,'wiconnect']]],
   ['socketinterface',['SocketInterface',['../classwiconnect_1_1_socket_interface.html',1,'wiconnect']]],
   ['sockettype',['SocketType',['../group__api__socket__types.html#ga69dc55558df4c81599c5fb3dff98756d',1,'wiconnect']]],
   ['ssid',['Ssid',['../structwiconnect_1_1_ssid.html',1,'wiconnect']]],
--- a/doc/mbed/html/search/all_6.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/search/all_6.js	Mon Feb 23 20:30:18 2015 -0800
@@ -1,6 +1,7 @@
 var searchData=
 [
   ['http_20methods',['HTTP Methods',['../group__api__socket__http.html',1,'']]],
+  ['httpacceptwebsocket',['httpAcceptWebSocket',['../group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8',1,'wiconnect::SocketInterface']]],
   ['httpaddheader',['httpAddHeader',['../group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec',1,'wiconnect::SocketInterface']]],
   ['httpconnect',['httpConnect',['../group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed',1,'wiconnect::SocketInterface']]],
   ['httpget',['httpGet',['../group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6',1,'wiconnect::SocketInterface']]],
--- a/doc/mbed/html/search/enumvalues_3.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/search/enumvalues_3.js	Mon Feb 23 20:30:18 2015 -0800
@@ -9,5 +9,6 @@
   ['socket_5ftype_5ftls',['SOCKET_TYPE_TLS',['../group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da0c365c200e62d61bf22798c25ccb96b4',1,'wiconnect']]],
   ['socket_5ftype_5fudp',['SOCKET_TYPE_UDP',['../group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756dab1b41b1c4daf8d171414b68e9033cfbc',1,'wiconnect']]],
   ['socket_5ftype_5fudps',['SOCKET_TYPE_UDPS',['../group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da77625728d545a400e0eae1483225ff91',1,'wiconnect']]],
-  ['socket_5ftype_5funknown',['SOCKET_TYPE_UNKNOWN',['../group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da6469a1b9d8fa6448c0f6f13e0028a60e',1,'wiconnect']]]
+  ['socket_5ftype_5funknown',['SOCKET_TYPE_UNKNOWN',['../group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da6469a1b9d8fa6448c0f6f13e0028a60e',1,'wiconnect']]],
+  ['socket_5ftype_5fws',['SOCKET_TYPE_WS',['../group__api__socket__types.html#gga69dc55558df4c81599c5fb3dff98756da683c199a9f5ee2dad0420c0d6b73ea3a',1,'wiconnect']]]
 ];
--- a/doc/mbed/html/search/functions_5.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/search/functions_5.js	Mon Feb 23 20:30:18 2015 -0800
@@ -1,5 +1,6 @@
 var searchData=
 [
+  ['httpacceptwebsocket',['httpAcceptWebSocket',['../group__api__socket__http.html#ga856d6866c6fc59ebedccade4822acbc8',1,'wiconnect::SocketInterface']]],
   ['httpaddheader',['httpAddHeader',['../group__api__socket__http.html#gabed18edc44f464bac64ce8a6dc3617ec',1,'wiconnect::SocketInterface']]],
   ['httpconnect',['httpConnect',['../group__api__socket__http.html#ga181a03d883f60dff0c03b65e066f0eed',1,'wiconnect::SocketInterface']]],
   ['httpget',['httpGet',['../group__api__socket__http.html#gac9b6c6a348f790cc8d43889dd72029f6',1,'wiconnect::SocketInterface']]],
--- a/doc/mbed/html/search/functions_e.js	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/search/functions_e.js	Mon Feb 23 20:30:18 2015 -0800
@@ -1,5 +1,6 @@
 var searchData=
 [
+  ['savesettings',['saveSettings',['../group__api__core__settings.html#ga7dc2351dfb8a7360b2972ecdf9cdf01a',1,'wiconnect::Wiconnect']]],
   ['scan',['scan',['../group__api__network__util.html#gacdf014d8aca9de33dbc1563c6bb1f956',1,'wiconnect::NetworkInterface']]],
   ['sendcommand',['sendCommand',['../group__api__core__send__command.html#gadd23f2f86fcc0a438dad798ab3353505',1,'wiconnect::Wiconnect::sendCommand(const Callback &amp;completeCallback, char *responseBuffer, int responseBufferLen, TimerTimeout timeoutMs, const ReaderFunc &amp;reader, void *user, const char *cmd, va_list vaList)'],['../group__api__core__send__command.html#gaa36b07b28a166fe51f9dc92bcab5d3d8',1,'wiconnect::Wiconnect::sendCommand(char *responseBuffer, int responseBufferLen, TimerTimeout timeoutMs, const ReaderFunc &amp;reader, void *user, const char *cmd, va_list vaList)'],['../group__api__core__send__command.html#gabe0e5c170b9c6ec7d6dc96a3639c721e',1,'wiconnect::Wiconnect::sendCommand(char *responseBuffer, int responseBufferLen, TimerTimeout timeoutMs, const ReaderFunc &amp;reader, void *user, const char *cmd,...)'],['../group__api__core__send__command.html#ga8c6d84b338847fbdd41f61c5375117e9',1,'wiconnect::Wiconnect::sendCommand(TimerTimeout timeoutMs, const ReaderFunc &amp;reader, void *user, const char *cmd,...)'],['../group__api__core__send__command.html#gaca2f1b17d2cc98cbc6dac219ffcf9e84',1,'wiconnect::Wiconnect::sendCommand(const ReaderFunc &amp;reader, void *user, const char *cmd,...)'],['../group__api__core__send__command.html#ga5f437c3518de14706c6fcff32a0b0f97',1,'wiconnect::Wiconnect::sendCommand(char *responseBuffer, int responseBufferLen, TimerTimeout timeoutMs, const char *cmd,...)'],['../group__api__core__send__command.html#gaf93db1b2730bb586287f7756f3cdf092',1,'wiconnect::Wiconnect::sendCommand(const Callback &amp;completeCallback, char *responseBuffer, int responseBufferLen, const char *cmd,...)'],['../group__api__core__send__command.html#gaac75ca154bd5d5a21c714dd828a92363',1,'wiconnect::Wiconnect::sendCommand(char *responseBuffer, int responseBufferLen, const char *cmd,...)'],['../group__api__core__send__command.html#ga7eb983a196daa5de20a73fd234dc6f64',1,'wiconnect::Wiconnect::sendCommand(const Callback &amp;completeCallback, const char *cmd,...)'],['../group__api__core__send__command.html#gadad1c5b3df07a24ab09492edf93dd1f4',1,'wiconnect::Wiconnect::sendCommand(const char *cmd,...)'],['../group__api__core__send__command.html#ga9a89a0dd00f8eedb5e3eb8d4a4ed58df',1,'wiconnect::Wiconnect::sendCommand(const Callback &amp;completeCallback, TimerTimeout timeoutMs, const char *cmd,...)'],['../group__api__core__send__command.html#ga5666d99d72494995db0a812fcc9bbd09',1,'wiconnect::Wiconnect::sendCommand(TimerTimeout timeoutMs, const char *cmd,...)'],['../group__api__core__send__command.html#ga9d0ade0ec2866d7e0df5391bc69f5698',1,'wiconnect::Wiconnect::sendCommand(const char *cmd, va_list vaList)']]],
   ['setassertlogger',['setAssertLogger',['../group__api__core__settings.html#ga273f67fede26be4a3d5d909c5cf8c7e0',1,'wiconnect::Wiconnect']]],
--- a/doc/mbed/html/structwiconnect_1_1_ghm_element.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/structwiconnect_1_1_ghm_element.html	Mon Feb 23 20:30:18 2015 -0800
@@ -120,7 +120,7 @@
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>goHACK.me stream or control value </p>
 
-<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00437">437</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
+<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00438">438</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
 </div><hr/>The documentation for this struct was generated from the following file:<ul>
 <li>C:/Users/reed/workspace/host-wiconnect/src/wiconnect/Wiconnect/api/<a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a></li>
 </ul>
--- a/doc/mbed/html/structwiconnect_1_1_ghm_element_array.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/structwiconnect_1_1_ghm_element_array.html	Mon Feb 23 20:30:18 2015 -0800
@@ -120,7 +120,7 @@
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>Array of goHACK.me stream or control values. </p>
 
-<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00452">452</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
+<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00453">453</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
 </div><hr/>The documentation for this struct was generated from the following file:<ul>
 <li>C:/Users/reed/workspace/host-wiconnect/src/wiconnect/Wiconnect/api/<a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a></li>
 </ul>
--- a/doc/mbed/html/structwiconnect_1_1_http_socket_args.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/structwiconnect_1_1_http_socket_args.html	Mon Feb 23 20:30:18 2015 -0800
@@ -141,7 +141,7 @@
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>Struct for hold HTTP socket configuration. </p>
 
-<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00365">365</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
+<p>Definition at line <a class="el" href="_wiconnect_types_8h_source.html#l00366">366</a> of file <a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a>.</p>
 </div><hr/>The documentation for this struct was generated from the following file:<ul>
 <li>C:/Users/reed/workspace/host-wiconnect/src/wiconnect/Wiconnect/api/<a class="el" href="_wiconnect_types_8h_source.html">WiconnectTypes.h</a></li>
 </ul>
--- a/doc/mbed/html/tcp__client_8py_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/tcp__client_8py_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -104,7 +104,7 @@
 <div class="contents">
 <div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="keyword">import</span> socket</div>
 <div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
-<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;ECHO_SERVER_ADDRESS = <span class="stringliteral">&quot;192.168.1.52&quot;</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;ECHO_SERVER_ADDRESS = <span class="stringliteral">&quot;192.168.1.39&quot;</span></div>
 <div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;ECHO_PORT = 7</div>
 <div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
 <div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) </div>
--- a/doc/mbed/html/tcp__echo__client_2main_8cpp_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/tcp__echo__client_2main_8cpp_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -124,54 +124,60 @@
 <div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
 <div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
 <div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    consoleSerial.baud(115200);</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init(<span class="keyword">true</span>)))</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    {</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;        printf(<span class="stringliteral">&quot;Failed to initialize Wiconnect: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        {</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;            printf(<span class="stringliteral">&quot;The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example&quot;</span>);</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        }</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    }</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.join(NETWORK_SSID, NETWORK_PASSWORD)))</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    {</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        printf(<span class="stringliteral">&quot;Failed to join network: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    }</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    printf(<span class="stringliteral">&quot;IP Address is %s\n&quot;</span>, wiconnect.getIpAddress());</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    TCPSocketConnection socket;</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <span class="keywordflow">while</span> (socket.connect(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT) &lt; 0)</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    {</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        printf(<span class="stringliteral">&quot;Unable to connect to (%s) on port (%d)\r\n&quot;</span>, ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT);</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        wait(1);</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    }</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <span class="keywordtype">char</span> hello[] = <span class="stringliteral">&quot;Hello World\n&quot;</span>;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="keywordflow">if</span>(socket.send_all(hello, <span class="keyword">sizeof</span>(hello) - 1) == -1)</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    {</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        printf(<span class="stringliteral">&quot;Failed to send data\r\n&quot;</span>);</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    }</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <span class="keywordtype">int</span> n = socket.receive(buf, 256);</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keywordflow">if</span>(n == -1)</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    {</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        printf(<span class="stringliteral">&quot;Failed to receive data\r\n&quot;</span>);</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    }</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    buf[n] = <span class="charliteral">&#39;\0&#39;</span>;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    printf(<span class="stringliteral">&quot;%s&quot;</span>, buf);</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    socket.close();</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    wiconnect.deinit();</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    printf(<span class="stringliteral">&quot;Finished!&quot;</span>);</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>) {}</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;}</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init(<span class="keyword">true</span>)))</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    {</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        printf(<span class="stringliteral">&quot;Failed to initialize Wiconnect: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        {</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;            printf(<span class="stringliteral">&quot;** The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example\r\n&quot;</span>);</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        }</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    }</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    printf(<span class="stringliteral">&quot;Joining network: %s\r\n&quot;</span>, NETWORK_SSID);</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.join(NETWORK_SSID, NETWORK_PASSWORD)))</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    {</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        printf(<span class="stringliteral">&quot;Failed to join network: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    }</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    printf(<span class="stringliteral">&quot;IP Address is %s\n&quot;</span>, wiconnect.getIpAddress());</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    printf(<span class="stringliteral">&quot;Connecting to server...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    TCPSocketConnection socket;</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    <span class="keywordflow">while</span> (socket.connect(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT) &lt; 0)</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    {</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        printf(<span class="stringliteral">&quot;Unable to connect to (%s) on port (%d)\r\n&quot;</span>, ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT);</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        wait(1);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    }</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    printf(<span class="stringliteral">&quot;Sending message...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <span class="keywordtype">char</span> hello[] = <span class="stringliteral">&quot;Hello World\n&quot;</span>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <span class="keywordflow">if</span>(socket.send_all(hello, <span class="keyword">sizeof</span>(hello) - 1) == -1)</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    {</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        printf(<span class="stringliteral">&quot;Failed to send data\r\n&quot;</span>);</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    }</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    printf(<span class="stringliteral">&quot;Receiving response...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <span class="keywordtype">int</span> n = socket.receive(buf, 256);</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="keywordflow">if</span>(n == -1)</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    {</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        printf(<span class="stringliteral">&quot;Failed to receive data\r\n&quot;</span>);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    }</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    buf[n] = <span class="charliteral">&#39;\0&#39;</span>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    printf(<span class="stringliteral">&quot;%s&quot;</span>, buf);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    socket.close();</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    wiconnect.deinit();</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    printf(<span class="stringliteral">&quot;Finished!&quot;</span>);</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>) {}</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;}</div>
 <div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_serial_config_html"><div class="ttname"><a href="classwiconnect_1_1_serial_config.html">wiconnect::SerialConfig</a></div><div class="ttdoc">Host<->Wiconnect Module serial configuration. </div><div class="ttdef"><b>Definition:</b> <a href="sdk_8h_source.html#l00148">sdk.h:148</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">wiconnect::WICONNECT_FIRMWARE_OUTDATED</a></div><div class="ttdoc">The WiFi module&#39;s firmware is out-dated. See updateFirmware() to update the firmware. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00194">WiconnectTypes.h:194</a></div></div>
--- a/doc/mbed/html/tcp__server_2example_8cpp_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/tcp__server_2example_8cpp_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -124,166 +124,165 @@
 <div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#define NETWORK_PASSWORD &quot;\&quot;&lt;YOUR NETWORK PASSWORD HERE&gt;\&quot;&quot;</span></div>
 <div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
 <div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment"> * Includes</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment">// include C library headers</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span> <span class="comment">// needed for printf</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="comment">// include target specific defines</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#include &quot;target_config.h&quot;</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">// include the Wiconnect Host Library API header</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">#include &quot;Wiconnect.h&quot;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="comment"> * Includes</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="comment">// include C library headers</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span> <span class="comment">// needed for printf</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment">// include target specific defines</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">#include &quot;target_config.h&quot;</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="comment">// include the Wiconnect Host Library API header</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">#include &quot;Wiconnect.h&quot;</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
 <div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
 <div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment"> * Local Functions</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment"> * Local Functions</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
 <div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment"> * Global Defines</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="comment">// Transmit/receive buffers for the remote client socket</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="keyword">static</span> uint8_t clientRxBuffer[256], clientTxBuffer[256];</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">// Serial used for printfs to terminal (i.e. NOT used for WiConnect)</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="comment"> * Global Defines</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment">// Transmit/receive buffers for the remote client socket</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="keyword">static</span> uint8_t clientRxBuffer[256], clientTxBuffer[256];</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">// Serial used for printfs to terminal (i.e. NOT used for WiConnect)</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div>
 <div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div>
 <div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="comment">// STEP 1: Instantiate WiConnect Library</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;<span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="comment">// STEP 1: Instantiate WiConnect Library</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;</div>
 <div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="comment">// Setup  wiconnect serial interface configuration</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="comment">// Here we only specify the rx buffer size and not rx buffer pointer, this means</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="comment">// The serial RX buffer will be dynamically allocated</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256, NULL);</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="comment">// Instantiate the Wiconnect library</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="comment">// Here we specify the buffer size ONLY which means we&#39;re using dynmaic allocation</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;<a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnectIfc(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="comment">// Setup  wiconnect serial interface configuration</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;<span class="comment">// Here we only specify the rx buffer size and not rx buffer pointer, this means</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;<span class="comment">// The serial RX buffer will be dynamically allocated</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256, NULL);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="comment">// Instantiate the Wiconnect library</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;<span class="comment">// Here we specify the buffer size ONLY which means we&#39;re using dynmaic allocation</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnectIfc(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div>
 <div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div>
 <div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
 <div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;</div>
 <div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="comment"> * Starting point of application</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;{</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <span class="comment">// Instantiate a client socket object with statically allocaed transmit/receive buffers</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    <span class="comment">// Note: this socket object isn&#39;t valid until tcpAccept() is called with in</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> clientSocket(<span class="keyword">sizeof</span>(clientRxBuffer), clientRxBuffer, <span class="keyword">sizeof</span>(clientTxBuffer), clientTxBuffer);</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;<span class="comment"> * Starting point of application</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;{</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    <span class="comment">// Instantiate a client socket object with statically allocaed transmit/receive buffers</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <span class="comment">// Note: this socket object isn&#39;t valid until tcpAccept() is called with in</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect_socket.html">WiconnectSocket</a> clientSocket(<span class="keyword">sizeof</span>(clientRxBuffer), clientRxBuffer, <span class="keyword">sizeof</span>(clientTxBuffer), clientTxBuffer);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div>
 <div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
-<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnectIfc.<a class="code" href="group__api__core__misc.html#gae2e3add2e60543d0e3340ed7a9e034ad">init</a>(<span class="keyword">true</span>)))</div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    {</div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module: %s\r\n&quot;</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        {</div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;            printf(<span class="stringliteral">&quot;The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example&quot;</span>);</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        }</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    }</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    <span class="comment">// STEP 3: Join the network</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    printf(<span class="stringliteral">&quot;Joining WiFi network: %s\r\n&quot;</span>, NETWORK_SSID);</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnectIfc.<a class="code" href="group__api__network__wlan.html#gac439d0af5a17da32d405e25dcba83d16">join</a>(NETWORK_SSID, NETWORK_PASSWORD)))</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    {</div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        printf(<span class="stringliteral">&quot;Failed to join network: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    }</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnectIfc.<a class="code" href="group__api__core__misc.html#gae2e3add2e60543d0e3340ed7a9e034ad">init</a>(<span class="keyword">true</span>)))</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    {</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module: %s\r\n&quot;</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;                <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        {</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;            printf(<span class="stringliteral">&quot;** The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example\r\n\r\n&quot;</span>);</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;        }</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    }</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    <span class="comment">// STEP 3: Join the network</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    printf(<span class="stringliteral">&quot;Joining WiFi network: %s\r\n&quot;</span>, NETWORK_SSID);</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnectIfc.<a class="code" href="group__api__network__wlan.html#gac439d0af5a17da32d405e25dcba83d16">join</a>(NETWORK_SSID, NETWORK_PASSWORD)))</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    {</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        printf(<span class="stringliteral">&quot;Failed to join network: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    }</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div>
 <div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;</div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="comment">// STEP 4: Start the TCP server</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    printf(<span class="stringliteral">&quot;Starting TCP server, listening on: %s:%d\r\n&quot;</span>, wiconnectIfc.<a class="code" href="group__api__network__settings.html#ga0b8fc3d5be0bae9ffcdc1b4b9aee6290">getIpAddress</a>(), TCP_SERVER_PORT);</div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnectIfc.<a class="code" href="group__api__socket__tcp.html#gadf3ba6b5941028eec0442c3e8e9dfc2f">tcpListen</a>(TCP_SERVER_PORT, TCP_SERVER_MAX_CLIENTS)))</div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    {</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        printf(<span class="stringliteral">&quot;Failed to start TCP server: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    }</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    <span class="comment">// STEP 4: Start the TCP server</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    printf(<span class="stringliteral">&quot;Starting TCP server, listening on: %s:%d\r\n&quot;</span>, wiconnectIfc.<a class="code" href="group__api__network__settings.html#ga0b8fc3d5be0bae9ffcdc1b4b9aee6290">getIpAddress</a>(), TCP_SERVER_PORT);</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnectIfc.<a class="code" href="group__api__socket__tcp.html#gadf3ba6b5941028eec0442c3e8e9dfc2f">tcpListen</a>(TCP_SERVER_PORT, TCP_SERVER_MAX_CLIENTS)))</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    {</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;        printf(<span class="stringliteral">&quot;Failed to start TCP server: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    }</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div>
 <div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;</div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    <span class="keywordflow">for</span>(;;)</div>
-<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;    {</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        <span class="comment">// STEP 5: Wait for clients to connect</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        printf(<span class="stringliteral">&quot;Waiting for a client to connect...\r\n&quot;</span>);</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;</div>
-<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnectIfc.<a class="code" href="group__api__socket__tcp.html#ga9e12bc568b7e8d72152e53a90de13035">tcpAccept</a>(clientSocket)))</div>
-<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;        {</div>
-<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;            printf(<span class="stringliteral">&quot;Failed to accept client: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
-<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;            <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        }</div>
-<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;        printf(<span class="stringliteral">&quot;Client connected: %s:%d\r\n&quot;</span>, clientSocket.getHost(), clientSocket.getRemotePort());</div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        <span class="comment">// STEP 6: Receive data from client</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div>
-<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        uint8_t *dataPtr;   <span class="comment">// pointer to client socket&#39;s internal RX buffer</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;        uint16_t readSize;  <span class="comment">// will contain number of bytes available in RX buffer</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, clientSocket.read(&amp;dataPtr, &amp;readSize)))</div>
-<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        {</div>
-<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;            printf(<span class="stringliteral">&quot;Failed to read data from client: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
-<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;            clientSocket.close();</div>
-<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;            <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;        }</div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div>
-<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;        printf(<span class="stringliteral">&quot;From client: %s\r\n&quot;</span>, dataPtr);</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;    <span class="keywordflow">for</span>(;;)</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    {</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        <span class="comment">// STEP 5: Wait for clients to connect</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        printf(<span class="stringliteral">&quot;Waiting for a client to connect...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnectIfc.<a class="code" href="group__api__socket__tcp.html#ga9e12bc568b7e8d72152e53a90de13035">tcpAccept</a>(clientSocket)))</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        {</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;            printf(<span class="stringliteral">&quot;Failed to accept client: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;            <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;        }</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        printf(<span class="stringliteral">&quot;Client connected: %s:%d\r\n&quot;</span>, clientSocket.getHost(), clientSocket.getRemotePort());</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        <span class="comment">// STEP 6: Receive data from client</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;        uint8_t *dataPtr;   <span class="comment">// pointer to client socket&#39;s internal RX buffer</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        uint16_t readSize;  <span class="comment">// will contain number of bytes available in RX buffer</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, clientSocket.read(&amp;dataPtr, &amp;readSize)))</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        {</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;            printf(<span class="stringliteral">&quot;Failed to read data from client: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;            clientSocket.close();</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;            <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        }</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;        printf(<span class="stringliteral">&quot;From client: %s\r\n&quot;</span>, dataPtr);</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div>
 <div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;</div>
-<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;</div>
-<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        <span class="comment">// STEP 7: Send data to client</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div>
-<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, clientSocket.puts(<span class="stringliteral">&quot;Hello client!!\r\n&quot;</span>)))</div>
-<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;        {</div>
-<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;            printf(<span class="stringliteral">&quot;Failed to send data to client: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
-<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;            clientSocket.close();</div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;            <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;        }</div>
-<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;</div>
-<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;        <span class="comment">// STEP 8: Close client connection</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;</div>
-<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        clientSocket.close();</div>
-<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;    }</div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;</div>
-<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;}</div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;        <span class="comment">// STEP 7: Send data to client</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;        <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, clientSocket.puts(<span class="stringliteral">&quot;Hello client!!\r\n&quot;</span>)))</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;        {</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;            printf(<span class="stringliteral">&quot;Failed to send data to client: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;            clientSocket.close();</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;            <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;        }</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        <span class="comment">// STEP 8: Close client connection</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;        <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        clientSocket.close();</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;    }</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;}</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;</div>
 <div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_serial_config_html"><div class="ttname"><a href="classwiconnect_1_1_serial_config.html">wiconnect::SerialConfig</a></div><div class="ttdoc">Host<->Wiconnect Module serial configuration. </div><div class="ttdef"><b>Definition:</b> <a href="sdk_8h_source.html#l00148">sdk.h:148</a></div></div>
 <div class="ttc" id="group__api__socket__tcp_html_gadf3ba6b5941028eec0442c3e8e9dfc2f"><div class="ttname"><a href="group__api__socket__tcp.html#gadf3ba6b5941028eec0442c3e8e9dfc2f">wiconnect::SocketInterface::tcpListen</a></div><div class="ttdeci">WiconnectResult tcpListen(uint16_t listeningPort, int maxClients=0)</div><div class="ttdoc">Start internal TCP server and listen on specified port. </div></div>
--- a/doc/mbed/html/tcp_server_2example_8cpp-example.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/tcp_server_2example_8cpp-example.html	Mon Feb 23 20:30:18 2015 -0800
@@ -137,7 +137,6 @@
 <div class="line"><span class="preprocessor">#define NETWORK_PASSWORD &quot;\&quot;&lt;YOUR NETWORK PASSWORD HERE&gt;\&quot;&quot;</span></div>
 <div class="line"></div>
 <div class="line"></div>
-<div class="line"></div>
 <div class="line"><span class="comment">/******************************************************************************</span></div>
 <div class="line"><span class="comment"> * Includes</span></div>
 <div class="line"><span class="comment"> */</span></div>
@@ -213,8 +212,8 @@
 <div class="line">                <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
 <div class="line">        <span class="keywordflow">if</span>(result == <a name="a2"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
 <div class="line">        {</div>
-<div class="line">            printf(<span class="stringliteral">&quot;The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
-<div class="line">            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example&quot;</span>);</div>
+<div class="line">            printf(<span class="stringliteral">&quot;** The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
+<div class="line">            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example\r\n\r\n&quot;</span>);</div>
 <div class="line">        }</div>
 <div class="line">        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
 <div class="line">    }</div>
--- a/doc/mbed/html/udp__echo__client_2main_8cpp_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/udp__echo__client_2main_8cpp_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -109,70 +109,72 @@
 <div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor">#define NETWORK_SSID &quot;&lt;YOUR NETWORK SSID HERE&gt;&quot;</span></div>
 <div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#define NETWORK_PASSWORD &quot;&lt;YOUR NETWORK PASSWORD HERE&gt;&quot;</span></div>
 <div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;</div>
-<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#define ECHO_SERVER_ADDRESS  &quot;192.168.1.110&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#define ECHO_SERVER_ADDRESS  &quot;&lt;ECHO Server&#39;s IP Addres HERE&gt;&quot;</span></div>
 <div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#define ECHO_SERVER_PORT 7</span></div>
 <div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;</div>
 <div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;</div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;</div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="keyword">static</span> <span class="keywordtype">char</span> in_buffer[256];</div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="keywordtype">int</span> main()</div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;{</div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256);</div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;    consoleSerial.baud(115200);</div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init(<span class="keyword">true</span>)))</div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;    {</div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;        printf(<span class="stringliteral">&quot;Failed to initialize Wiconnect: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        {</div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;            printf(<span class="stringliteral">&quot;The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example&quot;</span>);</div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;        }</div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    }</div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.join(NETWORK_SSID, NETWORK_PASSWORD)))</div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    {</div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        printf(<span class="stringliteral">&quot;Failed to join network: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    }</div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    UDPSocket  sock;</div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    sock.init();</div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    Endpoint echo_server;</div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    echo_server.set_address(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT);</div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keywordtype">char</span> out_buffer[] = <span class="stringliteral">&quot;Hello World\n&quot;</span>;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <span class="keywordflow">if</span>(sock.sendTo(echo_server, out_buffer, <span class="keyword">sizeof</span>(out_buffer)) == -1)</div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    {</div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        printf(<span class="stringliteral">&quot;Failed to send data\r\n&quot;</span>);</div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    }</div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    <span class="keywordtype">int</span> n = sock.receiveFrom(echo_server, in_buffer, <span class="keyword">sizeof</span>(in_buffer));</div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keywordflow">if</span>(n == -1)</div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    {</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        printf(<span class="stringliteral">&quot;Failed to receive data\r\n&quot;</span>);</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    }</div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    in_buffer[n] = <span class="charliteral">&#39;\0&#39;</span>;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    printf(<span class="stringliteral">&quot;%s&quot;</span>, in_buffer);</div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    sock.close();</div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    wiconnect.deinit();</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    printf(<span class="stringliteral">&quot;Finished!&quot;</span>);</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>) {}</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;}</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="keyword">static</span> <span class="keywordtype">char</span> in_buffer[256];</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="keywordtype">int</span> main()</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;{</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;    <a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256);</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, 256, NULL, WICONNECT_RESET_PIN);</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    consoleSerial.baud(115200);</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect...\r\n&quot;</span>);</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init(<span class="keyword">true</span>)))</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;    {</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;        printf(<span class="stringliteral">&quot;Failed to initialize Wiconnect: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;        {</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;            printf(<span class="stringliteral">&quot;** The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example\r\n\r\n&quot;</span>);</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;        }</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    }</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.join(NETWORK_SSID, NETWORK_PASSWORD)))</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;    {</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;        printf(<span class="stringliteral">&quot;Failed to join network: %s\r\n&quot;</span>, Wiconnect::getWiconnectResultStr(result));</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;    }</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    UDPSocket  sock;</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    sock.init();</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    Endpoint echo_server;</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    echo_server.set_address(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT);</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="keywordtype">char</span> out_buffer[] = <span class="stringliteral">&quot;Hello World\n&quot;</span>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    <span class="keywordflow">if</span>(sock.sendTo(echo_server, out_buffer, <span class="keyword">sizeof</span>(out_buffer)) == -1)</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    {</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        printf(<span class="stringliteral">&quot;Failed to send data\r\n&quot;</span>);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    }</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <span class="keywordtype">int</span> n = sock.receiveFrom(echo_server, in_buffer, <span class="keyword">sizeof</span>(in_buffer));</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <span class="keywordflow">if</span>(n == -1)</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    {</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        printf(<span class="stringliteral">&quot;Failed to receive data\r\n&quot;</span>);</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        <span class="keywordflow">for</span>(;;);</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    }</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    in_buffer[n] = <span class="charliteral">&#39;\0&#39;</span>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    printf(<span class="stringliteral">&quot;%s&quot;</span>, in_buffer);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    sock.close();</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    wiconnect.deinit();</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    printf(<span class="stringliteral">&quot;Finished!&quot;</span>);</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>) {}</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;}</div>
 <div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_serial_config_html"><div class="ttname"><a href="classwiconnect_1_1_serial_config.html">wiconnect::SerialConfig</a></div><div class="ttdoc">Host<->Wiconnect Module serial configuration. </div><div class="ttdef"><b>Definition:</b> <a href="sdk_8h_source.html#l00148">sdk.h:148</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">wiconnect::WICONNECT_FIRMWARE_OUTDATED</a></div><div class="ttdoc">The WiFi module&#39;s firmware is out-dated. See updateFirmware() to update the firmware. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00194">WiconnectTypes.h:194</a></div></div>
--- a/doc/mbed/html/web__setup_2example_8cpp_source.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/web__setup_2example_8cpp_source.html	Mon Feb 23 20:30:18 2015 -0800
@@ -134,125 +134,121 @@
 <div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
 <div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
 <div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment"> * Local Functions</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> webSetupCompleteCallback(<a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result, <span class="keywordtype">void</span> *arg1, <span class="keywordtype">void</span> *arg2);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment"> * Global Defines</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment"> */</span></div>
 <div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
 <div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="comment"> * Global Defines</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">// Serial used for printfs to terminal (i.e. NOT used for WiConnect)</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">// Serial used for printfs to terminal (i.e. NOT used for WiConnect)</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="keyword">static</span> Serial consoleSerial(STDIO_UART_TX, STDIO_UART_RX);</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="comment">// Buffer used internally by WiConnect library, note that this is optional</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="keyword">static</span> uint8_t wiconnectInternalBuffer[256];</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
 <div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">// Buffer used internally by WiConnect library, note that this is optional</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="keyword">static</span> uint8_t wiconnectInternalBuffer[256];</div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment">// Flag that indicate websetup has completed</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="keyword">static</span> <span class="keyword">volatile</span> <span class="keywordtype">bool</span> webSetupCompleteFlag = <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="comment">/******************************************************************************</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment"> * Starting point of application</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;{</div>
-<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <span class="comment">// STEP 1: Instantiate WiConnect Library</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
-<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="comment">// Setup  wiconnect serial interface configuration</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <span class="comment">// Here we only specify the rx buffer size and not rx buffer pointer, this means</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="comment">// The serial RX buffer will be dynamically allocated</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256, NULL);</div>
-<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
-<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="comment">// Instantiate the Wiconnect library</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <span class="comment">// Here we specify the buffer size AND buffer pointer, this means we&#39;re using static allocation</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, <span class="keyword">sizeof</span>(wiconnectInternalBuffer), wiconnectInternalBuffer, WICONNECT_RESET_PIN);</div>
-<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">/******************************************************************************</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="comment"> * Starting point of application</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;{</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    <span class="comment">// STEP 1: Instantiate WiConnect Library</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <span class="comment">// Setup  wiconnect serial interface configuration</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    <span class="comment">// Here we only specify the rx buffer size and not rx buffer pointer, this means</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="comment">// The serial RX buffer will be dynamically allocated</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <a class="code" href="classwiconnect_1_1_serial_config.html">SerialConfig</a> serialConfig(WICONNECT_RX_PIN, WICONNECT_TX_PIN, 256, NULL);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <span class="comment">// Instantiate the Wiconnect library</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <span class="comment">// Here we specify the buffer size AND buffer pointer, this means we&#39;re using static allocation</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    <a class="code" href="classwiconnect_1_1_wiconnect.html">Wiconnect</a> wiconnect(serialConfig, <span class="keyword">sizeof</span>(wiconnectInternalBuffer), wiconnectInternalBuffer, WICONNECT_RESET_PIN);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
 <div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;</div>
-<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    <span class="comment">// STEP 2: Initiate Communication with WiFi Module</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div>
-<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
-<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div>
-<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;    <span class="keywordflow">if</span>(wiconnect.init(<span class="keyword">true</span>) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
-<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    {</div>
-<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
-<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        {</div>
-<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;            printf(<span class="stringliteral">&quot;The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
-<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example&quot;</span>);</div>
-<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        }</div>
-<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;        <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        {</div>
-<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;            printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module!\r\n&quot;</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                   <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>);</div>
-<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        }</div>
-<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    }</div>
-<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    <span class="comment">// Initialize communication with WiFi module</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    <span class="keywordflow">if</span>(<a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init()))</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    {</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        <span class="keywordflow">if</span>(result == <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        {</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;            printf(<span class="stringliteral">&quot;*** The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example\r\n\r\n&quot;</span>);</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        }</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        <span class="keywordflow">else</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        {</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;            printf(<span class="stringliteral">&quot;Failed to initialize communication with WiFi module!\r\n&quot;</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                   <span class="stringliteral">&quot;Make sure the wires are connected correctly\r\n&quot;</span>);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        }</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    }</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    <span class="comment">// STEP 3: Start WebSetup with specified parameters</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    printf(<span class="stringliteral">&quot;Starting Websetup...\r\n&quot;</span>);</div>
 <div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;</div>
-<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="comment">// STEP 3: Start WebSetup with specified parameters</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div>
-<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    printf(<span class="stringliteral">&quot;Starting Websetup...\r\n&quot;</span>);</div>
-<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div>
-<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    <span class="comment">// Start web setup</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    <span class="keywordflow">if</span>(wiconnect.startWebSetup(WEB_SETUP_SSID, WEB_SETUP_PASSWORD, <a class="code" href="classwiconnect_1_1_callback.html">Callback</a>(webSetupCompleteCallback)) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
-<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    {</div>
-<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        printf(<span class="stringliteral">&quot;Failed to start web setup\r\n&quot;</span>);</div>
-<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    }</div>
-<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    <span class="comment">// STEP 4: Wait for web setup webpage to complete</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div>
-<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    printf(<span class="stringliteral">&quot;Web setup has started.\r\n\r\n&quot;</span>);</div>
-<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    printf(<span class="stringliteral">&quot;1. Using your phone (or PC, Mac, Linux, etc.)\r\n   connect to the WiFi network: %s\r\n&quot;</span>, WEB_SETUP_SSID);</div>
-<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    printf(<span class="stringliteral">&quot;2. The password is: %s\r\n&quot;</span>, WEB_SETUP_PASSWORD);</div>
-<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    printf(<span class="stringliteral">&quot;3. Once connected, open your browser and enter the URL: http://setup.com\r\n&quot;</span>);</div>
-<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    printf(<span class="stringliteral">&quot;4. This will bringup a setup page, enter your router&#39;s credentials.\r\n&quot;</span>);</div>
-<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    printf(<span class="stringliteral">&quot;5. Click the &#39;Save &amp; Exit&#39; button at the bottom of the webpage\r\n\r\n&quot;</span>);</div>
-<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <span class="keywordflow">while</span>(!webSetupCompleteFlag)</div>
-<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    {</div>
-<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        <span class="comment">// do nothing while we wait</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        <span class="comment">// When the user exits web setup from the webpage</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        <span class="comment">// webSetupCompleteCallback() will execute and set webSetupCompleteFlag TRUE</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;    }</div>
-<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div>
-<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    <span class="comment">// STEP 5: Done!</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;</div>
-<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    printf(<span class="stringliteral">&quot;IP Address: %s\r\n&quot;</span>, wiconnect.getIpAddress());</div>
-<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    printf(<span class="stringliteral">&quot;Web setup example has completed!\r\n&quot;</span>);</div>
-<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>){} <span class="comment">// infinite loop</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;}</div>
-<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <span class="comment">// Start web setup</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <span class="keywordflow">if</span>(wiconnect.startWebSetup(WEB_SETUP_SSID, WEB_SETUP_PASSWORD) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    {</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        printf(<span class="stringliteral">&quot;Failed to start web setup\r\n&quot;</span>);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    }</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    <span class="comment">// STEP 4: Wait for web setup webpage to complete</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    printf(<span class="stringliteral">&quot;Web setup has started.\r\n\r\n&quot;</span>);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    printf(<span class="stringliteral">&quot;1. Using your phone (or PC, Mac, Linux, etc.)\r\n   connect to the WiFi network: %s\r\n&quot;</span>, WEB_SETUP_SSID);</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;    printf(<span class="stringliteral">&quot;2. The password is: %s\r\n&quot;</span>, WEB_SETUP_PASSWORD);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    printf(<span class="stringliteral">&quot;3. Once connected, open your browser and enter the URL: http://setup.com\r\n&quot;</span>);</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    printf(<span class="stringliteral">&quot;4. This will bringup a setup page, enter your router&#39;s credentials.\r\n&quot;</span>);</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    printf(<span class="stringliteral">&quot;5. Click the &#39;Save &amp; Exit&#39; button at the bottom of the webpage\r\n\r\n&quot;</span>);</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    <span class="keywordflow">for</span>(;;)</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;    {</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;        <span class="keywordtype">bool</span> isRunning;</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;        </div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        <span class="keywordflow">if</span>(wiconnect.isWebSetupRunning(&amp;isRunning) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        {</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;            printf(<span class="stringliteral">&quot;Failed to get websetup status\r\n&quot;</span>);</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;            <span class="keywordflow">for</span>(;;);</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        }</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;        <a class="code" href="group__api__core__macro.html#ga596d1da2fb23f4e748c83d64a47e10b3">delayMs</a>(100);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;        <span class="keywordflow">if</span>(!isRunning)</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;            <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    }</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;    <span class="comment">// STEP 5: Done!</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    <span class="comment">//-------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    printf(<span class="stringliteral">&quot;IP Address: %s\r\n&quot;</span>, wiconnect.getIpAddress());</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    printf(<span class="stringliteral">&quot;Web setup example has completed!\r\n&quot;</span>);</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;    <span class="keywordflow">while</span>(<span class="keyword">true</span>){} <span class="comment">// infinite loop</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;}</div>
 <div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;</div>
-<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="comment">// this function is called when web setup completes</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="comment">// it is called in the background</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> webSetupCompleteCallback(<a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result, <span class="keywordtype">void</span> *arg1, <span class="keywordtype">void</span> *arg2)</div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;{</div>
-<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;    webSetupCompleteFlag = <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;}</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div>
 <div class="ttc" id="group__api__core__types_html_ga325637ed501728bd6c8c7a7982b9ce05"><div class="ttname"><a href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">wiconnect::WiconnectResult</a></div><div class="ttdeci">WiconnectResult</div><div class="ttdoc">API Result code. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00166">WiconnectTypes.h:166</a></div></div>
-<div class="ttc" id="classwiconnect_1_1_callback_html"><div class="ttname"><a href="classwiconnect_1_1_callback.html">wiconnect::Callback</a></div><div class="ttdoc">Generic callback function. </div><div class="ttdef"><b>Definition:</b> <a href="_callback_8h_source.html#l00049">Callback.h:49</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_serial_config_html"><div class="ttname"><a href="classwiconnect_1_1_serial_config.html">wiconnect::SerialConfig</a></div><div class="ttdoc">Host<->Wiconnect Module serial configuration. </div><div class="ttdef"><b>Definition:</b> <a href="sdk_8h_source.html#l00148">sdk.h:148</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">wiconnect::WICONNECT_FIRMWARE_OUTDATED</a></div><div class="ttdoc">The WiFi module&#39;s firmware is out-dated. See updateFirmware() to update the firmware. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00194">WiconnectTypes.h:194</a></div></div>
 <div class="ttc" id="group__api__core__types_html_gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7"><div class="ttname"><a href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">wiconnect::WICONNECT_SUCCESS</a></div><div class="ttdoc">Command successfully completed. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00172">WiconnectTypes.h:172</a></div></div>
 <div class="ttc" id="classwiconnect_1_1_wiconnect_html"><div class="ttname"><a href="classwiconnect_1_1_wiconnect.html">wiconnect::Wiconnect</a></div><div class="ttdoc">The root WiConnect library class. This class inheriets all WiConnect functionality. </div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_interface_8h_source.html#l00078">WiconnectInterface.h:78</a></div></div>
+<div class="ttc" id="group__api__core__macro_html_gab27aa3ef76302b5221766abfd4f47e64"><div class="ttname"><a href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a></div><div class="ttdeci">#define WICONNECT_FAILED(result, func)</div><div class="ttdoc">Populates result with return value from func, returns TRUE if return value contains error...</div><div class="ttdef"><b>Definition:</b> <a href="_wiconnect_types_8h_source.html#l00093">WiconnectTypes.h:93</a></div></div>
+<div class="ttc" id="group__api__core__macro_html_ga596d1da2fb23f4e748c83d64a47e10b3"><div class="ttname"><a href="group__api__core__macro.html#ga596d1da2fb23f4e748c83d64a47e10b3">delayMs</a></div><div class="ttdeci">#define delayMs(ms)</div><div class="ttdoc">Function to stop processor for specified number of milliseconds. </div><div class="ttdef"><b>Definition:</b> <a href="sdk_8h_source.html#l00199">sdk.h:199</a></div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
--- a/doc/mbed/html/web_setup_2example_8cpp-example.html	Thu Nov 27 10:27:18 2014 +0000
+++ b/doc/mbed/html/web_setup_2example_8cpp-example.html	Mon Feb 23 20:30:18 2015 -0800
@@ -142,11 +142,6 @@
 <div class="line"></div>
 <div class="line"></div>
 <div class="line"></div>
-<div class="line"><span class="comment">/******************************************************************************</span></div>
-<div class="line"><span class="comment"> * Local Functions</span></div>
-<div class="line"><span class="comment"> */</span></div>
-<div class="line"><span class="keyword">static</span> <span class="keywordtype">void</span> webSetupCompleteCallback(<a name="a0"></a><a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result, <span class="keywordtype">void</span> *arg1, <span class="keywordtype">void</span> *arg2);</div>
-<div class="line"></div>
 <div class="line"></div>
 <div class="line"><span class="comment">/******************************************************************************</span></div>
 <div class="line"><span class="comment"> * Global Defines</span></div>
@@ -159,8 +154,6 @@
 <div class="line"><span class="comment">// Buffer used internally by WiConnect library, note that this is optional</span></div>
 <div class="line"><span class="keyword">static</span> uint8_t wiconnectInternalBuffer[256];</div>
 <div class="line"></div>
-<div class="line"><span class="comment">// Flag that indicate websetup has completed</span></div>
-<div class="line"><span class="keyword">static</span> <span class="keyword">volatile</span> <span class="keywordtype">bool</span> webSetupCompleteFlag = <span class="keyword">false</span>;</div>
 <div class="line"></div>
 <div class="line"></div>
 <div class="line"><span class="comment">/******************************************************************************</span></div>
@@ -168,6 +161,7 @@
 <div class="line"><span class="comment"> */</span></div>
 <div class="line"><span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
 <div class="line">{</div>
+<div class="line">    <a name="a0"></a><a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result;</div>
 <div class="line">    consoleSerial.baud(115200); <span class="comment">// console terminal to 115200 baud</span></div>
 <div class="line"></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
@@ -191,12 +185,12 @@
 <div class="line">    printf(<span class="stringliteral">&quot;Initializing WiConnect Library...\r\n&quot;</span>);</div>
 <div class="line"></div>
 <div class="line">    <span class="comment">// Initialize communication with WiFi module</span></div>
-<div class="line">    <span class="keywordflow">if</span>(wiconnect.init(<span class="keyword">true</span>) != <a name="a1"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line">    <span class="keywordflow">if</span>(<a name="a1"></a><a class="code" href="group__api__core__macro.html#gab27aa3ef76302b5221766abfd4f47e64">WICONNECT_FAILED</a>(result, wiconnect.init()))</div>
 <div class="line">    {</div>
 <div class="line">        <span class="keywordflow">if</span>(result == <a name="a2"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05a62defbdafd472461054dd6bb888c9a1e">WICONNECT_FIRMWARE_OUTDATED</a>)</div>
 <div class="line">        {</div>
-<div class="line">            printf(<span class="stringliteral">&quot;The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
-<div class="line">            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example&quot;</span>);</div>
+<div class="line">            printf(<span class="stringliteral">&quot;*** The WiFi firmware is not supported. Run the ota example to update the firmware:\r\n&quot;</span>);</div>
+<div class="line">            printf(<span class="stringliteral">&quot;https://developer.mbed.org/teams/ACKme/code/wiconnect-ota_example\r\n\r\n&quot;</span>);</div>
 <div class="line">        }</div>
 <div class="line">        <span class="keywordflow">else</span></div>
 <div class="line">        {</div>
@@ -214,7 +208,7 @@
 <div class="line">    printf(<span class="stringliteral">&quot;Starting Websetup...\r\n&quot;</span>);</div>
 <div class="line"></div>
 <div class="line">    <span class="comment">// Start web setup</span></div>
-<div class="line">    <span class="keywordflow">if</span>(wiconnect.startWebSetup(WEB_SETUP_SSID, WEB_SETUP_PASSWORD, Callback(webSetupCompleteCallback)) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line">    <span class="keywordflow">if</span>(wiconnect.startWebSetup(WEB_SETUP_SSID, WEB_SETUP_PASSWORD) != <a name="a3"></a><a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
 <div class="line">    {</div>
 <div class="line">        printf(<span class="stringliteral">&quot;Failed to start web setup\r\n&quot;</span>);</div>
 <div class="line">        <span class="keywordflow">for</span>(;;); <span class="comment">// infinite loop</span></div>
@@ -231,11 +225,18 @@
 <div class="line">    printf(<span class="stringliteral">&quot;4. This will bringup a setup page, enter your router&#39;s credentials.\r\n&quot;</span>);</div>
 <div class="line">    printf(<span class="stringliteral">&quot;5. Click the &#39;Save &amp; Exit&#39; button at the bottom of the webpage\r\n\r\n&quot;</span>);</div>
 <div class="line"></div>
-<div class="line">    <span class="keywordflow">while</span>(!webSetupCompleteFlag)</div>
+<div class="line">    <span class="keywordflow">for</span>(;;)</div>
 <div class="line">    {</div>
-<div class="line">        <span class="comment">// do nothing while we wait</span></div>
-<div class="line">        <span class="comment">// When the user exits web setup from the webpage</span></div>
-<div class="line">        <span class="comment">// webSetupCompleteCallback() will execute and set webSetupCompleteFlag TRUE</span></div>
+<div class="line">        <span class="keywordtype">bool</span> isRunning;</div>
+<div class="line">        </div>
+<div class="line">        <span class="keywordflow">if</span>(wiconnect.isWebSetupRunning(&amp;isRunning) != <a class="code" href="group__api__core__types.html#gga325637ed501728bd6c8c7a7982b9ce05af0a2ad8af174aee6b52813d8528328e7">WICONNECT_SUCCESS</a>)</div>
+<div class="line">        {</div>
+<div class="line">            printf(<span class="stringliteral">&quot;Failed to get websetup status\r\n&quot;</span>);</div>
+<div class="line">            <span class="keywordflow">for</span>(;;);</div>
+<div class="line">        }</div>
+<div class="line">        <a name="a4"></a><a class="code" href="group__api__core__macro.html#ga596d1da2fb23f4e748c83d64a47e10b3">delayMs</a>(100);</div>
+<div class="line">        <span class="keywordflow">if</span>(!isRunning)</div>
+<div class="line">            <span class="keywordflow">break</span>;</div>
 <div class="line">    }</div>
 <div class="line"></div>
 <div class="line">    <span class="comment">//-------------------------------------------------------------------------</span></div>
@@ -249,12 +250,6 @@
 <div class="line">}</div>
 <div class="line"></div>
 <div class="line"></div>
-<div class="line"><span class="comment">// this function is called when web setup completes</span></div>
-<div class="line"><span class="comment">// it is called in the background</span></div>
-<div class="line"><span class="keyword">static</span> <span class="keywordtype">void</span> webSetupCompleteCallback(<a class="code" href="group__api__core__types.html#ga325637ed501728bd6c8c7a7982b9ce05">WiconnectResult</a> result, <span class="keywordtype">void</span> *arg1, <span class="keywordtype">void</span> *arg2)</div>
-<div class="line">{</div>
-<div class="line">    webSetupCompleteFlag = <span class="keyword">true</span>;</div>
-<div class="line">}</div>
 </div><!-- fragment --> </div><!-- contents -->
 </div><!-- doc-content -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->