Application overview

The UDP server application demonstrates how Quessence acts as UDP server  and receives data from UDP client.

Click here to download the source code for the UDP Server Socket Application

Setup required

  1. Quessence
  2. 32/64-bit PC with minimum 2GB RAM and USB port for power, downloading and debugging software
  3. Windows 7/8/8.1/10 Operating System. It should have the Keil IDE and the CMSIS DAP drivers installed on it. Refer to installation section for download and installation steps.
  4. A windows machine (as a WiFi Station) with any UDP server application (This example uses iperf)

Configure the application

Use an IDE to edit the udp_server.c file available in the path UDP_Server/Applications to make the following changes

 

Macro Value Description
SSID
   “”
This macro refers to the SSID name of your Access point to connect.
CHANNEL_NO

 
This macro refers to particular channel used to scan by the device.If channel is 0 then it will scan all channels.
SECURITY_TYPE
   
This macro refers to the security type of Access point to connect.Supports security types like OPEN,WEP,WPA,WPA2
PSK
   “”
This macro refers to the Pre-shared key of the connected Access point.
DEVICE_PORT
   
This macro is to configure port number given to the device.
NUMBER_OF_PACKETS

 
This macro is to configure number of packets to send
RECV_BUFFER_SIZE

 
This macro is to configure the size of data in each packet.
GLOBAL_BUFF_LEN
       8000
This macro is to configure Application memory length which is required by the driver
DHCP_MODE

 

To configure IP for configured station through dhcp set DHCP_MODE  to 1, else configure to 0

NOTE – In this application we are not providing the facility to configure the Access point’s IP parameters

To configure static IP address

IP address to be configured to the device should be in long format and in little endian byte order.

Example: 1.To configure “192.168.10.101” as IP address,update the macro DEVICE_IP as 0x650AA8C0.

               2. To configure “192.168.10.1” as Gateway,update the macro  GATEWAY as 0x010AA8C0.

               3.To configure “255.255.255.0” as network mask,update the macro NETMASK as 0x00FFFFFF 

#define  DEVICE_IP    
#define  GATEWAY      
#define  NETMASK      

 

A sample configuration is shown in the below snapshot

Edit the WLAN configuration file

Check the following macros of rsi_wlan_config.h file available in the path UDP_Server/Libraries/Wireless/include

 

Macro Value
CONCURRENT_MODE RSI_DISABLE
RSI_FEATURE_BIT_MAP FEAT_SECURITY_OPEN
RSI_TCP_IP_BYPASS RSI_DISABLE
RSI_TCP_IP_FEATURE_BIT_MAP (TCP_IP_FEAT_DHCPV4_CLIENT)
RSI_CUSTOM_FEATURE_BIT_MAP 0
RSI_BAND RSI_BAND_2P4GHZ

 

Execute the Application

  1. Connect Quessence to the Windows PC running Keil IDE.
  2. Configure the macros in the files located at udp_server.c and rsi_wlan_config.h as mentioned above.

  3. Build and launch the application.
  4. Quessence connects to an Access point and opens a UDP server socket for communication.
  5. Open a UDP client socket using iperf (giving command as iperf_demo.exe –c -u -p -i 1 –t 100) available in Udp_server application folder. 
  6. Quessence receives the number of packets pre-configured by NUMBER_OF_PACKETS.