=============================================================================== S E T U P I N S T R U C T I O N S F O R *WifiDirect* Driver,FW release: 1. Make sure, bg_scan.conf,uaputl.conf has SSID starting with "DIRECT-" 2. Download uAP configuration and BG scan configuration. 3. This version of wifidirectutl breaks the backward compatibility and will work with following releases - 8797 >= 14.xx.16.p15 >= 14.xx.11.p138 8766 >= 14.xx.11.p138 8787 >= 14.xx.9.p89 However, In case one needs to run the utility in backward compatibility mode he can do so by running following command before running the utility - # export WIFIDIR_USE_FIXED_IE_INDICES=1 To disable backward comaptibility mode run following command - # export WIFIDIR_USE_FIXED_IE_INDICES=0 WPSWIFIDIRECT release: 1. Modify the wifidirect.conf file to specify the correct HW addresses of devices. The DUT mac address and peer mac address needs to be correctly entered. =============================================================================== U S E R M A N U A L F O R WIFIDIRECTUTL NAME wifidirectutl This tool can be used to configure WifiDirect parameters. ------------------ Supported Commands ------------------ wifidirect_mode [MODE] wifidirect_config [*.conf] wifidirect_params_config [*.conf] wifidirect_action_frame <*.conf> | [ ] wifidirect_discovery_request <*.conf> wifidirect_discovery_response <*.conf> wifidirect_cfg_discovery_period [ ] wifidirect_cfg_intent [IntentValue] wifidirect_cfg_capability [ ] wifidirect_cfg_noa [ ] wifidirect_cfg_opp_ps [] wifidirect_cfg_invitation_list [mac_addr] wifidirect_cfg_listen_channel [ListenChannel] wifidirect_cfg_op_channel [OperatingChannel] wifidirect_cfg_persistent_group_record [index] [role] [ ] [peermac1] [peermac2] wifidirect_cfg_persistent_group_invoke [index] | wifidirect_cfg_presence_req_params [ ] wifidirect_cfg_ext_listen_time [ ] wifidirect_cfg_provisioning_params [ ] wifidirect_cfg_wps_params [] wifidirect_mode [mode] ---------- "./wifidirectutl wifidirect_mode [mode]" This command is used to setup various modes for wifidirect device. The mode 2 can be used only when wifidirect is started using mode 1. The mode 3 should not be used for uAP. The supported options are: mode : 0 - stop wifidirect mode 1 - start wifidirect mode 2 - start wifidirect group owner mode 3 - start wifidirect client mode 4 - start wifidirect find phase 5 - stop wifidirect find phase empty - Get current wifidirect mode Example: ./wifidirectutl wifidirect_mode 0 Stop wifidirect mode. ./wifidirectutl wifidirect_mode 1 Start wifidirect mode. ./wifidirectutl wifidirect_mode Get current WIFIDIRECT start/stop mode. wifidirect_config ---------- "./wifidirectutl wifidirect_config [*.conf]" This command is used to set/get the wifidirect configuration. Example: ./wifidirectutl wifidirect_config wifidirect.conf Read configuration from wifidirect.conf and apply it. ./wifidirectutl wifidirect_config Read existing wifidirect configuration and display it. wifidirect_params_config ---------- "./wifidirectutl wifidirect_params_config [*.conf]" This command is used to set/get the wifidirect parameters configuration. Example: ./wifidirectutl wifidirect_params_config wifidirect.conf Read parameter configuration from wifidirect.conf and apply it. ./wifidirectutl wifidirect_params_config Read existing wifidirect parameters's configuration and display it. wifidirect_action_frame ---------- "./wifidirectutl wifidirect_action_frame <*.conf> | " This command is used to send action frames as specified in config file or on command line. Example: ./wifidirectutl wifidirect_action_frame wifidirect.conf Read action_frame from wifidirect.conf and send to peer. ./wifidirectutl wifidirect_action_frame Read action frame parameters from command line and send to peer. wifidirect_discovery_request ---------- "./wifidirectutl wifidirect_discovery_request <*.conf>" This command is used to send wifidirect discovery request packet. Example: ./wifidirectutl wifidirect_discovery_request wifidirect.conf Read discovery packet from wifidirect.conf and send to peer. wifidirect_discovery_response ---------- "./wifidirectutl wifidirect_discovery_response <*.conf>" This command is used to send wifidirect discovery response packet. Example: ./wifidirectutl wifidirect_discovery_response wifidirect.conf Read discovery packet from wifidirect.conf and send to peer. wifidirect_cfg_discovery_period ---------- "./wifidirectutl wifidirect_cfg_discovery_period [ ]" This command is used to set or get minimum and maximum discovery period. Example: ./wifidirectutl wifidirect_cfg_discovery_period 10 20 Set minimum discovery interval to 10 and maximum discovery interval to 20. ./wifidirectutl wifidirect_cfg_discovery_period Get minimum and maximum discovery interval. wifidirect_cfg_intent ---------- "./wifidirectutl wifidirect_cfg_intent [IntentValue]" This command is used to set or get intent value. Example: ./wifidirectutl wifidirect_cfg_intent 12 Set intent value to 12. ./wifidirectutl wifidirect_cfg_intent Get Group Owner Intent. wifidirect_cfg_capability ---------- "./wifidirectutl wifidirect_cfg_capability [ ]" This command is used to set or get device capability and group capability. Example: ./wifidirectutl wifidirect_cfg_capability 10 20 Set Device capability to 10 and group capability to 20 ./wifidirectutl wifidirect_cfg_capability Get Device capability and group capability. wifidirect_cfg_noa ---------- "./wifidirectutl wifidirect_cfg_noa [ ]" This command is used to set or get NoA parameters like count_type, duration and interval in ms when NoA is enabled. Valid value of index is [0, 1]. Example: ./wifidirectutl wifidirect_cfg_noa enable 0 10 50 100 Enable NoA and set count to 10, duration to 50ms and interval to 100 ms for index 0. ./wifidirectutl wifidirect_cfg_noa disable 1 Disable NoA at index 1. ./wifidirectutl wifidirect_cfg_noa Get NoA settings. wifidirect_cfg_opp_ps ---------- "./wifidirectutl wifidirect_cfg_opp_ps []" This command is used to set or get Opportunistic power save and CT window. Example: ./wifidirectutl wifidirect_cfg_opp_ps enable 50 Set OppPS and CTwindow value to 50. ./wifidirectutl wifidirect_cfg_opp_ps disable Disable OppPS. ./wifidirectutl wifidirect_cfg_opp_ps Get OppPS and CT window. wifidirect_cfg_invitation_list ---------- "./wifidirectutl wifidirect_cfg_invitation_list [mac_addr]" This command is used to set or get invitation list of peers. Example: ./wifidirectutl wifidirect_cfg_invitation_list 00:50:43:20:23:34 Set 00:50:43:20:23:34 in invitation list of peers. ./wifidirectutl wifidirect_cfg_invitation_list Get Invitation list of peers. wifidirect_cfg_listen_channel ---------- "./wifidirectutl wifidirect_cfg_listen_channel [ListenChannel]" This command is used to set or get Listen channel. Example: ./wifidirectutl wifidirect_cfg_listen_channel 11 Set Listen channel to 11. ./wifidirectutl wifidirect_cfg_listen_channel Get Listen channel. wifidirect_cfg_op_channel ---------- "./wifidirectutl wifidirect_cfg_op_channel [OperatingChannel]" This command is used to set or get Operating channel. Example: ./wifidirectutl wifidirect_cfg_op_channel 11 Set Operating channel to 11. ./wifidirectutl wifidirect_cfg_op_channel Get Operating channel. wifidirect_cfg_persistent_group_record ---------- "./wifidirectutl [index] [role] [ ] [peermac1] [peermac2]" This command is used to set or get the persistent group record maintained in the device. Valid index is from 0 to 3. The role should be 0 for client, 1 for group-owner. Example: ./wifidirectutl wifidirect_cfg_persistent_group_record 0 1 00:50:43:12:24:36 00:50:43:13:26:39 "DIRECT-" "1234567890" 00:50:43:20:c2:d0 Set persistent group record with index 0, role as group owner, bssId and device Id, ssid="DIRECT-", passphrase="1234567890", and peer mac address. The passphrase get converted to PSK. ./wifidirectutl wifidirect_cfg_persistent_group_record 1 1 00:50:43:12:24:36 00:50:43:13:26:39 "DIRECT-" "1234567890" 0x1234567890123456789012345678901234567890123456789012345678901234 Set persistent group record with index 1, role as group owner, bssId and device Id, ssid="DIRECT-", passphrase="1234567890", and peer mac address. The passphrase get converted to PSK. PSK is specified with "0x" prefix and 32 bytes (64 characters). ./wifidirectutl wifidirect_cfg_persistent_group_record 1 Get persistent group record with index 1. ./wifidirectutl wifidirect_cfg_persistent_group_record Get persistent group record for all indices. wifidirect_cfg_persistent_group_invoke ---------- "./wifidirectutl wifidirect_cfg_persistent_group_invoke [index] | " This command is used to invoke a particular persistent group record from the list. Valid index is from 0 to 3. ./wifidirectutl wifidirect_cfg_persistent_group_invoke 2 Invoke persistent group record with index 1. ./wifidirectutl wifidirect_cfg_persistent_group_invoke cancel Cancel invokation of persistent groups. wifidirect_cfg_presence_req_params ---------- "./wifidirectutl wifidirect_cfg_presence_req_params [ ]" This command is used to set/get presence request parameters. Type should be 1 for preferred values and 2 for acceptable values. ./wifidirectutl wifidirect_cfg_presence_req_params 1 50 100 Set duration to 50ms and interval to 100ms. ./wifidirectutl wifidirect_cfg_presence_req_params Get presence request parameters. wifidirect_cfg_ext_listen_time ---------- "./wifidirectutl wifidirect_cfg_ext_listen_time [ ]" This command is used to set/get extended listen timing parameters. ./wifidirectutl wifidirect_cfg_ext_listen_time 1200 1300 Set availability period to 1200ms and availability interval to 1300 ms. ./wifidirectutl wifidirect_cfg_ext_listen_time Get extended listen timing parameters. wifidirect_cfg_provisioning_params ---------- "./wifidirectutl wifidirect_cfg_provisioning_params [ ]" This command is used to set/get provisioning protocol parameters. Action should be 1 for request parameters and 2 for response parameters. ./wifidirectutl wifidirect_cfg_provisioning_params 1 0x80 0x04 Set config method to 0x86 and device password to 0x04. ./wifidirectutl wifidirect_cfg_provisioning_params Get Provision protocol parameters. wifidirect_cfg_wps_params ---------- "./wifidirectutl wifidirect_cfg_wps_params []" This command is used to set WPS action. action can be "pin" (pin entered), "pbc"(button pressed) or "none". Example: ./wifidirectutl wifidirect_cfg_wps_params pin Indicates pin operation ./wifidirectutl wifidirect_cfg_wps_params none Indicates no operation =============================================================================== U S E R M A N U A L F O R WIFIDISPLAY wifidisplay_mode ----------- "./wifidirectutl wifidisplay_mode []" This command is used to enable or disable wifi-display. The possible values are either 1 or 0. Example: ./wifidirectutl wifidisplay_mode 1 Indicates enable wifi_display ./wifidirectutl wifidisplay_mode 0 Indicates disable wifi_display wifidisplay_config ----------- "./wifidirectutl wifidisplay_config [*.conf]" This command is used to set/get the wifidisplay configuration. Example: ./wifidirectutl wifidisplay_config wifidisplay.conf Read configuration from wifidisplay.conf and apply it. ./wifidirectutl wifidisplay_config Read existing wifidisplay configuration and display it. wifidisplay_update_devinfo ---------- "./wifidirectutl wifidisplay_update_devinfo [value]" This command is used to set the device information of wifidisplay device information subelement. This command will overwrite the new device information with user defined value. Example: ./wifidirectutl wifidisplay_update_devinfo 10 Update device information programmed with new value 10 by overwritting existing value. wifidisplay_discovery_request ---------- "./wifidirectutl wifidisplay_discovery_request [*.config]" This command is used to send wifi display service discovery request. Example: ./wifidirectutl wifidisplay_discovery_request wifidisplay.conf Read discovery packet from wifidisplay.conf and send to peer. wifidisplay_discovery_response ---------- "./wifidirectutl wifidisplay_discovery_response <*.conf>" This command is used to send wifidisplay discovery response packet. Example: ./wifidirectutl wifidisplay_discovery_response wifidisplay.conf Read discovery packet from wifidisplay.conf and send to peer. =============================================================================== U S E R M A N U A L F O R MLANEVENT NAME mlanevent.exe This tool can be used to listen for and obtain events from the driver through the netlink layer. This is only used for display/debugging purpose. ---------------- Supported events ---------------- WIFIDIRECT_GENERIC_EVENT WIFIDIRECT_SERVICE_DISCOVERY ----------------- Details of events ----------------- WIFIDIRECT_GENERIC_EVENT ----------------- For this event, the following information is shown: + Event length. + Event Type indicating Negociation, Invitation, Discoverability, Provision discovery related Request or Response. + Event SubType indicating Client or Group owner role. + Peer MAC address. + Associated WIFIDIRECT IE elements. WIFIDIRECT_SERVICE_DISCOVERY --------------------- For this event, the following information is shown: + Peer MAC address. + Service discovery packet details.