David Fletcher / CC3000HostDriver

Dependents:   CC3000Test

Embed: (wiki syntax)

« Back to documentation index

Netapp_api

Netapp_api

Functions

long netapp_config_mac_adrress (unsigned char *mac)
 netapp_config_mac_adrress
long netapp_dhcp (unsigned long *aucIP, unsigned long *aucSubnetMask, unsigned long *aucDefaultGateway, unsigned long *aucDNSServer)
 netapp_dhcp
long netapp_timeout_values (unsigned long *aucDHCP, unsigned long *aucARP, unsigned long *aucKeepalive, unsigned long *aucInactivity)
 netapp_timeout_values
long netapp_ping_send (unsigned long *ip, unsigned long ulPingAttempts, unsigned long ulPingSize, unsigned long ulPingTimeout)
 netapp_ping_send
long netapp_ping_stop ()
 netapp_ping_stop
void netapp_ping_report ()
 netapp_ping_report
void netapp_ipconfig (tNetappIpconfigRetArgs *ipconfig)
 netapp_ipconfig
long netapp_arp_flush ()
 netapp_arp_flush
long netapp_set_debug_level (unsigned long ulLevel)
 netapp_set_debug_level

Function Documentation

long netapp_arp_flush ( void   )

netapp_arp_flush

Parameters:
none
Returns:
none

Flushes ARP table

Definition at line 393 of file netapp.cpp.

long netapp_config_mac_adrress ( unsigned char *  mac )

netapp_config_mac_adrress

Parameters:
macdevice mac address, 6 bytes. Saved: yes
Returns:
return on success 0, otherwise error.

Configure device MAC address and store it in NVMEM. The value of the MAC address configured through the API will be stored in CC3000 non volatile memory, thus preserved over resets.

Definition at line 69 of file netapp.cpp.

long netapp_dhcp ( unsigned long *  aucIP,
unsigned long *  aucSubnetMask,
unsigned long *  aucDefaultGateway,
unsigned long *  aucDNSServer 
)

netapp_dhcp

Parameters:
aucIPdevice mac address, 6 bytes. Saved: yes
aucSubnetMaskdevice mac address, 6 bytes. Saved: yes
aucDefaultGatewaydevice mac address, 6 bytes. Saved: yes
aucDNSServerdevice mac address, 6 bytes. Saved: yes
Returns:
return on success 0, otherwise error.

netapp_dhcp is used to configure the network interface, static or dynamic (DHCP).
In order to activate DHCP mode, aucIP, aucSubnetMask, aucDefaultGateway must be 0. The default mode of CC3000 is DHCP mode. Note that the configuration is saved in non volatile memory and thus preserved over resets.

Note:
If the mode is altered a reset of CC3000 device is required in order to apply changes. note that asynchronous event of DHCP_EVENT, which is generated when an IP address is allocated either by the DHCP server or due to static allocation is generated only upon a connection to the AP was established.

Definition at line 100 of file netapp.cpp.

void netapp_ipconfig ( tNetappIpconfigRetArgs *  ipconfig )

netapp_ipconfig

Parameters:
[out]ipconfigThis argument is a pointer to a tNetappIpconfigRetArgs structure. This structure is filled in with the network interface configuration. tNetappIpconfigRetArgs:
aucIP - ip address, aucSubnetMask - mask, aucDefaultGateway - default gateway address, aucDHCPServer - dhcp server address aucDNSServer - dns server address, uaMacAddr - mac address, uaSSID - connected AP ssid
Returns:
none

Obtain the CC3000 Network interface information. Note that the information is available only after the WLAN connection was established. Calling this function before associated, will cause non-defined values to be returned.

Note:
The function is useful for figuring out the IP Configuration of the device when DHCP is used and for figuring out the SSID of the Wireless network the device is associated with.

Definition at line 360 of file netapp.cpp.

void netapp_ping_report (  )

netapp_ping_report

Parameters:
none
Returns:
none

Request for ping status. This API triggers the CC3000 to send asynchronous events: HCI_EVNT_WLAN_ASYNC_PING_REPORT. This event will carry the report structure: netapp_pingreport_args_t. This structure is filled in with ping results up till point of triggering API. netapp_pingreport_args_t:
packets_sent - echo sent, packets_received - echo reply, min_round_time - minimum round time, max_round_time - max round time, avg_round_time - average round time

Note:
When a ping operation is not active, the returned structure fields are 0.

Definition at line 285 of file netapp.cpp.

long netapp_ping_send ( unsigned long *  ip,
unsigned long  ulPingAttempts,
unsigned long  ulPingSize,
unsigned long  ulPingTimeout 
)

netapp_ping_send

Parameters:
ipdestination IP address
pingAttemptsnumber of echo requests to send
pingSizesend buffer size which may be up to 1400 bytes
pingTimeoutTime to wait for a response,in milliseconds.
Returns:
return on success 0, otherwise error.

send ICMP ECHO_REQUEST to network hosts

Note:
If an operation finished successfully asynchronous ping report event will be generated. The report structure is as defined by structure netapp_pingreport_args_t.
Warning:
Calling this function while a previous Ping Requests are in progress will stop the previous ping request.

Definition at line 235 of file netapp.cpp.

long netapp_ping_stop (  )

netapp_ping_stop

Parameters:
none
Returns:
On success, zero is returned. On error, -1 is returned.

Stop any ping request.

Definition at line 315 of file netapp.cpp.

long netapp_set_debug_level ( unsigned long  ulLevel )

netapp_set_debug_level

Parameters:
[in]leveldebug level. Bitwise [0-8], 0(disable)or 1(enable).
Bitwise map: 0 - Critical message, 1 information message, 2 - core messages, 3 - HCI messages, 4 - Network stack messages, 5 - wlan messages, 6 - wlan driver messages, 7 - epprom messages, 8 - general messages. Default: 0x13f. Saved: no
Returns:
On success, zero is returned. On error, -1 is returned

Debug messages sent via the UART debug channel, this function enable/disable the debug level

Definition at line 431 of file netapp.cpp.

long netapp_timeout_values ( unsigned long *  aucDHCP,
unsigned long *  aucARP,
unsigned long *  aucKeepalive,
unsigned long *  aucInactivity 
)

netapp_timeout_values

Parameters:
aucDHCPDHCP lease time request, also impact the DHCP renew timeout. Range: [0-0xffffffff] seconds, 0 or 0xffffffff == infinity lease timeout. Resolution:10 seconds. Influence: only after reconnecting to the AP. Minimal bound value: MIN_TIMER_VAL_SECONDS - 20 seconds. The parameter is saved into the CC3000 NVMEM. The default value on CC3000 is 14400 seconds.
aucARPARP refresh timeout, if ARP entry is not updated by incoming packet, the ARP entry will be deleted by the end of the timeout. Range: [0-0xffffffff] seconds, 0 == infinity ARP timeout Resolution: 10 seconds. Influence: on runtime. Minimal bound value: MIN_TIMER_VAL_SECONDS - 20 seconds The parameter is saved into the CC3000 NVMEM. The default value on CC3000 is 3600 seconds.
aucKeepaliveKeepalive event sent by the end of keepalive timeout Range: [0-0xffffffff] seconds, 0 == infinity timeout Resolution: 10 seconds. Influence: on runtime. Minimal bound value: MIN_TIMER_VAL_SECONDS - 20 sec The parameter is saved into the CC3000 NVMEM. The default value on CC3000 is 10 seconds.
aucInactivitySocket inactivity timeout, socket timeout is refreshed by incoming or outgoing packet, by the end of the socket timeout the socket will be closed Range: [0-0xffffffff] sec, 0 == infinity timeout. Resolution: 10 seconds. Influence: on runtime. Minimal bound value: MIN_TIMER_VAL_SECONDS - 20 sec The parameter is saved into the CC3000 NVMEM. The default value on CC3000 is 60 seconds.
Returns:
return on success 0, otherwise error.

Set new timeout values. Function set new timeout values for: DHCP lease timeout, ARP refresh timeout, keepalive event timeout and socket inactivity timeout

Note:
If a parameter set to non zero value which is less than 20s, it will be set automatically to 20s.

Definition at line 179 of file netapp.cpp.