Overview
In addition to using a keyboard to configure a Beam, it is also possible to do so by plugging in a USB flash drive using the following instructions. This process will import WiFi certificates and a configuration file to the Beam.
Please ensure that any certificates used are .PEM (Base64) encoded with “—–Begin Certificate——” prefix and an “—–END Certificate—–” suffix. Any certificates used/needed can be chained into a single .PEM file using OpenSSL if necessary.
Since BeamPro only has one USB port, configuration by USB drive does not require a keyboard.
Currently, you can do the following with a USB drive:
- Reset a device to factory defaults
- Delete all the Wi-Fi networks from the device’s configuration
- Add Wi-Fi networks to the device’s configuration
- Delete all the keys and certificates (for WPA Enterprise) from the device
- Add keys or certificates to the device
- Set device parameters
Instructions
- Write your configure.yamlfile based on the examples and documentation below and put it on your USB drive
- Copy any WPA enterprise keys necessary onto your USB drive
- Plug in your USB drive as set up in the previous two steps into your Beam device
- Follow the instructions that appear on the screen
USB Drive Layout
The Beam device will look for the following files on your drive:
- beam/configure.yaml: Commands for all Beam devices.
- beam/wifi_keys/...: Keys/certificates to be copied onto all Beam devices.
- beam/beam_{wifi_serial_number}/configure.yaml: Commands for Beam device with serial number- wifi_serial_number(will override- beam/configure.yamlcommands).
- beam/beam_{wifi_serial_number}/wifi_keys/...: Keys/certificates to be copied onto Beam device with serial number- wifi_serial_number.
Sample configure.yaml files
The configuration file should consist of a YAML list of commands. Here are a few sample configure.yaml files for different network configurations. The options are the same as those of wpa_supplicant, for which an example configuration file explaining all of the settings can be found here.
WPA2 Personal
add_networks:
- ssid: wpa2
  group: CCMP
  key_mgmt: WPA-PSK
  pairwise: CCMP
  proto: RSN
  psk: "securepassword"
WPA Personal
add_networks:
- ssid: wpa
  group: TKIP
  key_mgmt: WPA-PSK
  pairwise: TKIP
  proto: WPA
  psk: "securepassword"
Open
add_networks:
- ssid: open
  key_mgmt: NONE
WPA Enterprise
# Deleting the keys on the Beam device happens before copying the keys on the USB drive
delete_all_wifi_keys:
# Deleting all the networks happens before any networks are added
delete_all_networks:
# The following is a sample PEAP MSCHAPV2 network
add_networks:
- ssid: wpaeap
  group: TKIP
  identity: test
  key_mgmt: WPA-EAP
  pairwise: CCMP TKIP
  password: "12345"
  phase2: auth=MSCHAPV2
  proto: WPA RSN
  eap: PEAP
  # ca.crt needs to exist in either the beam/wifi_keys/ 
  # or beam/beam_<wifi_serial_numer>/wifi_keys/ directories
  # or have previously been copied to the Beam device
  ca_cert: ca.crt
  # If you don't specify a ca_cert file, you MUST specify 
  # confirm_no_ca_cert. We recommend that you don't do
  # this since it is insecure.
  # private_key:
  # client_cert:
  # confirm_no_ca_cert: true
  # If you provide an encrypted private key here 
  # (private_key:), you will have to plug in a keyboard 
  # afterwards to enter the password and decrypt it
Setting parameters
set_parameters:
  # int/float/duration params
  dhcp_exp_backoff_max: 3
  max_txpower: 25
  captive_portal_timeout: 5.5
  # multiple choice params
  disabled_frequencies: [2412, 2422]
  # Choice params (use left hand value in available options below)
  single_adapter_roaming: on
  wired_tier: 2
Available Commands
- 
    restore_factory_defaults(no arguments): restores factory defaults. The device will restart when the USB stick has been removed.
- 
    delete_all_wifi_keys(no arguments): Deletes all the wireless keys on the Beam device before copying in new ones.
- 
    delete_all_networks(no arguments): Removes all networks. Applies before add_networks.
- 
    add_networks(network list argument): Adds networks to the currently configured list of networks, replacing existing networks with the same name.
- 
    set_parameters(key value pair argument): Sets device parameters.
Parameters available
- bss_max_count - Maximum BSS count (type: int) (Min: 1) (Max: 8192)
- fast_reauth - Fast re-authentication for WPA Enterprise (type: choice)
 Options (Show/Hide):
- dhcp_exp_backoff_max - DHCP retry period maximum (type: duration) (Min: 1) (Max: 240)
- roaming_threshold_single_adapter - Single adapter roaming threshold (type: float) (Min: -100) (Max: 0)
- dhcp_timeout - DHCP timeout (type: duration) (Min: 0.1) (Max: 120)
- ping_rate_possibly_dead - Ping rate on a possibly dead interface (type: float) (Min: 0.1) (Max: 15)
- strong_connection_loss_threshold_not_in_call - Strong connection loss threshold when not in call (type: float) (Min: 0) (Max: 1)
- band - Frequency bands to use (type: choice)
 Options (Show/Hide):
- ping_rate_low - Ping rate for an idling interface (type: float) (Min: 0.1) (Max: 5)
- reassociate_hysteresis_stationary - Secondary interface hysteresis when stationary (type: float) (Min: 1) (Max: 100)
- disabled_frequencies - Disabled frequencies (type: multiple choice)
 Options (Show/Hide):
- ping_max_latency_v2 - Maximum allowed latency to relay (type: duration) (Min: 0.1) (Max: 15)
- strong_connection_wifi_rssi_threshold - Weak WiFi connection RSSI threshold (type: float) (Min: -100) (Max: 0)
- verification_timeout - Timeout for verifying an access point or network (type: duration) (Min: 1.0) (Max: 20.0)
- single_adapter_roaming_band_preference - Single adapter WiFi roaming band preference (type: choice)
 Options (Show/Hide):
- strong_connection_loss_threshold_in_call - Strong connection loss threshold during call (type: float) (Min: 0) (Max: 1)
- assoc_timeout - Association timeout (type: duration) (Min: 0.1) (Max: 15)
- wwan_tier_4g - Tier used for 4G/LTE cellular connections (type: choice)
 Options (Show/Hide):
- scan_width - 2.4 GHz scan width (type: float) (Min: 0) (Max: 100)
- wired_tier - Tier used for wired connections (type: choice)
 Options (Show/Hide):
- country_ie_consistency_check_enabled - Warn on AP country code inconsistency (type: choice)
 Options (Show/Hide):
- dhcp_exp_backoff_min - DHCP retry period (type: duration) (Min: 0.1) (Max: 120)
- single_adapter_roaming - Single adapter WiFi roaming (type: choice)
 Options (Show/Hide):
- unlikely_frequencies - Unlikely frequencies (type: multiple choice)
 Options (Show/Hide):
- scan_type - Scan type (type: choice)
 Options (Show/Hide):
- reassociate_hysteresis_moving - Secondary interface hysteresis when moving (type: float) (Min: 1) (Max: 100)
- wifi_tier_5000 - Tier used for 5 GHz WiFi access points (type: choice)
 Options (Show/Hide):
- wifi_tier_2400 - Tier used for 2.4 GHz WiFi access points (type: choice)
 Options (Show/Hide):
- max_txpower - Maximum TX power (type: int) (Min: 0) (Max: 30)
- wwan_tier_pre_4g - Tier used for pre-4G cellular connections (type: choice)
 Options (Show/Hide):
- captive_portal_timeout - Timeout for opening captive portal URL (type: duration) (Min: 0.1) (Max: 30.0)