mbed Sensor node for Instrumented Booth over ETH.

Dependencies:   EthernetInterface-1 MaxbotixDriver Presence HTU21D_TEMP_HUMID_SENSOR_SAMPLE Resources SHARPIR mbed-rtos mbed-src WDT_K64F nsdl_lib

Fork of Trenton_Switch_LPC1768_ETH by Demo Team

Files at this revision

API Documentation at this revision

Comitter:
Kojto
Date:
Thu Oct 03 21:26:22 2013 +0200
Parent:
4:b5875efcf0e5
Child:
6:6eaae34586b8
Commit message:
Initial version for new host driver

- not fully working

Changed in this revision

init.cpp Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
main.h Show annotated file Show diff for this revision Revisions of this file
tcp_ip_demo.cpp Show diff for this revision Revisions of this file
tcp_ip_demo.h Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/init.cpp	Thu Oct 03 21:26:22 2013 +0200
@@ -0,0 +1,70 @@
+/* mbed Microcontroller Library
+ * Copyright (c) 2006-2013 ARM Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#include "main.h"
+#include "mbed.h"
+
+#if (MY_BOARD == WIGO)
+
+#include "NVIC_set_all_priorities.h"
+
+/**
+ *  \brief Wi-Go initialization
+ *  \param none
+ *  \return none
+ */
+void init() {
+    DigitalOut PWR_EN1(PTB2);
+    DigitalOut PWR_EN2(PTB3);
+
+    // Wi-Go set current to 500mA since we're turning on the Wi-Fi
+    PWR_EN1 = 0;
+    PWR_EN2 = 1;
+
+    NVIC_set_all_irq_priorities(3);
+    NVIC_SetPriority(SPI0_IRQn, 0x0);     // Wi-Fi SPI interrupt must be higher priority than SysTick
+    NVIC_SetPriority(PORTA_IRQn, 0x1);
+    NVIC_SetPriority(SysTick_IRQn, 0x2);  // SysTick set to lower priority than Wi-Fi SPI bus interrupt
+    PORTA->PCR[16] |=PORT_PCR_ISF_MASK;
+    PORTA->ISFR |= (1 << 16);
+}
+
+#elif (MY_BOARD == WIFI_DIPCORTEX)
+
+/**
+ *  \brief Wifi DipCortex initialization
+ *  \param none
+ *  \return none
+ */
+void init() {
+    NVIC_SetPriority(SSP1_IRQn, 0x0);
+    NVIC_SetPriority(PIN_INT0_IRQn, 0x1);
+
+    // SysTick set to lower priority than Wi-Fi SPI bus interrupt
+    NVIC_SetPriority(SysTick_IRQn, 0x2);
+}
+
+#else
+
+/**
+ *  \brief Place here init routine for your board
+ *  \param none
+ *  \return none
+ */
+void init() {
+
+}
+
+#endif
--- a/main.cpp	Thu Oct 03 16:56:32 2013 +0000
+++ b/main.cpp	Thu Oct 03 21:26:22 2013 +0200
@@ -15,79 +15,101 @@
  */
 #include "mbed.h"
 #include "cc3000.h"
-#include "tcp_ip_demo.h"
 #include "main.h"
+#include "TCPSocketConnection.h"
+#include "TCPSocketServer.h"
 
 using namespace mbed_cc3000;
 
-#if (WIGO_BOARD)
-// Wi-Go battery charger control
-DigitalOut PWR_EN1(PTB2);
-DigitalOut PWR_EN2(PTB3);
-// Wi-go LED
-DigitalOut ledr (LED_RED);
-DigitalOut ledg (LED_GREEN);
-DigitalOut ledb (LED_BLUE);
-DigitalOut led1 (PTB8);
-DigitalOut led2 (PTB9);
-DigitalOut led3 (PTB10);
+tUserFS user_info;
+
+/* cc3000 module declaration specific for user's board. Check also init() */
+#if (MY_BOARD == WIGO)
+cc3000 wifi(PTA16, PTA13, PTD0, SPI(PTD2, PTD3, PTC5), PORTA_IRQn);
+Serial pc(USBTX, USBRX);
+#elif (MY_BOARD == WIFI_DIPCORTEX)
+cc3000 wifi(p28, p27, p30, SPI(p21, p14, p37), PIN_INT0_IRQn);
+Serial pc(UART_TX, UART_RX);
+#else
+
 #endif
 
-Serial pc(USBTX, USBRX);
-cc3000 wigo(PTA16, PTA13, PTD0, SPI(PTD2, PTD3, PTC5), PORTA_IRQn);
+#ifndef CC3000_UNENCRYPTED_SMART_CONFIG
+  const uint8_t smartconfigkey[] = {0x73,0x6d,0x61,0x72,0x74,0x63,0x6f,0x6e,0x66,0x69,0x67,0x41,0x45,0x53,0x31,0x36};
+#else
+  const uint8_t smartconfigkey = 0;
+#endif
 
-/** Initialize LED (only for Wi-go board)
- *  \param  none
- *  \return none
- */
-void initLEDs(void)
-{
-    RED_OFF;
-    GREEN_OFF;
-    BLUE_OFF;
-    LED_D1_OFF;
-    LED_D2_OFF;
-    LED_D3_OFF;
-}
-
-/** Print cc3000 information
- *  \param  none
+/**
+ *  \brief Print cc3000 information
+ *  \param none
  *  \return none
  */
 void print_cc3000_info() {
-    wigo.get_user_file_info((uint8_t *)&userFS, sizeof(userFS));
-    wigo.get_mac_address(myMAC);
-    printf("\n\nWi-Go MAC address %02x:%02x:%02x:%02x:%02x:%02x\n\n", myMAC[0], myMAC[1], myMAC[2], myMAC[3], myMAC[4], myMAC[5]);
+    uint8_t myMAC[8];
 
-    printf("FTC        %i\n",userFS.FTC);
-    printf("PP_version %i.%i\n",userFS.PP_version[0], userFS.PP_version[1]);
-    printf("SERV_PACK  %i.%i\n",userFS.SERV_PACK[0], userFS.SERV_PACK[1]);
-    printf("DRV_VER    %i.%i.%i\n",userFS.DRV_VER[0], userFS.DRV_VER[1], userFS.DRV_VER[2]);
-    printf("FW_VER     %i.%i.%i\n",userFS.FW_VER[0], userFS.FW_VER[1], userFS.FW_VER[2]);
+    printf("MAC address + cc3000 info \r\n");
+    wifi.get_user_file_info((uint8_t *)&user_info, sizeof(user_info));
+    wifi.get_mac_address(myMAC);
+    printf(" MAC address %02x:%02x:%02x:%02x:%02x:%02x \r\n \r\n", myMAC[0], myMAC[1], myMAC[2], myMAC[3], myMAC[4], myMAC[5]);
+
+    printf(" FTC        %i \r\n",user_info.FTC);
+    printf(" PP_version %i.%i \r\n",user_info.PP_version[0], user_info.PP_version[1]);
+    printf(" SERV_PACK  %i.%i \r\n",user_info.SERV_PACK[0], user_info.SERV_PACK[1]);
+    printf(" DRV_VER    %i.%i.%i \r\n",user_info.DRV_VER[0], user_info.DRV_VER[1], user_info.DRV_VER[2]);
+    printf(" FW_VER     %i.%i.%i \r\n",user_info.FW_VER[0], user_info.FW_VER[1], user_info.FW_VER[2]);
 }
 
-/** Connect to SSID with security
- *  \param  ssid     Name of SSID
- *  \param  key      Password
- *  \param  sec_mode Security mode
+/**
+ *  \brief Connect to SSID with a timeout
+ *  \param ssid     Name of SSID
+ *  \param key      Password
+ *  \param sec_mode Security mode
  *  \return none
  */
-void connect_to_ssid(uint8_t *ssid, uint8_t *key, uint8_t sec_mode) {
+void connect_to_ssid(char *ssid, char *key, unsigned char sec_mode) {
     printf("Connecting to SSID: %s. Timeout is 10s.\n",ssid);
-    if (wigo.connect_to_AP(ssid, key, sec_mode) == true) {
-        printf("Connected\n");
+    if (wifi.connect_to_AP((uint8_t *)ssid, (uint8_t *)key, sec_mode) == true) {
+        printf(" Connected\n");
     } else {
-        printf("Connection timed-out (error). Please restart.\n");
+        printf(" Connection timed-out (error). Please restart.\n");
         while(1);
   }
 }
 
-/** Connect to SSID without security
- *  \param  ssid Name of SSID
+/**
+ *  \brief Connect to SSID without security
+ *  \param ssid Name of SSID
+ *  \return none
+ */
+void connect_to_ssid(char *ssid) {
+    wifi.connect_open((uint8_t *)ssid);
+}
+
+/**
+ *  \brief First time configuration
+ *  \param none
  *  \return none
  */
-void connect_to_ssid(uint8_t *ssid) {
-    wigo.connect_open(ssid);
+void do_FTC(void) {
+    printf("Running First Time Configuration \r\n");
+    wifi.start_smart_config(smartconfigkey);
+    while (wifi.is_dhcp_configured() == false) {
+         wait_ms(500);
+         printf("Waiting for dhcp to be set. \r\n");
+    }
+    user_info.FTC = 1;
+    wifi.set_user_file_info((uint8_t *)&user_info, sizeof(user_info));
+    wifi._wlan.stop();
+    printf("FTC finished.\n");
+}
+
+/** Start smart config
+ *  \param  none
+ *  \return none
+ */
+void start_smart_config() {
+    wifi.start_smart_config(smartconfigkey);
 }
 
 /** Main function
@@ -95,68 +117,83 @@
  *  \return int
  */
 int main() {
-    // Wi-Go set current to 500mA since we're turning on the Wi-Fi
-    SET_PWR_EN1;
-    SET_PWR_EN2;
-
+    init(); /* board dependent init */
     pc.baud(115200);
 
-    /* KL25 specific code */
-    NVIC_SetAllPriority(3);
-    NVIC_SetPriority(SPI0_IRQn, 0x0);     // Wi-Fi SPI interrupt must be higher priority than SysTick
-    NVIC_SetPriority(PORTA_IRQn, 0x1);
-    NVIC_SetPriority(SysTick_IRQn, 0x2);  // SysTick set to lower priority than Wi-Fi SPI bus interrupt
-
-    CLEAR_PCR_INTERRUPT;
-    CLEAN_PORT_INTERRUPT;
-
-    GREEN_ON;
-    wigo.start(0);
-    printf("CC3000 Python demo.\n");
+    wifi.start(0);
+    printf("cc3000 Simple socket demo. \r\n");
     print_cc3000_info();
 
-    printf("\n<0> Normal run. SmartConfig will\n    start if no valid connection exists.\n");
-    printf("<1> Connect using fixed SSID : %s\n", SSID);
-    printf("<2> SmartConfig.\n");
+    printf("\n<0> Normal run. SmartConfig will \r\n    start if no valid connection exists. \r\n");
+    printf("<1> Connect using fixed SSID : %s \r\n", SSID);
+    printf("<2> SmartConfig. \r\n");
 
     signed char c = getchar();
     switch (c)
     {
         case '0':
-            if(!userFS.FTC)
+            if(!user_info.FTC)
             {
                 do_FTC();
-                wigo._wlan.stop();
+                wifi._wlan.stop();
             }
             break;
         case '1':
-            printf("Attempting SSID Connection\n");
+            printf("Attempting SSID Connection. \r\n");
 #ifndef CC3000_TINY_DRIVER
     #ifdef AP_KEY
-            connect_to_ssid((uint8_t *)SSID,(uint8_t *)AP_KEY,AP_SECURITY); /* TODO rewrite to const vraiables - NOT MACROS */
+            connect_to_ssid(SSID, AP_KEY, AP_SECURITY); /* TODO rewrite to const vraiables - NOT MACROS */
     #else
-            connect_to_ssid((uint8_t *)SSID);
+            connect_to_ssid(SSID);
     #endif
 #else
-            connect_to_ssid((uint8_t *)SSID);
+            connect_to_ssid(SSID);
 #endif
             break;
         case '2':
-            printf("Starting Smart Config configuration.\n");
+            printf("Starting Smart Config configuration. \r\n");
             start_smart_config();
-            init_dhcp();
+            while (wifi.is_dhcp_configured() == false)
+            {
+                wait_ms(500);
+                printf("Waiting for dhcp to be set. \r\n");
+            }
 
-            printf("Press the reset button on your board and select 0...\n");
+            printf("Press the reset button on your board and select 0... \r\n");
             while(1);
         default:
-            printf("Wrong selection.\n");
-            printf("Reset the board and try again.\n");
+            printf("Wrong selection. \r\n");
+            printf("Reset the board and try again. \r\n");
             break;
     }
-    SmartConfigProfilestored = SMART_CONFIG_SET;
-    RED_OFF;
-    GREEN_OFF;
-    BLUE_OFF;
+
+    printf("DHCP request \r\n");
+    while (wifi.is_dhcp_configured() == false) {
+         wait_ms(500);
+         printf("  Waiting for dhcp to be set. \r\n");
+    }
+
+    tNetappIpconfigRetArgs ipinfo2;
+    wifi.get_ip_config(&ipinfo2); // data is returned in the ipinfo2 structure
+    printf("DHCP assigned IP Address = %d.%d.%d.%d \r\n", ipinfo2.aucIP[3], ipinfo2.aucIP[2], ipinfo2.aucIP[1], ipinfo2.aucIP[0]);
+
+    char python_msg[] = "Hello Python\n";
+    TCPSocketServer server;
 
-    run_tcp_server();    // Run TCP/IP Connection to host
+    server.bind(15000);
+    server.listen();
+    while (1) {
+        TCPSocketConnection client;
+        int32_t status = server.accept(client);
+        if (status >= 0) {
+            client.set_blocking(false, 1500); // Timeout after (1.5)s
+            printf("Connection from: %s \r\n", client.get_address());
+            char buffer[256];
+            client.receive(buffer, sizeof(buffer));
+            printf("Received: %s \r\n",buffer);
+            printf("Sending the message to the server. \r\n");
+            client.send_all(python_msg, sizeof(python_msg));
+            client.close();
+        }
+    }
 }
--- a/main.h	Thu Oct 03 16:56:32 2013 +0000
+++ b/main.h	Thu Oct 03 21:26:22 2013 +0200
@@ -16,77 +16,41 @@
 #ifndef MAIN_H
 #define MAIN_H
 
-#define WIGO_BOARD 1
-
-#if (WIGO_BOARD == 1)
+#define WIGO           1
+#define WIFI_DIPCORTEX 2
+#define UNDEFINED      3
 
-extern DigitalOut ledr;
-extern DigitalOut ledg;
-extern DigitalOut ledb;
-extern DigitalOut led1;
-extern DigitalOut led2;
-extern DigitalOut led3;
+#define MY_BOARD WIGO
 
-#define RED_OFF        ledr = 1;
-#define RED_ON         ledr = 0;
-#define RED_TOGGLE     ledr = !ledr;
-#define GREEN_OFF      ledg = 1;
-#define GREEN_ON       ledg = 0;
-#define GREEN_TOGGLE   ledg = !ledg;
-#define BLUE_OFF       ledb = 1;
-#define BLUE_ON        ledb = 0;
-#define BLUE_TOGGLE    ledb = !ledb;
-#define LED_D1_OFF     led1 = 1;
-#define LED_D1_ON      led1 = 0;
-#define LED_D1_TOGGLE  led1 = !led1;
-#define LED_D2_OFF     led2 = 1;
-#define LED_D2_ON      led2 = 0;
-#define LED_D2_TOGGLE  led2 = !led2;
-#define LED_D3_OFF     led3 = 1;
-#define LED_D3_ON      led3 = 0;
-#define LED_D3_TOGGLE  led3 = !led3;
+// use this defines in AP_SECURITY
+#define NONE 0
+#define WEP  1
+#define WPA  2
+#define WPA2 3
 
-#define SET_PWR_EN1    PWR_EN1 = 0
-#define SET_PWR_EN2    PWR_EN2 = 1
+// use smart config
+#define USE_SMART_CONFIG 0
 
-#define WLAN_ISF_PCR        PORTA->PCR[16]
-#define WLAN_ISF_ISFR       PORTA->ISFR
-#define WLAN_ISF_MASK       (1<<16)
+ // Default SSID Settings
+#define AP_KEY       "zxcvbnm,./"
+#define AP_SECURITY  WPA2            // WPA2 must be enabled for use with iPhone or Android phone hotspot!
+#define SSID         "SSID"
 
-#define CLEAR_PCR_INTERRUPT    WLAN_ISF_PCR|=PORT_PCR_ISF_MASK;
-#define CLEAN_PORT_INTERRUPT    WLAN_ISF_ISFR|=WLAN_ISF_MASK;
-
-#else
-
-#define CLEAR_PCR_INTERRUPT
-#define CLEAN_PORT_INTERRUPT
+#define USE_DHCP      1
+#define USE_STATIC_IP 2
 
-#define RED_OFF
-#define RED_ON
-#define RED_TOGGLE
-#define GREEN_OFF
-#define GREEN_ON
-#define GREEN_TOGGLE
-#define BLUE_OFF
-#define BLUE_ON
-#define BLUE_TOGGLE
-#define LED_D1_OFF
-#define LED_D1_ON
-#define LED_D1_TOGGLE
-#define LED_D2_OFF
-#define LED_D2_ON
-#define LED_D2_TOGGLE
-#define LED_D3_OFF
-#define LED_D3_ON
-#define LED_D3_TOGGLE
+// Modify the following settings as necessary for your Wi-Fi Network setup:
+#define IP_ALLOC_METHOD USE_DHCP        // for DHCP assigned IP address
+//#define IP_ALLOC_METHOD USE_STATIC_IP // for static IP address
 
-#define SET_PWR_EN1
-#define SET_PWR_EN2
+#define STATIC_IP_OCT1 192
+#define STATIC_IP_OCT2 168
+#define STATIC_IP_OCT3 0
+#define STATIC_IP_OCT4 103
 
-#define WLAN_ISF_PCR
-#define WLAN_ISF_ISFR
-#define WLAN_ISF_MASK
+#define STATIC_GW_OCT4 1             // Static Gateway address  = STATIC_IP_OCT1.STATIC_IP_OCT2.STATIC_IP_OCT3.STATIC_GW_OCT4
+
+
+void init();
 
 #endif
-
-#endif
--- a/tcp_ip_demo.cpp	Thu Oct 03 16:56:32 2013 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,210 +0,0 @@
-/* mbed Microcontroller Library
- * Copyright (c) 2006-2013 ARM Limited
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-#include "tcp_ip_demo.h"
-#include "cc3000.h"
-#include "main.h"
-
-using namespace mbed_cc3000;
-
-extern cc3000 wigo;
-
-uint8_t ConnectUsingSmartConfig;
-uint8_t myMAC[8];
-tUserFS userFS;
-
-uint8_t SmartConfigProfilestored = 0xff;
-
-#ifndef CC3000_UNENCRYPTED_SMART_CONFIG
-  const uint8_t smartconfigkey[] = {0x73,0x6d,0x61,0x72,0x74,0x63,0x6f,0x6e,0x66,0x69,0x67,0x41,0x45,0x53,0x31,0x36};
-#else
-  const uint8_t smartconfigkey = 0;
-#endif
-
-/* Device name - used for Smart config in order to stop the Smart phone configuration process */
-static uint8_t DevServname[] = "CC3000";
-static int8_t requestBuffer[REQ_BUFFER_SIZE];
-
-/** Start tcp server
- *  \param  port Port for server
- *  \return none
- */
-void create_tcp_connection(int32_t port) {
-  const char python_msg[] = "Hello Python\n";
-  int32_t stat;
-  cc3000_server server = wigo.create_tcp_server(0, 15000);
-
-  server.bind();
-  server.listen(1); /* backlog = 1 */
-  while (1) {
-    stat = server.accept();
-    printf("Connected\n");
-    if (stat >= 0) {
-     server.receive(requestBuffer,20,0);
-     printf("Input = %s\n", requestBuffer);
-     stat = server.send((void *)python_msg, strlen(python_msg), 0);
-     printf("status= %d\n", stat);
-    } else {
-        printf("ERROR %d", stat);
-        switch (stat) {
-            case -1:
-                printf(": remote socket closed.\n");
-                break;
-            case -2:
-                printf(": no buffers available.\n");
-                break;
-            case -57:
-                printf(": timeout - no reply from remote.\n");
-                break;
-            default:
-                printf("\n");
-        }
-    }
-    server.close();
-    printf("Done, press any key to repeat\n");
-    getchar();
-  }
-}
-
-/** Start smart config
- *  \param  none
- *  \return none
- */
-void start_smart_config() {
-    wigo.start_smart_config(smartconfigkey);
-}
-
-/** Initialize
- *  \param  none
- *  \return none
- */
-void init_dhcp(void)
-{
-    int32_t t;
-    tNetappIpconfigRetArgs ipinfo2;
-
-    //dynamic dhcp is set by default
-#if IP_ALLOC_METHOD == USE_STATIC_IP
-    set_static_dhcp();
-#endif
-    check_dhcp();
-
-  // If we're not blocked by accept or others, obtain the latest status
-    wigo.get_ip_config(&ipinfo2);                  // data is returned in the ipinfo2 structure
-    printf("\n*** Wi-Go board DHCP assigned IP Address = %d.%d.%d.%d\n", ipinfo2.aucIP[3], ipinfo2.aucIP[2], ipinfo2.aucIP[1], ipinfo2.aucIP[0]);
-
-    t = wigo._socket.mdnsAdvertiser(1, DevServname, sizeof(DevServname));
-    printf("mDNS Status= %x\n", t);
-}
-
-/** Waits for dhcp to be set
- *  \param  none
- *  \return none
- */
-void check_dhcp(void)
-{
-    int32_t t;
-
-    while (wigo.is_dhcp_configured() == false)
-    {
-         wait_ms(500);
-         printf("Waiting for dhcp to be set.\n");
-    }
-
-    t = wigo._socket.mdnsAdvertiser(1, DevServname, sizeof(DevServname));
-    printf("mDNS Status= %x\n", t);
-}
-
-/** Sets static DHCP (auto dhpc by default)
- *  \param  none
- *  \return none
- */
-void set_static_dhcp(void)
-{
-    uint8_t pucIP_Addr[4];
-    uint8_t pucIP_DefaultGWAddr[4];
-    uint8_t pucSubnetMask[4];
-    uint8_t pucDNS[4];
-
-    // Subnet mask is assumed to be 255.255.255.0
-    pucSubnetMask[0] = 0xFF;
-    pucSubnetMask[1] = 0xFF;
-    pucSubnetMask[2] = 0xFF;
-    pucSubnetMask[3] = 0x0;
-
-    // CC3000's IP
-    pucIP_Addr[0] = STATIC_IP_OCT1;
-    pucIP_Addr[1] = STATIC_IP_OCT2;
-    pucIP_Addr[2] = STATIC_IP_OCT3;
-    pucIP_Addr[3] = STATIC_IP_OCT4;
-
-    // Default Gateway/Router IP
-    // 192.168.1.1
-    pucIP_DefaultGWAddr[0] = STATIC_IP_OCT1;
-    pucIP_DefaultGWAddr[1] = STATIC_IP_OCT2;
-    pucIP_DefaultGWAddr[2] = STATIC_IP_OCT3;
-    pucIP_DefaultGWAddr[3] = STATIC_GW_OCT4;
-
-    // We assume the router is also a DNS server
-    pucDNS[0] = STATIC_IP_OCT1;
-    pucDNS[1] = STATIC_IP_OCT2;
-    pucDNS[2] = STATIC_IP_OCT3;
-    pucDNS[3] = STATIC_GW_OCT4;
-
-    wigo._netapp.dhcp((uint32_t *)pucIP_Addr,
-                (uint32_t *)pucSubnetMask,
-                (uint32_t *)pucIP_DefaultGWAddr,
-                (uint32_t *)pucDNS);
-
-    // reset the CC3000 to apply Static Setting
-    wigo._wlan.stop();
-    wait(1);
-    wigo._wlan.start(0);
-
-    // Mask out all non-required events from CC3000
-    wigo._wlan.set_event_mask(HCI_EVNT_WLAN_KEEPALIVE|
-                        HCI_EVNT_WLAN_UNSOL_INIT|
-                        HCI_EVNT_WLAN_ASYNC_PING_REPORT);
-}
-
-/** Executes functions for tcp/ip server
- *  \param  none
- *  \return none
- */
-void run_tcp_server(void)
-{
-    init_dhcp();
-    printf("\n\nStarting TCP/IP Server\n");
-    create_tcp_connection(TCPIP_PORT);
-}
-
-/** First time configuration
- *  \param  none
- *  \return none
- */
-void do_FTC(void)
-{
-    printf("Running First Time Configuration\n");
-    start_smart_config();
-    init_dhcp();
-    userFS.FTC = 1;
-    wigo.set_user_file_info((uint8_t *)&userFS, sizeof(userFS));
-    SmartConfigProfilestored = SMART_CONFIG_SET;
-    wigo._wlan.stop();
-    printf("FTC finished.\n");
-}
-
-
-
--- a/tcp_ip_demo.h	Thu Oct 03 16:56:32 2013 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-#ifndef DOTCPIP_H
-#define DOTCPIP_H
-
-#include "cc3000.h"
-
-/** TCP/IP Functions
-*
-*/
-#ifndef FALSE
-#define FALSE 0
-#endif
-
-#ifndef TRUE
-#define TRUE 1
-#endif
-
-#define SMART_CONFIG_SET 0x55
-#define TCPIP_PORT 15000
-
-#define USE_DHCP      1
-#define USE_STATIC_IP 2
-
-#define NONE 0
-#define WEP  1
-#define WPA  2
-#define WPA2 3
-
-// Modify the following settings as necessary for your Wi-Fi Network setup:
-#define IP_ALLOC_METHOD USE_DHCP        // for DHCP assigned IP address
-//#define IP_ALLOC_METHOD USE_STATIC_IP // for static IP address
-
-// Default SSID Settings
-#define AP_KEY       "87654321"
-#define AP_SECURITY     WPA2            // WPA2 must be enabled for use with iPhone or Android phone hotspot!
-#define SSID           "test"
-//#define AP_SECURITY    NONE          // no security but will connect quicker!
-#define STATIC_IP_OCT1 192
-#define STATIC_IP_OCT2 168
-#define STATIC_IP_OCT3 0
-#define STATIC_IP_OCT4 103
-
-#define STATIC_GW_OCT4 1             // Static Gateway address  = STATIC_IP_OCT1.STATIC_IP_OCT2.STATIC_IP_OCT3.STATIC_GW_OCT4
-
-#define REQ_BUFFER_SIZE 400
-
-
-extern mbed_cc3000::tUserFS userFS;
-
-extern uint8_t myMAC[8];
-extern uint8_t SmartConfigProfilestored;
-
-
-void check_dhcp(void);
-void start_smart_config(void);
-void create_tcp_connection(int32_t port);
-void init_dhcp(void);
-void run_tcp_server(void);
-void do_FTC(void);
-void set_dhcp(void);
-
-#endif // DOTCPIP_H