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
Revision 5:12ea15b9c2f4, committed 2013-10-03
- 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
--- /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