boneIO 0.3.0.dev1__py3-none-any.whl → 0.3.0.dev2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
boneio/cover.py CHANGED
@@ -5,6 +5,7 @@ from typing import Any, Callable
5
5
  from boneio.const import CLOSE, COVER, IDLE, OPEN, OPENING, CLOSING, CLOSED, STOP
6
6
  from boneio.helper.events import EventBus
7
7
  from boneio.helper.mqtt import BasicMqtt
8
+ from boneio.helper.timeperiod import TimePeriod
8
9
  from boneio.relay import MCPRelay
9
10
 
10
11
  _LOGGER = logging.getLogger(__name__)
@@ -21,10 +22,10 @@ COVER_COMMANDS = {
21
22
  class RelayHelper:
22
23
  """Relay helper for cover either open/close."""
23
24
 
24
- def __init__(self, relay: MCPRelay, time: int) -> None:
25
+ def __init__(self, relay: MCPRelay, time: TimePeriod) -> None:
25
26
  """Initialize helper."""
26
27
  self._relay = relay
27
- self._steps = 100 / time
28
+ self._steps = 100 / time.total_seconds
28
29
 
29
30
  @property
30
31
  def relay(self) -> MCPRelay:
@@ -46,8 +47,8 @@ class Cover(BasicMqtt):
46
47
  open_relay: Any,
47
48
  close_relay: MCPRelay,
48
49
  state_save: Callable,
49
- open_time: int,
50
- close_time: int,
50
+ open_time: TimePeriod,
51
+ close_time: TimePeriod,
51
52
  event_bus: EventBus,
52
53
  restored_state: int = 100,
53
54
  **kwargs,
boneio/helper/gpio.py CHANGED
@@ -98,7 +98,6 @@ class GpioBaseClass:
98
98
  gpio = kwargs.get("rest_pin", {GPIO_MODE: GPIO_STR})
99
99
  gpio_mode = gpio.get(GPIO_MODE, GPIO_STR)
100
100
  self._bounce_time = gpio.get("bounce_time", TimePeriod(milliseconds=25))
101
- configure_pin(pin=pin, mode=gpio_mode)
102
101
  self._loop = asyncio.get_running_loop()
103
102
  self._press_callback = press_callback
104
103
  setup_input(pin=self._pin, pull_mode=gpio_mode)
boneio/helper/loader.py CHANGED
@@ -44,6 +44,7 @@ from boneio.helper import (
44
44
  ha_sensor_temp_availabilty_message,
45
45
  )
46
46
  from boneio.helper.ha_discovery import ha_cover_availabilty_message
47
+ from boneio.helper.timeperiod import TimePeriod
47
48
  from boneio.input.gpio import GpioInputButton
48
49
 
49
50
  # Typing imports that create a circular dependency
@@ -145,9 +146,11 @@ def create_mcp23017(
145
146
  id = mcp[ID] or mcp[ADDRESS]
146
147
  try:
147
148
  manager._mcp[id] = MCP23017(i2c=i2cbusio, address=mcp[ADDRESS], reset=False)
148
- sleep_time = mcp.get(INIT_SLEEP, 0)
149
- _LOGGER.debug(f"Sleeping for {sleep_time}s while MCP {id} is initializing.")
150
- time.sleep(sleep_time)
149
+ sleep_time = mcp.get(INIT_SLEEP, TimePeriod(seconds=0))
150
+ _LOGGER.debug(
151
+ f"Sleeping for {sleep_time.total_seconds}s while MCP {id} is initializing."
152
+ )
153
+ time.sleep(sleep_time.total_seconds)
151
154
  grouped_outputs[id] = {}
152
155
  except TimeoutError as err:
153
156
  _LOGGER.error("Can't connect to MCP %s. %s", id, err)
boneio/schema/schema.yaml CHANGED
@@ -121,11 +121,16 @@ modbus_sensors:
121
121
  meta:
122
122
  label: Model to load from database.
123
123
  update_interval:
124
- type: integer
124
+ type:
125
+ - string
126
+ - timeperiod
127
+ coerce:
128
+ - str
129
+ - positive_time_period
125
130
  required: True
126
- default: 30
131
+ default: 30s
127
132
  meta:
128
- label: Update interval in seconds.
133
+ label: Update interval.
129
134
  lm75:
130
135
  type: dict
131
136
  required: False
@@ -178,9 +183,14 @@ mcp23017:
178
183
  meta:
179
184
  label: GPIO of I2C SDA
180
185
  init_sleep:
181
- type: integer
186
+ type:
187
+ - string
188
+ - timeperiod
189
+ coerce:
190
+ - str
191
+ - positive_time_period
182
192
  required: True
183
- default: 0
193
+ default: 0s
184
194
  meta:
185
195
  label: How long to sleep for MCP to initialize.
186
196
 
@@ -328,11 +338,16 @@ adc:
328
338
  meta:
329
339
  label: PIN to use.
330
340
  update_interval:
331
- type: integer
332
341
  required: True
333
- default: 60
342
+ type:
343
+ - string
344
+ - timeperiod
345
+ coerce:
346
+ - str
347
+ - positive_time_period
348
+ default: 60s
334
349
  meta:
335
- label: Update interval in seconds.
350
+ label: Update interval.
336
351
  show_in_ha:
337
352
  type: boolean
338
353
  required: True
@@ -368,15 +383,25 @@ cover:
368
383
  meta:
369
384
  label: ID of close relay of output.
370
385
  open_time:
371
- type: integer
386
+ type:
387
+ - string
388
+ - timeperiod
389
+ coerce:
390
+ - str
391
+ - positive_time_period
372
392
  required: True
373
393
  meta:
374
- label: Time to open cover in seconds
394
+ label: Time to open cover. Example 30s. Minimum is 1s.
375
395
  close_time:
376
- type: integer
396
+ type:
397
+ - string
398
+ - timeperiod
399
+ coerce:
400
+ - str
401
+ - positive_time_period
377
402
  required: True
378
403
  meta:
379
- label: Time to close cover in seconds
404
+ label: Time to close cover. Example 30s. Minimum is 1s.
380
405
  device_class:
381
406
  type: string
382
407
  required: False
boneio/sensor/adc.py CHANGED
@@ -4,6 +4,7 @@ import asyncio
4
4
 
5
5
  from boneio.const import SENSOR
6
6
  from boneio.helper import BasicMqtt
7
+ from boneio.helper.timeperiod import TimePeriod
7
8
 
8
9
  try:
9
10
  import Adafruit_BBIO.ADC as ADC
@@ -25,7 +26,9 @@ def initialize_adc():
25
26
  class GpioADCSensor(BasicMqtt):
26
27
  """Represent Gpio ADC sensor."""
27
28
 
28
- def __init__(self, pin: str, update_interval: int = 60, **kwargs) -> None:
29
+ def __init__(
30
+ self, pin: str, update_interval: int = TimePeriod(seconds=60), **kwargs
31
+ ) -> None:
29
32
  """Setup GPIO ADC Sensor"""
30
33
  super().__init__(topic_type=SENSOR, **kwargs)
31
34
  self._pin = pin
@@ -44,4 +47,4 @@ class GpioADCSensor(BasicMqtt):
44
47
  topic=self._send_topic,
45
48
  payload=self.state,
46
49
  )
47
- await asyncio.sleep(self._update_interval)
50
+ await asyncio.sleep(self._update_interval.total_seconds)
@@ -19,6 +19,7 @@ from boneio.const import (
19
19
  )
20
20
  from boneio.helper import BasicMqtt
21
21
  from boneio.helper.ha_discovery import modbus_sensor_availabilty_message
22
+ from boneio.helper.timeperiod import TimePeriod
22
23
 
23
24
  _LOGGER = logging.getLogger(__name__)
24
25
 
@@ -96,7 +97,7 @@ class ModbusSensor(BasicMqtt):
96
97
  topic_prefix: str,
97
98
  ha_discovery: bool = False,
98
99
  id: str = DefaultName,
99
- update_interval: int = 60,
100
+ update_interval: TimePeriod = TimePeriod(seconds=60),
100
101
  **kwargs,
101
102
  ):
102
103
  """Initialize Modbus sensor class."""
@@ -185,7 +186,7 @@ class ModbusSensor(BasicMqtt):
185
186
 
186
187
  async def send_state(self) -> None:
187
188
  """Fetch state periodically and send to MQTT."""
188
- update_interval = self._update_interval
189
+ update_interval = self._update_interval.total_seconds
189
190
  payload_online = OFFLINE
190
191
  while True:
191
192
  await self.check_availability()
@@ -215,7 +216,7 @@ class ModbusSensor(BasicMqtt):
215
216
  payload=payload_online,
216
217
  )
217
218
  _LOGGER.warn(
218
- "Can't fetch data from modbus device. Will sleep for %s",
219
+ "Can't fetch data from modbus device. Will sleep for %s seconds",
219
220
  update_interval,
220
221
  )
221
222
  self._discovery_sent = False
boneio/version.py CHANGED
@@ -1,2 +1,2 @@
1
1
  # flake8: noqa
2
- __version__ = "0.3.0.dev1"
2
+ __version__ = "0.3.0.dev2"
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: boneio
3
- Version: 0.3.0.dev1
3
+ Version: 0.3.0.dev2
4
4
  Summary: Python App for BoneIO
5
5
  Home-page: https://github.com/boneIO-eu/app_bbb
6
- Download-URL: https://github.com/boneIO-eu/app_bbb/archive/0.3.0.dev1.zip
6
+ Download-URL: https://github.com/boneIO-eu/app_bbb/archive/0.3.0.dev2.zip
7
7
  License: GNU General Public License v3.0
8
8
  Platform: UNKNOWN
9
9
  Classifier: Programming Language :: Python
@@ -1,13 +1,13 @@
1
1
  boneio/__init__.py,sha256=hoLKnu6h1uEsiCHA9Ql2MMDC7VQS0E-s_2cxBS-CTOg,147
2
2
  boneio/bonecli.py,sha256=I6TO8YIHPwPkb9MPB1ZY_i_CtpiipJ6_U8TznOiME3k,3077
3
3
  boneio/const.py,sha256=eBU9YNvTHvTRLvQtug0uqmsMZnVVNNcsKMZSow67fLM,2600
4
- boneio/cover.py,sha256=IhqNQSm237LTfrN0QjOs8z8FCSlFHkMJ8y4wfhJXNn8,8215
4
+ boneio/cover.py,sha256=wKrnhaRGjJmEutUbisvDmPjVAYeDi4lYzV_de4nXxtA,8298
5
5
  boneio/manager.py,sha256=3pBGQ4UmzwS7gOM3HQZnCPZ_CEQzd_Iud-difDMmk_c,14136
6
6
  boneio/modbus.py,sha256=FVo5QJkJ9-8SWKktKP2VLQ09zGp9A8jbQhuVgW8EO8o,3996
7
7
  boneio/mqtt_client.py,sha256=dxuVR4dTrLb0x7SZF8C_E_UI1u72g3n5n_XdSuRlFSg,6353
8
8
  boneio/oled.py,sha256=Be9QeTHX1mmCQOshYY1KNGvqt4nzEtJCD3gCE3gRSsc,4836
9
9
  boneio/runner.py,sha256=g0SinyJjFRPSWjiQ7kpilr5v_f3qctx6FOxEOJPkbNs,1880
10
- boneio/version.py,sha256=CtEtI3sZE2CkRooEJDafw_EikEa4f-r_ymZyrWn2g28,42
10
+ boneio/version.py,sha256=ckUPqY-IKBojH6FaCQWqIHQt5Jjw0nfk9PB2REzERsc,42
11
11
  boneio/example_config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
12
  boneio/example_config/adc.yaml,sha256=KaNfPuZmrhpiKJVUKC6uQXQ0YRCp0DoXVxYtqsbiSGI,168
13
13
  boneio/example_config/config.yaml,sha256=_gNf0Yo6p10Ao_rcSmHA_gCGMtDsvAdso3jNt3r3gqE,322
@@ -19,9 +19,9 @@ boneio/fonts/danube__.ttf,sha256=KBRPUcGvmroCjrWC8zK4MulUb9lV8R0lXkOY7lNnQWc,193
19
19
  boneio/helper/__init__.py,sha256=wOr2NWtGamuaWVmmQQP4vcNaj1I6pXeT2rDf-FzXKYk,2289
20
20
  boneio/helper/events.py,sha256=oKXDpFXSmbfhnucSYTTCPlhaBBstcAYYg3bTIVS6D1w,5251
21
21
  boneio/helper/exceptions.py,sha256=4APZ9UrJtCWP-5hLqHUThJ9fLKOZr-LoulLy_1QAq-I,318
22
- boneio/helper/gpio.py,sha256=ToJ7dAQBZ1K5tGLcOw3NF9pLOaDSucbJo1VvOX2HqEU,2812
22
+ boneio/helper/gpio.py,sha256=HOImpow_6rVOtgZ5FAZd-En61jNyigp2AVZMXYW0x3U,2765
23
23
  boneio/helper/ha_discovery.py,sha256=0Ab5xwplKoxArYTSwt5xyBtn5MaVbKlzdoRNw3tpRN8,5480
24
- boneio/helper/loader.py,sha256=gPG6uPQRHTZudj5DCLVFxJ07xof6rcsMfGtLcUvu_Qw,10304
24
+ boneio/helper/loader.py,sha256=w8Q8-3DfnA-37ZxV3M0Sf9nrJBJNZp-wsVq0sJroUBI,10430
25
25
  boneio/helper/logger.py,sha256=8B0qeNPALGG5Dlz0cfujjknbf-TOPv4axLF3xj_Bzs8,1800
26
26
  boneio/helper/mqtt.py,sha256=q_0K5TOWNZNCvmhpHuFWloRSVyGxdklogx0jYxc5cpg,741
27
27
  boneio/helper/oled.py,sha256=f0XYbaFstUbJ6ISmFe1vQCnmNVMctQWtnStNdROrblc,351
@@ -39,18 +39,18 @@ boneio/relay/mcp.py,sha256=6Bd8ktQnP9yItxO7wkSNCVodMAMRqd8NrVm0TMwIkmk,2665
39
39
  boneio/schema/actions.yaml,sha256=HWBeyJLBVbJ_prSYj14ovP7f13QKXL3-9GRJgAOpHQ4,921
40
40
  boneio/schema/actions_sensor.yaml,sha256=LhXEsYsg6qs7iHqgQE6n-2jj-o-ZZRusDW_9nWIiZAY,129
41
41
  boneio/schema/actions_switch.yaml,sha256=qyooX0izkgl4wBEh8xUsYFEKMrvhbIAQYxOGTB5AROY,124
42
- boneio/schema/schema.yaml,sha256=5WwsnIV6wC2zkHvyzByJ6O0WXlm2JPD1dQueVFsv8bQ,8946
42
+ boneio/schema/schema.yaml,sha256=pJHGIC92SlTLhCUqBUolIQOqsoIcevfgXRJhfPu9lpo,9458
43
43
  boneio/sensor/__init__.py,sha256=XJG-ktDfEPMs5RLt9hYT3gQmYhU_wMOR0Ud88-Q0KmM,305
44
- boneio/sensor/adc.py,sha256=vjl1ZsRv-_ispskCeYxzXrFrbgd7_0--YKYlJ7vfi4k,1149
44
+ boneio/sensor/adc.py,sha256=mAxzgs0Eul1V6Fmye9V7TsJiPRnc59TQ-s7nb_PV7G8,1245
45
45
  boneio/sensor/gpio.py,sha256=9f_hNcCYvrEb7FvA00Xm-L5-fUXdH4SM-jZiOamOz2Q,1230
46
- boneio/sensor/modbus/__init__.py,sha256=HmiGIrpHVtfA22ur-FdyM3288PNzRqV2bIN8E2AcZo4,8194
46
+ boneio/sensor/modbus/__init__.py,sha256=Etfbc81b265uj8cVltxx5p4zxv7pxbApgaocQy-af-4,8291
47
47
  boneio/sensor/modbus/sdm120.json,sha256=4sueFfSw7G6a77gdIUhbfJvE-MNVJFOeVbRvHDw5Rvk,4145
48
48
  boneio/sensor/modbus/sdm630.json,sha256=6LbIfXWk_PVRW-OuJwrsFEnRGLVEmEqqGIbj-1FDaiI,10969
49
49
  boneio/sensor/modbus/sofar.json,sha256=A_YztQN_ctyItIm2LH1tfcs-pSyG18I530qleLd2tOw,5592
50
50
  boneio/sensor/temp/__init__.py,sha256=lhvQqD76atQNyoxdeyskH8_fVOLCaHFoVnpzby6kqeE,1416
51
- boneio-0.3.0.dev1.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
52
- boneio-0.3.0.dev1.dist-info/METADATA,sha256=50wYGlA6FEqvKuvZjYEpAG5LjEFkqfF-SlozKGDRp8M,1887
53
- boneio-0.3.0.dev1.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
54
- boneio-0.3.0.dev1.dist-info/entry_points.txt,sha256=JX7gluDIkQ6MBlzzxGHMItnBjciiJ73tsXwYcazMW_U,47
55
- boneio-0.3.0.dev1.dist-info/top_level.txt,sha256=ag9S5n1_KXZfyk9tN8R0YUDYbdA--e5a2w2FOD_yMdg,7
56
- boneio-0.3.0.dev1.dist-info/RECORD,,
51
+ boneio-0.3.0.dev2.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
52
+ boneio-0.3.0.dev2.dist-info/METADATA,sha256=IaurBg_gI6zf-NWjpfTrT_djAkFXxU85xXc535qyDOw,1887
53
+ boneio-0.3.0.dev2.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
54
+ boneio-0.3.0.dev2.dist-info/entry_points.txt,sha256=JX7gluDIkQ6MBlzzxGHMItnBjciiJ73tsXwYcazMW_U,47
55
+ boneio-0.3.0.dev2.dist-info/top_level.txt,sha256=ag9S5n1_KXZfyk9tN8R0YUDYbdA--e5a2w2FOD_yMdg,7
56
+ boneio-0.3.0.dev2.dist-info/RECORD,,