* switch from mbed to mbed-src, which works better with my board * list APs and their RSSI * read CC3000 firmware version

Dependencies:   cc3000_hostdriver_mbedsocket mbed-src

Fork of cc3000_hello_world_demo_sparkfun by MBED_DEMOS

Files at this revision

API Documentation at this revision

Comitter:
Kojto
Date:
Wed Nov 06 17:03:29 2013 +0000
Parent:
3:9fb9fa2cec61
Child:
5:042a68764bce
Commit message:
update to the newest host driver, change to use EthernetInterface

Changed in this revision

cc3000_hostdriver_mbedsocket.lib 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
--- a/cc3000_hostdriver_mbedsocket.lib	Wed Oct 09 19:46:33 2013 +0000
+++ b/cc3000_hostdriver_mbedsocket.lib	Wed Nov 06 17:03:29 2013 +0000
@@ -1,1 +1,1 @@
-http://mbed.org/users/Kojto/code/cc3000_hostdriver_mbedsocket/#1f70a62a160e
+http://mbed.org/users/Kojto/code/cc3000_hostdriver_mbedsocket/#50ab13d8f2dc
--- a/main.cpp	Wed Oct 09 19:46:33 2013 +0000
+++ b/main.cpp	Wed Nov 06 17:03:29 2013 +0000
@@ -19,101 +19,38 @@
 
 using namespace mbed_cc3000;
 
-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);
+cc3000 wifi(PTA16, PTA13, PTD0, SPI(PTD2, PTD3, PTC5), "ssid", "key", WPA2, false);
 Serial pc(USBTX, USBRX);
 #elif (MY_BOARD == WIFI_DIPCORTEX)
-cc3000 wifi(p28, p27, p30, SPI(p21, p14, p37), PIN_INT0_IRQn);
+cc3000 wifi(p28, p27, p30, SPI(p21, p14, p37), "ssid", "key", WPA2, false);
 Serial pc(UART_TX, UART_RX);
+#elif (MY_BOARD == MBED_BOARD_EXAMPLE)
+cc3000 wifi(p9, p10, p8, SPI(p5, p6, p7), "ssid", "key", WPA2, false);
+Serial pc(USBTX, USBRX);
 #else
 
 #endif
 
 /**
- *  \brief Print cc3000 information
+ *  \brief Hello World
  *  \param none
- *  \return none
- */
-void print_cc3000_info() {
-    uint8_t myMAC[8];
-
-    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]);
-}
-
-/**
- *  \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(char *ssid, char *key, unsigned char sec_mode) {
-    printf("Connecting to SSID: %s. Timeout is 10s. \r\n",ssid);
-    if (wifi.connect_to_AP((uint8_t *)ssid, (uint8_t *)key, sec_mode) == true) {
-        printf(" Connected. \r\n");
-    } else {
-        printf(" Connection timed-out (error). Please restart. \r\n");
-        while(1);
-  }
-}
-
-/**
- *  \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 Hello World
- *  \param  none
  *  \return int
  */
 int main() {
     init(); /* board dependent init */
     pc.baud(115200);
 
-    wifi.start(0);
     printf("cc3000 Hello World demo. \r\n");
-    print_cc3000_info();
-
-    printf("Attempting SSID Connection. \r\n");
-    wifi._wlan.ioctl_set_connection_policy(0, 0, 0);
-#ifndef CC3000_TINY_DRIVER
-#ifdef AP_KEY
-    connect_to_ssid(SSID, AP_KEY, AP_SECURITY);
-#else
-    connect_to_ssid(SSID);
-#endif
-#else
-    connect_to_ssid(SSID);
-#endif
-    printf("DHCP request \r\n");
-    while (wifi.is_dhcp_configured() == false) {
-         wait_ms(500);
-         printf("  Waiting for dhcp to be set. \r\n");
+    wifi.init();
+    if (wifi.connect() == -1) {
+        printf("Failed to connect. Please verify connection details and try again. \r\n");
+    } else {
+        printf("IP address: %s \r\n",wifi.getIPAddress());
+        printf("\r\ncc3000 connected to the Internet. Demo completed. \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]);
-    printf("\r\ncc3000 connected to the Internet. Demo completed. \r\n\r\n");
-
     wifi.disconnect();
 }
 
--- a/main.h	Wed Oct 09 19:46:33 2013 +0000
+++ b/main.h	Wed Nov 06 17:03:29 2013 +0000
@@ -22,17 +22,6 @@
 
 #define MY_BOARD WIGO
 
-// use this defines in AP_SECURITY
-#define NONE 0
-#define WEP  1
-#define WPA  2
-#define WPA2 3
-
- // Default SSID Settings
-#define AP_KEY       "test"
-#define AP_SECURITY  WPA2            // WPA2 must be enabled for use with iPhone or Android phone hotspot!
-#define SSID         "test"
-
 void init();
 
 #endif