本文整理汇总了Python中devices.xbee.xbee_devices.xbee_base.XBeeBase类的典型用法代码示例。如果您正苦于以下问题:Python XBeeBase类的具体用法?Python XBeeBase怎么用?Python XBeeBase使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了XBeeBase类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: start
def start(self):
self._tracer.calls("XBeeXBIB.start()")
# init self._xbee_manager and self._extended_address
# then register ourself with our Xbee manager
XBeeBase.pre_start(self)
# Create a callback specification for our device address, endpoint
# Digi XBee profile and sample cluster id:
self._xbee_manager.register_sample_listener(self, self._extended_address,
self.sample_indication)
# Configure node sleep behavior:
sleep_ms = SettingsBase.get_setting(self, "sleep_ms")
awake_time_ms = SettingsBase.get_setting(self, "awake_time_ms")
# The original sample rate is used as the sleep rate:
xbee_sleep_cfg = self._xbee_manager.get_sleep_block(
self._extended_address,
sleep=sleep_ms > 0,
sleep_rate_ms=sleep_ms,
awake_time_ms=awake_time_ms)
self._xbee_manager.xbee_device_config_block_add(self, xbee_sleep_cfg)
# Create a DDO configuration block for this device:
xbee_ddo_cfg = XBeeConfigBlockDDO(self._extended_address)
# Configure pins DIO0 .. DIO3 for digital input:
for io_pin in ['D0', 'D1', 'D2', 'D3']:
xbee_ddo_cfg.add_parameter(io_pin, 3)
# Turn off LEDs:
for led in LED_IO_MAP:
xbee_ddo_cfg.add_parameter(LED_IO_MAP[led], 0)
# Assert that all pin pull-ups are enabled:
xbee_ddo_cfg.add_parameter('PR', 0x1fff)
# Enable I/O line monitoring on pins DIO0 .. DIO3:
xbee_ddo_cfg.add_parameter('IC', 0xf)
# Register this configuration block with the XBee Device Manager:
self._xbee_manager.xbee_device_config_block_add(self, xbee_ddo_cfg)
# Handle channels subscribed to output their data to our led
# properties:
cm = self._core.get_service("channel_manager")
cp = cm.channel_publisher_get()
for i in range(1, 4):
setting_name = "led%d_source" % i
channel_name = SettingsBase.get_setting(self, setting_name)
if channel_name is not None:
cp.subscribe(channel_name,
(lambda prop: lambda cn: self.update_property(prop, cn))(
"led%d" % i))
# we've no more to config, indicate we're ready to configure.
return XBeeBase.start(self)
示例2: probe
def probe():
"""\
Collect important information about the driver.
.. Note::
* This method is a static method. As such, all data returned
must be accessible from the class without having a instance
of the device created.
Returns a dictionary that must contain the following 2 keys:
1) address_table:
A list of XBee address tuples with the first part of the
address removed that this device might send data to.
For example: [ 0xe8, 0xc105, 0x95 ]
2) supported_products:
A list of product values that this driver supports.
Generally, this will consist of Product Types that
can be found in 'devices/xbee/common/prodid.py'
"""
probe_data = XBeeBase.probe()
for address in XBeeSerial.ADDRESS_TABLE:
probe_data['address_table'].append(address)
for product in XBeeSerial.SUPPORTED_PRODUCTS:
probe_data['supported_products'].append(product)
return probe_data
## Functions which must be implemented to conform to the DeviceBase
## interface:
XBeeBase.apply_settings()
示例3: __init__
def __init__(self, name, core_services, set_in=None, prop_in=None):
"""\
Initialize an XBee Wall Router instance.
Parameters:
* name - The name of the XBee Wall Router instance.
* core - The Core services instance.
* set_in - settings from a derived class
* prop_in - properties from a derived class
"""
# DeviceBase will create:
# self._name, self._core, self._tracer,
# XBeeBase will create:
# self._xbee_manager, self._extended_address
## XBeeBase manages these settings:
# xbee_device_manager: the name of an XBeeDeviceManager instance.
# extended_address: the extended address of the XBee device you
# would like to monitor.
#
## This driver maintains
# sample_rate_ms: the sample rate in msec of the XBee Wall Router.
# offset: a raw offset to add/subtract from resulting temperature
# degf: T/F if degress Fahrenheit is desired instead of Celsius
settings_list = [
Setting(
name='sample_rate_ms', type=int, required=False,
default_value=self.DEF_SAMPLE_MS,
verify_function=lambda x: x > 0 and x < 0xffff),
Setting(
name='offset', type=float, required=False,
default_value=self.DEF_OFFSET),
Setting(
name='degf', type=bool, required=False,
default_value=self.DEF_DEGF),
]
# Add our settings_list entries into the settings passed to us.
set_in = self.merge_settings(set_in, settings_list)
## Channel Properties Definition:
property_list = [
# gettable properties
ChannelSourceDeviceProperty(name="light", type=float,
initial=Sample(timestamp=0, unit="not init", value=0.0),
perms_mask=DPROP_PERM_GET, options=DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name="temperature", type=float,
initial=Sample(timestamp=0, unit="not init", value=0.0),
perms_mask=DPROP_PERM_GET, options=DPROP_OPT_AUTOTIMESTAMP),
]
# Add our property_list entries into the properties passed to us.
prop_in = self.merge_properties(prop_in, property_list)
## Initialize the XBeeBase interface:
XBeeBase.__init__(self, name, core_services, set_in, prop_in)
self._tracer.calls("XBeeXBR.__init__()")
示例4: __init__
def __init__(self, name, core_services, property_list):
self.__name = name
self.__core = core_services
self.__property_list = property_list
## Local State Variables:
self.__xbee_manager = None
self.sensor = None
# Settings
#
# xbee_device_manager: must be set to the name of an XBeeDeviceManager
# instance.
# extended_address: the extended address of the XBee Watchport Sensor
# device you would like to monitor.
# sleep: True/False setting which determines if we should put the
# device to sleep between samples.
# sample_rate_ms: the sample rate of the XBee adapter.
# enable_low_battery: Force an adapter to enable support for
# battery-monitor pin.
# It should be only enabled if adapter is using
# internal batteries. Optional, Off by default.
settings_list = [
Setting(
name='sleep', type=bool, required=False,
default_value=False),
Setting(
name='sample_rate_ms', type=int, required=False,
default_value=60000,
verify_function=lambda x: x >= 0 and x <= CYCLIC_SLEEP_EXT_MAX_MS),
Setting(
name='poll_clean_minutes', type=int, required=False,
default_value=0,
verify_function=self.__verify_clean_minutes),
# This setting is provided for advanced users, it is not required:
Setting(
name='awake_time_ms', type=int, required=False,
default_value=5000,
verify_function=lambda x: x >= 0 and x <= 0xffff),
Setting(
name='enable_low_battery', type=Boolean, required=False,
default_value=Boolean("Off", STYLE_ONOFF)),
]
## Channel Properties Definition:
__property_list_internal = [
]
property_list.extend(__property_list_internal)
## Initialize the XBeeBase interface:
XBeeBase.__init__(self, self.__name, self.__core,
settings_list, property_list)
示例5: __init__
def __init__(self, name, core_services):
"""\
Initialize an XBee Wall Router instance.
Parameters:
* name - The name of the XBee Wall Router instance.
* core_services - The Core services instance.
"""
self.__name = name
self.__core = core_services
## Local State Variables:
self.__xbee_manager = None
from core.tracing import get_tracer
self.__tracer = get_tracer(name)
# Settings:
#
# xbee_device_manager: must be set to the name of an XBeeDeviceManager
# instance.
# extended_address: is the extended address of the XBee device you
# would like to monitor.
# sample_rate_ms: is the sample rate of the XBee Wall Router.
settings_list = [
Setting(
name = 'xbee_device_manager', type = str, required = False,
default_value = ''),
Setting(
name = 'extended_address', type = str, required = False,
default_value = ''),
Setting(
name = 'sample_rate_ms', type = int, required = False,
default_value = 1000,
verify_function = lambda x: x > 0 and x < 0xffff),
]
## Channel Properties Definition:
property_list = [
# gettable properties
ChannelSourceDeviceProperty(name = "light", type = float,
initial = Sample(timestamp = 0, unit = "brightness", value = 0.0),
perms_mask = DPROP_PERM_GET, options = DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name = "temperature", type = float,
initial = Sample(timestamp = 0, unit = "C", value = 0.0),
perms_mask = DPROP_PERM_GET, options = DPROP_OPT_AUTOTIMESTAMP),
]
## Initialize the XBeeBase interface:
XBeeBase.__init__(self, self.__name, self.__core,
settings_list, property_list)
示例6: __init__
def __init__(self, name, core_services):
self.__name = name
self.__core = core_services
self.include_unit = "F"
self.count = 0
self.upCount = 11
## Local State Variables:
self.__xbee_manager = None
## Settings Table Definition:
settings_list = [
Setting(
name='sample_rate_ms', type=int, required=False,
default_value=60000,
verify_function=lambda x: x > 0 and x < 0xffff),
]
## Channel Properties Definition:
property_list = [
# gettable properties
ChannelSourceDeviceProperty(name="last_com", type=str,
initial=Sample(timestamp=1, unit="", value=""),
perms_mask=DPROP_PERM_GET, options=DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name="signal", type=str,
initial=Sample(timestamp=0, unit="", value=""),
perms_mask=DPROP_PERM_GET, options=DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name="volts", type=str,
initial=Sample(timestamp=0, unit="", value=""),
perms_mask=DPROP_PERM_GET, options=DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name="excl", type=Boolean,
initial=Sample(timestamp=0,
value=Boolean(False, style=STYLE_ONOFF)),
perms_mask=(DPROP_PERM_GET|DPROP_PERM_SET),
options=DPROP_OPT_AUTOTIMESTAMP,
set_cb=lambda x: self.exclude("excl", x)),
ChannelSourceDeviceProperty(name="incl", type=Boolean,
initial=Sample(timestamp=0,
value=Boolean(True, style=STYLE_ONOFF)),
perms_mask=(DPROP_PERM_GET|DPROP_PERM_SET),
options=DPROP_OPT_AUTOTIMESTAMP,
set_cb=lambda x: self.include("incl", x)),
ChannelSourceDeviceProperty(name="light", type=float,
initial=Sample(timestamp=0, unit="brightness", value=0.0),
perms_mask=DPROP_PERM_GET, options=DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name="temperature", type=float,
initial=Sample(timestamp=0, unit="F", value=0.0),
perms_mask=DPROP_PERM_GET, options=DPROP_OPT_AUTOTIMESTAMP),
]
## Initialize the XBeeBase interface:
XBeeBase.__init__(self, self.__name, self.__core,
settings_list, property_list)
示例7: __init__
def __init__(self, name, core_services):
self.__name = name
self.__core = core_services
## Local State Variables:
self.__xbee_manager = None
self.offset = 520.0
self.__power_on_time = 0
## Settings Table Definition:
settings_list = [
Setting(
name='sample_rate_ms', type=int, required=False,
default_value=1000,
verify_function=lambda x: x > 0 and x < 0xffff),
Setting(
name='default_state', type=str, required=False,
default_value="on",
parser=lambda s: s.lower(),
verify_function=lambda s: s in initial_states),
Setting(
name='idle_off_seconds', type=int, required=False,
default_value=0, verify_function=lambda x: x >= 0),
Setting(name="power_on_source", type=str, required=False),
Setting(name="pf_adjustment", type=float, required=False,
default_value=1.0,
verify_function=lambda i:0 < i and i <= 1.0),
Setting(name="device_profile", type=str, required=False),
]
## Channel Properties Definition:
property_list = [
# gettable properties
ChannelSourceDeviceProperty(name="light", type=float,
initial=Sample(timestamp=0, unit="brightness", value=0.0),
perms_mask=DPROP_PERM_GET, options=DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name="temperature", type=float,
initial=Sample(timestamp=0, unit="C", value=0.0),
perms_mask=DPROP_PERM_GET, options=DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name="current", type=float,
initial=Sample(timestamp=0, unit="A", value=0.0),
perms_mask=DPROP_PERM_GET, options=DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name="power_on", type=Boolean,
initial=Sample(timestamp=0,
value=Boolean(True, style=STYLE_ONOFF)),
perms_mask=(DPROP_PERM_GET|DPROP_PERM_SET),
options=DPROP_OPT_AUTOTIMESTAMP,
set_cb=self.prop_set_power_control),
]
## Initialize the XBeeBase interface:
XBeeBase.__init__(self, self.__name, self.__core,
settings_list, property_list)
示例8: start
def start(self):
"""Start the device driver. Returns bool."""
self._tracer.calls("XBeeSerial.start()")
# init self._xbee_manager and self._extended_address
# register ourself with our Xbee manager
# create the self.running_indication callback
XBeeBase.pre_start(self)
self.initialize_xbee_serial()
# we've no more to config, indicate we're ready to configure.
return XBeeBase.start(self)
示例9: __init__
def __init__(self, name, core_services, set_in=None, prop_in=None):
# DeviceBase will create:
# self._name, self._core, self._tracer,
# XBeeBase will create:
# self._xbee_manager, self._extended_address
## Local State Variables:
## Settings Table Definition:
settings_list = [
Setting(
name='baudrate', type=int, required=False,
default_value=self.DEF_BAUDRATE,
verify_function=self.__verify_baudrate),
Setting(
name='parity', type=str, required=False,
default_value=self.DEF_PARITY,
verify_function=self.__verify_parity),
# NOTE: SB/Stop-bits is not available in all XBEE
Setting(
name='stopbits', type=int, required=False,
default_value=self.DEF_STOPBITS,
verify_function=self.__verify_stopbits),
Setting(
name='hardwareflowcontrol', type=str, required=False,
default_value=self.DEF_HWFLOW,
verify_function=self.__verify_hwflow),
# These setting is for legacy compatibility & ignored.
# Having it here is not appropriate given this driver is commonly
# used with third party XBee products.
Setting(
name='enable_low_battery', type=Boolean, required=False,
default_value=False),
]
# Add our settings_list entries into the settings passed to us.
set_in = self.merge_settings(set_in, settings_list)
## Channel Properties Definition:
# property_list = []
# Add our property_list entries into the properties passed to us.
# prop_in = self.merge_properties(prop_in, property_list)
## Initialize the XBeeBase interface:
XBeeBase.__init__(self, name, core_services, set_in, prop_in)
self._tracer.calls("XBeeSerial.__init__()")
示例10: probe
def probe():
# Collect important information about the driver.
#
# .. Note::
#
# This method is a static method. As such, all data returned
# must be accessible from the class without having a instance
# of the device created.
#
# Returns a dictionary that must contain the following 2 keys:
# 1) address_table:
# A list of XBee address tuples with the first part of the
# address removed that this device might send data to.
# For example: [ 0xe8, 0xc105, 0x95 ]
# 2) supported_products:
# A list of product values that this driver supports.
# Generally, this will consist of Product Types that
# can be found in 'devices/xbee/common/prodid.py'
probe_data = XBeeBase.probe()
for address in XBeeSensor.ADDRESS_TABLE:
probe_data['address_table'].append(address)
for product in XBeeSensor.SUPPORTED_PRODUCTS:
probe_data['supported_products'].append(product)
return probe_data
示例11: __init__
def __init__(self, name, core_services):
self.__name = name
self.__core = core_services
## Local State Variables:
self.__xbee_manager = None
## Settings Table Definition:
settings_list = [
Setting(
name='sample_rate_ms', type=int, required=False,
default_value=10000,
verify_function=lambda x: x > 0 and x < 0xffff),
Setting(
name='idle_off_seconds', type=int, required=False,
default_value=0, verify_function=lambda x: x >= 0),
Setting(name='input_source', type=str, required=False, default_value=None),
]
## Channel Properties Definition:
property_list = [
# gettable properties
ChannelSourceDeviceProperty(name="adder_reg1", type=float,
initial=Sample(timestamp=0, value=0.0),
perms_mask=(DPROP_PERM_GET|DPROP_PERM_SET),
options=DPROP_OPT_AUTOTIMESTAMP,
set_cb=lambda x: self.prop_set_adder("adder_reg1", x)),
ChannelSourceDeviceProperty(name="power_on", type=Boolean,
initial=Sample(timestamp=0,
value=Boolean(False, style=STYLE_ONOFF)),
perms_mask=(DPROP_PERM_GET|DPROP_PERM_SET),
options=DPROP_OPT_AUTOTIMESTAMP,
set_cb=self.prop_set_power_control1),
]
## Initialize the XBeeBase interface:
XBeeBase.__init__(self, self.__name, self.__core,
settings_list, property_list)
示例12: __init__
def __init__(self, name, core_services):
self.__name = name
self.__core = core_services
self.__xbee_manager = None
from core.tracing import get_tracer
self.__tracer = get_tracer(name)
# Settings:
#
# xbee_device_manager: must be set to the name of an XBeeDeviceManager
# instance.
# extended_address: is the extended address of the XBee device you
# would like to monitor.
# sample_rate_ms: is the sample rate of the XBee device.
settings_list = [
Setting(
name='xbee_device_manager', type=str, required=False,
default_value=''),
Setting(
name='extended_address', type=str, required=False,
default_value=''),
Setting(
name='sample_rate_ms', type=int, required=False,
default_value=2000,
verify_function=lambda x: x > 0 and x < 0xffff),
Setting(
name='channel_settings', type=str, required=False,
default_value="name,unit"),
]
## Channel Properties Definition:
property_list = []
## Initialize the DeviceBase interface:
XBeeBase.__init__(self, self.__name, self.__core,
settings_list, property_list)
示例13: start
def start(self):
self._tracer.calls("XBeeXBR.start()")
# init self._xbee_manager and self._extended_address
# register ourself with our Xbee manager
# create the self.running_indication callback
XBeeBase.pre_start(self)
# Create a callback specification for our device address, endpoint
# Digi XBee profile and sample cluster id:
self._xbee_manager.register_sample_listener(self, self._extended_address,
self._sample_indication)
# Create a DDO configuration block for this device:
xbee_ddo_cfg = XBeeConfigBlockDDO(self._extended_address)
# Configure pins DI1 & DI2 for analog input:
for io_pin in ['D1', 'D2']:
xbee_ddo_cfg.add_parameter(io_pin, 2)
# Register this configuration block with the XBee Device Manager:
self._xbee_manager.xbee_device_config_block_add(self, xbee_ddo_cfg)
# Configure the IO Sample Rate:
sample_rate = SettingsBase.get_setting(self, "sample_rate_ms")
# DigiMesh requires at least 'Sleep Compatibility'
# this call will also set IR to sample_rate
xbee_sleep_cfg = self._xbee_manager.get_sleep_block(
self._extended_address,
sleep=False, sleep_rate_ms=sample_rate, awake_time_ms=0)
self._xbee_manager.xbee_device_config_block_add(self, xbee_sleep_cfg)
# we've no more to config, indicate we're ready to configure.
return XBeeBase.start(self)
示例14: __init__
def __init__(self, name, core_services):
self.__name = name
self.__core = core_services
from core.tracing import get_tracer
self.__tracer = get_tracer(name)
## Local State Variables:
self.__xbee_manager = None
self.__OLD_HARDWARE = False
self.__scale = 0.0
self.__offset = 0.0
# Force a calibration every read.
self.__calibration_interval = 0
self.__calibration_time = -self.__calibration_interval
self.__lock = threading.Lock()
# Settings
#
# xbee_device_manager: must be set to the name of an XBeeDeviceManager
# instance.
# sample_rate_ms: the sample rate of the XBee adapter.
# channel1_mode: Operating input mode for pin 1 of the adapter.
# Must be a string value comprised of one of the following:
# "TenV" - 0-10v input available on any channel.
# "CurrentLoop" - 0-20 mA current loop available on
# any channel.
# channel2_mode: Operating input mode for pin 2 of the adapter.
# See channel1_mode for valid setting information.
# channel3_mode: Operating input mode for pin 3 of the adapter.
# See channel1_mode for valid setting information.
# channel4_mode: Operating input mode for pin 4 of the adapter.
# See channel1_mode for valid setting information.
settings_list = [
Setting(
name='extended_address', type=str, required=False,
default_value=''),
Setting(
name='sample_rate_ms', type=int, required=True,
default_value=60000,
verify_function=lambda x: x >= 0 and x <= CYCLIC_SLEEP_EXT_MAX_MS),
Setting(
name='channel1_mode', type=str, required=False,
verify_function=_verify_channel_mode,
default_value=self.LOCAL_AIO_MODE_TENV),
Setting(
name='channel2_mode', type=str, required=False,
verify_function=_verify_channel_mode,
default_value=self.LOCAL_AIO_MODE_TENV),
Setting(
name='channel3_mode', type=str, required=False,
verify_function=_verify_channel_mode,
default_value=self.LOCAL_AIO_MODE_TENV),
Setting(
name='channel4_mode', type=str, required=False,
verify_function=_verify_channel_mode,
default_value=self.LOCAL_AIO_MODE_TENV),
]
## Channel Properties Definition:
property_list = [
ChannelSourceDeviceProperty(name="channel1_value", type=float,
initial=Sample(timestamp=0, unit="V", value=0.0),
perms_mask=DPROP_PERM_GET|DPROP_PERM_REFRESH, options=DPROP_OPT_AUTOTIMESTAMP,
refresh_cb = self.refresh),
ChannelSourceDeviceProperty(name="channel2_value", type=float,
initial=Sample(timestamp=0, unit="V", value=0.0),
perms_mask=DPROP_PERM_GET|DPROP_PERM_REFRESH, options=DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name="channel3_value", type=float,
initial=Sample(timestamp=0, unit="V", value=0.0),
perms_mask=DPROP_PERM_GET|DPROP_PERM_REFRESH, options=DPROP_OPT_AUTOTIMESTAMP),
ChannelSourceDeviceProperty(name="channel4_value", type=float,
initial=Sample(timestamp=0, unit="V", value=0.0),
perms_mask=DPROP_PERM_GET|DPROP_PERM_REFRESH, options=DPROP_OPT_AUTOTIMESTAMP),
]
## Initialize the XBeeBase interface:
XBeeBase.__init__(self, self.__name, self.__core,
settings_list, property_list)
示例15: __init__
def __init__(self, name, core_services):
self.__name = name
self.__core = core_services
## Local State Variables:
self.__xbee_manager = None
## Settings Table Definition:
settings_list = [
Setting(
name='sleep', type=bool, required=False,
default_value=True),
Setting(
name='sample_rate_ms', type=int, required=False,
default_value=400,
verify_function=lambda x: x >= 0 and x <= CYCLIC_SLEEP_EXT_MAX_MS),
Setting(
name='awake_time_ms', type=int, required=False,
default_value=5000,
verify_function=lambda x: x >= 0 and x <= 0xffff),
Setting(
name='sample_predelay', type=int, required=False,
default_value=125,
verify_function=lambda x: x >= 0 and x <= 0xffff),
Setting(
name='default_state1', type=str, required=False,
default_value="same",
parser=lambda s: s.lower(),
verify_function=lambda s: s in initial_states),
Setting(
name='default_state2', type=str, required=False,
default_value="off",
parser=lambda s: s.lower(),
verify_function=lambda s: s in initial_states),
Setting(
name='default_state3', type=str, required=False,
default_value="off",
parser=lambda s: s.lower(),
verify_function=lambda s: s in initial_states),
Setting(
name='idle_off_seconds', type=int, required=False,
default_value=0, verify_function=lambda x: x >= 0),
Setting(name='power_on_source1', type=str, required=False),
Setting(name='power_on_source2', type=str, required=False),
Setting(name='power_on_source3', type=str, required=False),
Setting(name='device_profile', type=str, required=False),
Setting(name='input_source', type=str, required=False, default_value=None),
]
## Channel Properties Definition:
property_list = [
# gettable properties
# ChannelSourceDeviceProperty(name="input", type=tuple,
# initial=Sample(timestamp=0, value=(0,None)),
# perms_mask=DPROP_PERM_SET | DPROP_PERM_GET,
# set_cb=self.prop_set_power_control1),
ChannelSourceDeviceProperty(name="activate", type=Boolean,
initial=Sample(timestamp=0,
value=Boolean(False, style=STYLE_ONOFF)),
perms_mask=(DPROP_PERM_GET|DPROP_PERM_SET),
options=DPROP_OPT_AUTOTIMESTAMP,
set_cb=self.unlock),
ChannelSourceDeviceProperty(name="aa", type=str,
initial=Sample(timestamp=0, value="lock"),
perms_mask=(DPROP_PERM_GET|DPROP_PERM_SET), options=DPROP_OPT_AUTOTIMESTAMP),
# settable properties
# ChannelSourceDeviceProperty(name="counter_reset", type=int,
# perms_mask=DPROP_PERM_SET,
# set_cb=self.prop_set_counter_reset),
]
## Initialize the XBeeBase interface:
XBeeBase.__init__(self, self.__name, self.__core,
settings_list, property_list)