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

  1. Write your configure.yaml file based on the examples and documentation below and put it on your USB drive
  2. Copy any WPA enterprise keys necessary onto your USB drive
  3. Plug in your USB drive as set up in the previous two steps into your Beam device
  4. 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.yaml commands).
  • 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 TKIP
  key_mgmt: WPA-PSK
  pairwise: CCMP TKIP
  proto: RSN
  psk: "securepassword"

WPA Personal

add_networks:
- ssid: wpa
  group: CCMP TKIP
  key_mgmt: WPA-PSK
  pairwise: CCMP 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: CCMP 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:
    • True - Enabled
    • False - Disabled
  • 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:
    • 3 - Both 2.4 GHz and 5 GHz
    • 1 - 2.4 GHz only
    • 2 - 5 GHz only
  • 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:
    • 2412 - 2412 MHz (ch 1)
    • 2417 - 2417 MHz (ch 2)
    • 2422 - 2422 MHz (ch 3)
    • 2427 - 2427 MHz (ch 4)
    • 2432 - 2432 MHz (ch 5)
    • 2437 - 2437 MHz (ch 6)
    • 2442 - 2442 MHz (ch 7)
    • 2447 - 2447 MHz (ch 8)
    • 2452 - 2452 MHz (ch 9)
    • 2457 - 2457 MHz (ch 10)
    • 2462 - 2462 MHz (ch 11)
    • 2467 - 2467 MHz (ch 12)
    • 2472 - 2472 MHz (ch 13)
    • 5180 - 5180 MHz (ch 36)
    • 5200 - 5200 MHz (ch 40)
    • 5220 - 5220 MHz (ch 44)
    • 5240 - 5240 MHz (ch 48)
    • 5260 - 5260 MHz (ch 52)
    • 5280 - 5280 MHz (ch 56)
    • 5300 - 5300 MHz (ch 60)
    • 5320 - 5320 MHz (ch 64)
    • 5500 - 5500 MHz (ch 100)
    • 5520 - 5520 MHz (ch 104)
    • 5540 - 5540 MHz (ch 108)
    • 5560 - 5560 MHz (ch 112)
    • 5580 - 5580 MHz (ch 116)
    • 5600 - 5600 MHz (ch 120)
    • 5620 - 5620 MHz (ch 124)
    • 5640 - 5640 MHz (ch 128)
    • 5660 - 5660 MHz (ch 132)
    • 5680 - 5680 MHz (ch 136)
    • 5700 - 5700 MHz (ch 140)
    • 5745 - 5745 MHz (ch 149)
    • 5765 - 5765 MHz (ch 153)
    • 5785 - 5785 MHz (ch 157)
    • 5805 - 5805 MHz (ch 161)
    • 5825 - 5825 MHz (ch 165)
  • 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:
    • auto - Auto
    • on - On
    • off - Off
  • 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:
    • 1 - 1: Favorite
    • 2 - 2
    • 3 - 3
    • 4 - 4
    • 5 - 5
    • 6 - 6: Last Resort
  • scan_width - 2.4 GHz scan width (type: float) (Min: 0) (Max: 100)
  • wired_tier - Tier used for wired connections (type: choice)
    Options:
    • 1 - 1: Favorite
    • 2 - 2
    • 3 - 3
    • 4 - 4
    • 5 - 5
    • 6 - 6: Last Resort
  • country_ie_consistency_check_enabled - Warn on AP country code inconsistency (type: choice)
    Options:
    • True - Enabled
    • False - Disabled
  • dhcp_exp_backoff_min - DHCP retry period (type: duration) (Min: 0.1) (Max: 120)
  • single_adapter_roaming - Single adapter WiFi roaming (type: choice)
    Options:
    • auto - Auto
    • on - On
    • off - Off
  • unlikely_frequencies - Unlikely frequencies (type: multiple choice)
    Options:
    • 2412 - 2412 MHz (ch 1)
    • 2417 - 2417 MHz (ch 2)
    • 2422 - 2422 MHz (ch 3)
    • 2427 - 2427 MHz (ch 4)
    • 2432 - 2432 MHz (ch 5)
    • 2437 - 2437 MHz (ch 6)
    • 2442 - 2442 MHz (ch 7)
    • 2447 - 2447 MHz (ch 8)
    • 2452 - 2452 MHz (ch 9)
    • 2457 - 2457 MHz (ch 10)
    • 2462 - 2462 MHz (ch 11)
    • 2467 - 2467 MHz (ch 12)
    • 2472 - 2472 MHz (ch 13)
    • 5180 - 5180 MHz (ch 36)
    • 5200 - 5200 MHz (ch 40)
    • 5220 - 5220 MHz (ch 44)
    • 5240 - 5240 MHz (ch 48)
    • 5260 - 5260 MHz (ch 52)
    • 5280 - 5280 MHz (ch 56)
    • 5300 - 5300 MHz (ch 60)
    • 5320 - 5320 MHz (ch 64)
    • 5500 - 5500 MHz (ch 100)
    • 5520 - 5520 MHz (ch 104)
    • 5540 - 5540 MHz (ch 108)
    • 5560 - 5560 MHz (ch 112)
    • 5580 - 5580 MHz (ch 116)
    • 5600 - 5600 MHz (ch 120)
    • 5620 - 5620 MHz (ch 124)
    • 5640 - 5640 MHz (ch 128)
    • 5660 - 5660 MHz (ch 132)
    • 5680 - 5680 MHz (ch 136)
    • 5700 - 5700 MHz (ch 140)
    • 5745 - 5745 MHz (ch 149)
    • 5765 - 5765 MHz (ch 153)
    • 5785 - 5785 MHz (ch 157)
    • 5805 - 5805 MHz (ch 161)
    • 5825 - 5825 MHz (ch 165)
  • scan_type - Scan type (type: choice)
    Options:
    • active_broadcast - Active broadcast
    • active_directed - Active directed
    • passive - Passive
  • 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:
    • 1 - 1: Favorite
    • 2 - 2
    • 3 - 3
    • 4 - 4
    • 5 - 5
    • 6 - 6: Last Resort
  • wifi_tier_2400 - Tier used for 2.4 GHz WiFi access points (type: choice)
    Options:
    • 1 - 1: Favorite
    • 2 - 2
    • 3 - 3
    • 4 - 4
    • 5 - 5
    • 6 - 6: Last Resort
  • 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:
    • 1 - 1: Favorite
    • 2 - 2
    • 3 - 3
    • 4 - 4
    • 5 - 5
    • 6 - 6: Last Resort
  • captive_portal_timeout - Timeout for opening captive portal URL (type: duration) (Min: 0.1) (Max: 30.0)