This example test the SSL socket connection ability with google.com@443

Dependencies:   NNN50_WIFI_API

Files at this revision

API Documentation at this revision

Comitter:
tsungta
Date:
Tue Sep 12 02:06:32 2017 +0000
Child:
1:4d09372e86ed
Commit message:
First commit

Changed in this revision

NNN50_WIFI_API.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
mbed-os.lib Show annotated file Show diff for this revision Revisions of this file
mbed_app.json Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/NNN50_WIFI_API.lib	Tue Sep 12 02:06:32 2017 +0000
@@ -0,0 +1,1 @@
+https://developer.mbed.org/teams/Delta/code/NNN50_WIFI_API/#8298a2fb074f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Tue Sep 12 02:06:32 2017 +0000
@@ -0,0 +1,79 @@
+/******************** (C) COPYRIGHT 2016 Delta Electronics, Inc. ***************
+*
+* File Name : main.cpp
+* Authors   : Tsungta Wu - CPBG (tsungta.wu@deltaww.com)
+* Version   : V.1.0.0
+* Date      : 2016/Nov/24
+*
+* This example only show the most basic WiFi operation include AP scan and connect 
+* The usage of TCP/UDP socket please refer to the mbed Handbook from the link below
+* https://developer.mbed.org/handbook/Socket
+*
+*******************************************************************************/
+
+#include "mbed.h"
+#include "EthernetInterface.h"
+#include "WIFIDevice.h"
+
+const char* ECHO_SERVER_ADDRESS = "192.168.2.13";
+const int ECHO_SERVER_PORT = 1030;
+
+void scanCallback(tstrM2mWifiscanResult result)
+{
+    printf("SSID: %s \n", result.au8SSID);
+    printf("RSSI: %i \n", result.s8rssi);
+}
+
+int main() {
+
+    EthernetInterface eth;
+    WIFIDevice wifi;
+
+    eth.init();
+
+    wifi.apScan(scanCallback);
+             
+    wifi.setNetwork(M2M_WIFI_SEC_WPA_PSK, "TWCYNPC0209_Mac mini", "mayday55555"); 
+    
+    eth.connect();    
+
+    if(wifi.is_AP_connected())
+        printf("Connect Success! \n");
+    else
+        printf("Connect Fail! \n");    
+
+    printf("MAC: %s\n", eth.getMACAddress());            
+    printf("IP: %s\n", eth.getIPAddress());
+    printf("Gateway: %s\n", eth.getGateway());
+    printf("NetworkMask: %s\n", eth.getNetworkMask()); 
+
+    UDPSocket sock;
+    sock.init();
+    
+    Endpoint echo_server;
+    echo_server.set_address(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT);
+    
+    char out_buffer[] = "Hello World";
+    printf("Sending  message '%s' to server (%s)\n",out_buffer,ECHO_SERVER_ADDRESS);
+    sock.sendTo(echo_server, out_buffer, sizeof(out_buffer));
+    
+    char in_buffer[256];    //IMPORTANT, array size MUST >= the actual received data size or set to maximum of 1400 if there is uncertainty
+    int n = sock.receiveFrom(echo_server, in_buffer, sizeof(in_buffer));
+    
+    if(n <0)
+        in_buffer[0] = '\0';//IMPORTANT, in case n = -1 when set_bloacking is timeout, prevent the illegal array in_buffer[-1] access 
+    else
+        in_buffer[n] = '\0';
+        
+    printf("Received message from server: '%s'\n", in_buffer);
+    
+    sock.close();
+    
+    eth.disconnect();                             
+    
+    wifi.sleep();
+                                 
+    while(1) {
+    }
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed-os.lib	Tue Sep 12 02:06:32 2017 +0000
@@ -0,0 +1,1 @@
+https://github.com/ARMmbed/mbed-os/#c9e63f14085f5751ff5ead79a7c0382d50a813a2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed_app.json	Tue Sep 12 02:06:32 2017 +0000
@@ -0,0 +1,17 @@
+{
+    "config": {
+        "lf_clock_rc_calib_timer_interval": {
+            "value": 16,
+            "macro_name": "MBED_CONF_NORDIC_NRF_LF_CLOCK_CALIB_TIMER_INTERVAL"
+        },
+        "lf_clock_rc_calib_mode_config": {
+            "value": 0,
+            "macro_name": "MBED_CONF_NORDIC_NRF_LF_CLOCK_CALIB_MODE_CONFIG"
+        },
+        "uart_hwfc": {
+            "help": "Value: 1 for enable, 0 for disable",
+            "value": 0,
+            "macro_name": "MBED_CONF_NORDIC_UART_HWFC"
+        }        
+    }
+}
\ No newline at end of file