Enterprise Wi-Fi

  1. XDK Enterprise Network Connection Project Setup
    1. Wi-Fi Module upgrade
    2. Connecting to Enterprise Network
    3. Configuration Parameters

XDK Enterprise Network Connection Project Setup

The source code for the Enterprise Network Connection can be downloaded here WiFi_firmware_update.

Once you have downloaded all the source code and placed the source files in the proper location, import both projects into the XDK workbench, i.e. WiFiHostProgramming and EnterpriseWiFi project.  Please see the XDK Workbench or User Guide tutorials in the Help & Learning section of the XDK website for more information on how to properly import a project.  Once this is done insure you also have the following items in order to confirm a working installation of the Enterprise Network Connection Demo project.

  • XDK110 – Hardware Development Kit
  • XDK Workbench – Necessary to configure the source code for the wireless network and to flash the XDK.  The workbench can be downloaded from the XDK Community.
  • WPA2-Enterprise Wi-Fi network and along with the following credentials:
    • SSID
    • Username
    • Password

This rest of this section will show the user how to configure the code and flash the XDK using the XDK Workbench.

Wi-Fi Module upgrade

The Wi-Fi Host Programming project upgrades the Wi-Fi module by serially flashing in the service pack header files. In addition, the project will also flash in a dummy certificate file to enable enterprise network access. First import the Wi-Fi Host Programming project, then flash it to the XDK. Pressing button 1 of the XDK will output the current version of the Wi-Fi module in the XDK-Workbench output console. Pressing button 2 of the XDK will automatically flash in the service pack, wait two seconds, and then flash in the dummy certificate file to the Wi-Fi module. Please wait until you see the message “file write coplete” in the console. If you abort the update before it can damage your device permanently.

Image

Connecting to Enterprise Network

The Enterprise Wi-Fi project connects to WPA2-Enterprise Wi-Fi network given specific network parameters. You will need the following information:

  1. SSID of the Wi-Fi network
  2. Username
  3. Password
  4. Network IP configuration (static or DHCP)
    • If static, you will need:
      • Open IPv4 network address
      • DNS server address
      • Gateway address
      • Subnet mask
  5. Network EAP method

Once you have gather all the necessary information, configure these settings in EnterpriseWiFi.h header file:

Image

Configuration Parameters

Header file configuration tips/comments:

  1. WLAN_ENT_SSID
    • SSID of the available enterprise network (WPA2-Enterprise)
  2. WLAN_USERNAME
    • Login credential (username)
  3. WLAN_ENT_PWD
    • Login credential (password)
  4. ENABLE_DHCP
    • Toggle DHCP/Static IP configuration. True means connecting to DHCP enabled network. If false, configure IPV4 parameters 5-8 below.
  5. IPV4
    • IP address for static IP configuration
  6. IPV4_DNS_SERVER
    • Static IP DNS Server address
  7. IPV4_GATEWAY
    • Static IP Gateway Server address
  8. IPV4_MASK
    • Static IP subnet mask
  9. SEC_TYPE
    • EAP method security type. Please choose one that matches your enterprise network configuration (#defines available in wlan.h):
      • SL_ENT_EAP_METHOD_TLS
      • SL_ENT_EAP_METHOD_TTLS_TLS
      • SL_ENT_EAP_METHOD_TTLS_MSCHAPv2
      • SL_ENT_EAP_METHOD_TTLS_PSK
      • SL_ENT_EAP_METHOD_PEAP0_TLS
      • SL_ENT_EAP_METHOD_PEAP0_MSCHAPv2 (default)
      • SL_ENT_EAP_METHOD_PEAP0_PSK
      • SL_ENT_EAP_METHOD_PEAP1_TLS
      • SL_ENT_EAP_METHOD_PEAP1_MSCHAPv2
      • SL_ENT_EAP_METHOD_PEAP1_PSK
      • SL_ENT_EAP_METHOD_FAST_AUTH_PROVISIONING
      • SL_ENT_EAP_METHOD_FAST_UNAUTH_PROVISIONING
      • SL_ENT_EAP_METHOD_FAST_NO_PROVISIONING

Save the changes and build/flash the project onto the XDK. Once flashed, the XDK will automatically attempt to connect to the enterprise Wi-Fi. This may take 1-2 minutes to complete. If successfully connected, you will see the IPv4 & MAC addresses being printed on the XDK workbench console. Otherwise, the application will hang until a connection is established.