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.yaml
file 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 numberwifi_serial_number
(will overridebeam/configure.yaml
commands).beam/beam_{wifi_serial_number}/wifi_keys/...
: Keys/certificates to be copied onto Beam device with serial numberwifi_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)