#
# Copyright 2015 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

# OAuth 2.0 client id.
# client_id=

# OAuth 2.0 client secret.
# client_secret=

# OAuth 2.0 API key.
# api_key=

# Human readable name of the device.
name=Brillo Starter Board (Qualcomm)

# Human readable description of the device.
# Defaults to empty string"
description=Controls on-board LEDs

# Location of the device.
# location=

# Manufacturer of the device.
oem_name=Qualcomm Technologies, Inc.

# Model of the device.
# Defaults to Brillo.
model_name=Brillo Starter Board (Qualcomm)

# Five character code assigned by the cloud registry of device models.
# Defaults to "AAAAA" (Unregistered model).
model_id=ABHNy

# Maximum role for local anonymous user.
local_anonymous_access_role=user

# If true, allows local pairing using Privet API.
# local_pairing_enabled=true

# If true, allows local discovery using mDns.
# local_discovery_enabled=true

# GCD service polling interval in milliseconds.
# polling_period_ms=7000

# GCD service backup polling interval in milliseconds.
# backup_polling_period_ms=1800000

# Automatic mode causes buffet to automatically bring up a SoftAP for
# bootstrapping when it looses network connectivity for long enough,
# and on first boot.
# wifi_auto_setup_enabled=true

# List of pairing modes supported by device.
# Values can be one of pinCode, embeddedCode, ultrasound32, audible32.
# Defaults to pinCode if embedded_code_path is empty, or embeddedCode otherwise.
pairing_modes=embeddedCode

# Absolute path to file specifying an embedded pairing code. The file at
# embedded_code_path should be a file in key value format, with a key
# embedded_code.
# Defaults to empty path.
embedded_code_path=/etc/weaved/weaved.conf

# Embedded code.
embedded_code=hello
