Added aunt emma
This commit is contained in:
parent
a5ef4a8192
commit
dfc9b8687f
@ -28,7 +28,7 @@ class pi_face(object):
|
|||||||
|
|
||||||
PF_OUT_NAMES = ['Output 0', # 0
|
PF_OUT_NAMES = ['Output 0', # 0
|
||||||
'Output 1', # 1
|
'Output 1', # 1
|
||||||
'Output 2', # 2
|
'Aunt Emma', # 2
|
||||||
'Ploenlein', # 3
|
'Ploenlein', # 3
|
||||||
'Bakery', # 4
|
'Bakery', # 4
|
||||||
'Mill', # 5
|
'Mill', # 5
|
||||||
@ -72,8 +72,11 @@ class pi_face(object):
|
|||||||
def get_output(self, index):
|
def get_output(self, index):
|
||||||
return self.__pf_output_states__[index]
|
return self.__pf_output_states__[index]
|
||||||
|
|
||||||
def get_ploenlein(self):
|
def set_aunt_emma(self, state):
|
||||||
return self.get_output(3)
|
self.set_output(2, state)
|
||||||
|
|
||||||
|
def get_aunt_emma(self):
|
||||||
|
return self.get_output(2)
|
||||||
|
|
||||||
def set_bakery(self, state):
|
def set_bakery(self, state):
|
||||||
self.set_output(4, state)
|
self.set_output(4, state)
|
||||||
@ -87,6 +90,9 @@ class pi_face(object):
|
|||||||
def get_mill(self):
|
def get_mill(self):
|
||||||
return self.get_output(5)
|
return self.get_output(5)
|
||||||
|
|
||||||
|
def get_ploenlein(self):
|
||||||
|
return self.get_output(3)
|
||||||
|
|
||||||
def set_ploenlein(self, state):
|
def set_ploenlein(self, state):
|
||||||
self.set_output(3, state)
|
self.set_output(3, state)
|
||||||
|
|
||||||
@ -294,6 +300,7 @@ class state_machine_day_state(state_machine.state_machine):
|
|||||||
class leyk(object):
|
class leyk(object):
|
||||||
LOG_PREFIX = 'Leyk:'
|
LOG_PREFIX = 'Leyk:'
|
||||||
|
|
||||||
|
TOPIC_AUNT_EMMA = config.MQTT_TOPIC + '/status/Aunt Emma'
|
||||||
TOPIC_BAKE_HOUSE = config.MQTT_TOPIC + '/status/Bake House'
|
TOPIC_BAKE_HOUSE = config.MQTT_TOPIC + '/status/Bake House'
|
||||||
TOPIC_BAKERY = config.MQTT_TOPIC + '/status/Bakery'
|
TOPIC_BAKERY = config.MQTT_TOPIC + '/status/Bakery'
|
||||||
TOPIC_MILL = config.MQTT_TOPIC + '/status/Mill'
|
TOPIC_MILL = config.MQTT_TOPIC + '/status/Mill'
|
||||||
@ -304,6 +311,7 @@ class leyk(object):
|
|||||||
TOPIC_STATE = config.MQTT_TOPIC + '/status/state'
|
TOPIC_STATE = config.MQTT_TOPIC + '/status/state'
|
||||||
|
|
||||||
|
|
||||||
|
RX_TOPIC_AUNT_EMMA = config.MQTT_TOPIC + '/set/Aunt Emma'
|
||||||
RX_TOPIC_BAKE_HOUSE = config.MQTT_TOPIC + '/set/Bake House'
|
RX_TOPIC_BAKE_HOUSE = config.MQTT_TOPIC + '/set/Bake House'
|
||||||
RX_TOPIC_BAKERY = config.MQTT_TOPIC + '/set/Bakery'
|
RX_TOPIC_BAKERY = config.MQTT_TOPIC + '/set/Bakery'
|
||||||
RX_TOPIC_MILL = config.MQTT_TOPIC + '/set/Mill'
|
RX_TOPIC_MILL = config.MQTT_TOPIC + '/set/Mill'
|
||||||
@ -312,6 +320,7 @@ class leyk(object):
|
|||||||
RX_TOPIC_REESE_HOUSE = config.MQTT_TOPIC + '/set/Reese House'
|
RX_TOPIC_REESE_HOUSE = config.MQTT_TOPIC + '/set/Reese House'
|
||||||
|
|
||||||
RX_TOPICS = [
|
RX_TOPICS = [
|
||||||
|
RX_TOPIC_AUNT_EMMA,
|
||||||
RX_TOPIC_BAKE_HOUSE,
|
RX_TOPIC_BAKE_HOUSE,
|
||||||
RX_TOPIC_BAKERY,
|
RX_TOPIC_BAKERY,
|
||||||
RX_TOPIC_MILL,
|
RX_TOPIC_MILL,
|
||||||
@ -323,6 +332,7 @@ class leyk(object):
|
|||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.__client__ = mqtt.mqtt_client(config.APP_NAME, config.MQTT_SERVER, 1883, config.MQTT_USER, config.MQTT_PASS)
|
self.__client__ = mqtt.mqtt_client(config.APP_NAME, config.MQTT_SERVER, 1883, config.MQTT_USER, config.MQTT_PASS)
|
||||||
|
self.__client__.add_callback(self.RX_TOPIC_AUNT_EMMA, self.__rx_aunt_emma__)
|
||||||
self.__client__.add_callback(self.RX_TOPIC_BAKE_HOUSE, self.__rx_bake_house__)
|
self.__client__.add_callback(self.RX_TOPIC_BAKE_HOUSE, self.__rx_bake_house__)
|
||||||
self.__client__.add_callback(self.RX_TOPIC_BAKERY, self.__rx_bakery__)
|
self.__client__.add_callback(self.RX_TOPIC_BAKERY, self.__rx_bakery__)
|
||||||
self.__client__.add_callback(self.RX_TOPIC_MILL, self.__rx_mill__)
|
self.__client__.add_callback(self.RX_TOPIC_MILL, self.__rx_mill__)
|
||||||
@ -331,6 +341,7 @@ class leyk(object):
|
|||||||
self.__client__.add_callback(self.RX_TOPIC_MODE, self.__rx_mode__)
|
self.__client__.add_callback(self.RX_TOPIC_MODE, self.__rx_mode__)
|
||||||
|
|
||||||
self.TOPIC_DATA = {
|
self.TOPIC_DATA = {
|
||||||
|
self.TOPIC_AUNT_EMMA: self.get_aunt_emma,
|
||||||
self.TOPIC_BAKE_HOUSE: self.get_bake_house,
|
self.TOPIC_BAKE_HOUSE: self.get_bake_house,
|
||||||
self.TOPIC_BAKERY: self.get_bakery,
|
self.TOPIC_BAKERY: self.get_bakery,
|
||||||
self.TOPIC_MILL: self.get_mill,
|
self.TOPIC_MILL: self.get_mill,
|
||||||
@ -366,6 +377,9 @@ class leyk(object):
|
|||||||
self.publish(self.TOPIC_MODE_BOOL)
|
self.publish(self.TOPIC_MODE_BOOL)
|
||||||
self.publish(self.TOPIC_STATE)
|
self.publish(self.TOPIC_STATE)
|
||||||
|
|
||||||
|
def __rx_aunt_emma__(self, client, userdata, message):
|
||||||
|
self.set_aunt_emma(message.payload == b'true')
|
||||||
|
|
||||||
def __rx_bake_house__(self, client, userdata, message):
|
def __rx_bake_house__(self, client, userdata, message):
|
||||||
self.set_bake_house(message.payload == b'true')
|
self.set_bake_house(message.payload == b'true')
|
||||||
|
|
||||||
@ -427,6 +441,17 @@ class leyk(object):
|
|||||||
def get_ploenlein(self):
|
def get_ploenlein(self):
|
||||||
return self.__pf__.get_ploenlein()
|
return self.__pf__.get_ploenlein()
|
||||||
|
|
||||||
|
def set_aunt_emma(self, state, force=False):
|
||||||
|
if force or self.sm_mode.this_state_is(self.sm_mode.STATE_MANUAL):
|
||||||
|
self.__pf__.set_aunt_emma(state)
|
||||||
|
self.publish(self.TOPIC_AUNT_EMMA)
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
return False
|
||||||
|
|
||||||
|
def get_aunt_emma(self):
|
||||||
|
return self.__pf__.get_aunt_emma()
|
||||||
|
|
||||||
def set_bakery(self, state, force=False):
|
def set_bakery(self, state, force=False):
|
||||||
if force or self.sm_mode.this_state_is(self.sm_mode.STATE_MANUAL):
|
if force or self.sm_mode.this_state_is(self.sm_mode.STATE_MANUAL):
|
||||||
self.__pf__.set_bakery(state)
|
self.__pf__.set_bakery(state)
|
||||||
@ -527,13 +552,15 @@ class leyk(object):
|
|||||||
# WAKE
|
# WAKE
|
||||||
self._queue.enqueue(1, self.__queue_wrapper__, self.set_bakery, True, True)
|
self._queue.enqueue(1, self.__queue_wrapper__, self.set_bakery, True, True)
|
||||||
self._queue.enqueue(2, self.wait, 0 if no_delay else 5 * 60)
|
self._queue.enqueue(2, self.wait, 0 if no_delay else 5 * 60)
|
||||||
self._queue.enqueue(3, self.__queue_wrapper__, self.set_bake_house, True, True)
|
self._queue.enqueue(3, self.__queue_wrapper__, self.set_aunt_emma, True, True)
|
||||||
self._queue.enqueue(4, self.wait, 0 if no_delay else 10 * 60)
|
self._queue.enqueue(4, self.wait, 0 if no_delay else 5 * 60)
|
||||||
self._queue.enqueue(5, self.__queue_wrapper__, self.set_reese_house, True, True)
|
self._queue.enqueue(5, self.__queue_wrapper__, self.set_bake_house, True, True)
|
||||||
self._queue.enqueue(6, self.wait, 0 if no_delay else 7 * 60)
|
self._queue.enqueue(6, self.wait, 0 if no_delay else 10 * 60)
|
||||||
self._queue.enqueue(7, self.__queue_wrapper__, self.set_ploenlein, True, True)
|
self._queue.enqueue(7, self.__queue_wrapper__, self.set_reese_house, True, True)
|
||||||
self._queue.enqueue(8, self.wait, 0 if no_delay else 8 * 60)
|
self._queue.enqueue(8, self.wait, 0 if no_delay else 7 * 60)
|
||||||
self._queue.enqueue(9, self.__queue_wrapper__, self.set_mill, True, True)
|
self._queue.enqueue(9, self.__queue_wrapper__, self.set_ploenlein, True, True)
|
||||||
|
self._queue.enqueue(10, self.wait, 0 if no_delay else 8 * 60)
|
||||||
|
self._queue.enqueue(11, self.__queue_wrapper__, self.set_mill, True, True)
|
||||||
|
|
||||||
def fill_sunrise_queue(self):
|
def fill_sunrise_queue(self):
|
||||||
no_delay = self.sm_day_state.previous_state_was(self.sm_day_state.STATE_IDLE)
|
no_delay = self.sm_day_state.previous_state_was(self.sm_day_state.STATE_IDLE)
|
||||||
@ -543,21 +570,25 @@ class leyk(object):
|
|||||||
self._queue.enqueue(3, self.wait, 0 if no_delay else 5 * 60)
|
self._queue.enqueue(3, self.wait, 0 if no_delay else 5 * 60)
|
||||||
self._queue.enqueue(4, self.__queue_wrapper__, self.set_mill, False, True)
|
self._queue.enqueue(4, self.__queue_wrapper__, self.set_mill, False, True)
|
||||||
self._queue.enqueue(5, self.wait, 0 if no_delay else 8 * 60)
|
self._queue.enqueue(5, self.wait, 0 if no_delay else 8 * 60)
|
||||||
self._queue.enqueue(6, self.__queue_wrapper__, self.set_bakery, False, True)
|
self._queue.enqueue(6, self.__queue_wrapper__, self.set_aunt_emma, False, True)
|
||||||
self._queue.enqueue(7, self.wait, 0 if no_delay else 12 * 60)
|
self._queue.enqueue(7, self.wait, 0 if no_delay else 8 * 60)
|
||||||
self._queue.enqueue(8, self.__queue_wrapper__, self.set_reese_house, False, True)
|
self._queue.enqueue(8, self.__queue_wrapper__, self.set_bakery, False, True)
|
||||||
|
self._queue.enqueue(9, self.wait, 0 if no_delay else 12 * 60)
|
||||||
|
self._queue.enqueue(10, self.__queue_wrapper__, self.set_reese_house, False, True)
|
||||||
|
|
||||||
def fill_sunset_queue(self):
|
def fill_sunset_queue(self):
|
||||||
no_delay = self.sm_day_state.previous_state_was(self.sm_day_state.STATE_IDLE)
|
no_delay = self.sm_day_state.previous_state_was(self.sm_day_state.STATE_IDLE)
|
||||||
# SUNSET
|
# SUNSET
|
||||||
self._queue.enqueue(1, self.__queue_wrapper__, self.set_bake_house, True, True)
|
self._queue.enqueue(1, self.__queue_wrapper__, self.set_bake_house, True, True)
|
||||||
self._queue.enqueue(2, self.__queue_wrapper__, self.set_bakery, True, True)
|
self._queue.enqueue(2, self.__queue_wrapper__, self.set_aunt_emma, True, True)
|
||||||
self._queue.enqueue(3, self.wait, 0 if no_delay else 10 * 60)
|
self._queue.enqueue(3, self.wait, 0 if no_delay else 10 * 60)
|
||||||
self._queue.enqueue(4, self.__queue_wrapper__, self.set_reese_house, True, True)
|
self._queue.enqueue(4, self.__queue_wrapper__, self.set_bakery, True, True)
|
||||||
self._queue.enqueue(5, self.wait, 0 if no_delay else 8 * 60)
|
self._queue.enqueue(5, self.wait, 0 if no_delay else 10 * 60)
|
||||||
self._queue.enqueue(6, self.__queue_wrapper__, self.set_mill, True, True)
|
self._queue.enqueue(6, self.__queue_wrapper__, self.set_reese_house, True, True)
|
||||||
self._queue.enqueue(7, self.wait, 0 if no_delay else 7 * 60)
|
self._queue.enqueue(7, self.wait, 0 if no_delay else 8 * 60)
|
||||||
self._queue.enqueue(8, self.__queue_wrapper__, self.set_ploenlein, True, True)
|
self._queue.enqueue(8, self.__queue_wrapper__, self.set_mill, True, True)
|
||||||
|
self._queue.enqueue(9, self.wait, 0 if no_delay else 7 * 60)
|
||||||
|
self._queue.enqueue(10, self.__queue_wrapper__, self.set_ploenlein, True, True)
|
||||||
|
|
||||||
def fill_sleep_queue(self):
|
def fill_sleep_queue(self):
|
||||||
no_delay = self.sm_day_state.previous_state_was(self.sm_day_state.STATE_IDLE)
|
no_delay = self.sm_day_state.previous_state_was(self.sm_day_state.STATE_IDLE)
|
||||||
@ -566,11 +597,13 @@ class leyk(object):
|
|||||||
self._queue.enqueue(2, self.wait, 0 if no_delay else 5 * 60)
|
self._queue.enqueue(2, self.wait, 0 if no_delay else 5 * 60)
|
||||||
self._queue.enqueue(3, self.__queue_wrapper__, self.set_bakery, False, True)
|
self._queue.enqueue(3, self.__queue_wrapper__, self.set_bakery, False, True)
|
||||||
self._queue.enqueue(4, self.wait, 0 if no_delay else 9 * 60)
|
self._queue.enqueue(4, self.wait, 0 if no_delay else 9 * 60)
|
||||||
self._queue.enqueue(5, self.__queue_wrapper__, self.set_ploenlein, False, True)
|
self._queue.enqueue(5, self.__queue_wrapper__, self.set_aunt_emma, False, True)
|
||||||
self._queue.enqueue(6, self.wait, 0 if no_delay else 9 * 60)
|
self._queue.enqueue(6, self.wait, 0 if no_delay else 9 * 60)
|
||||||
self._queue.enqueue(7, self.__queue_wrapper__, self.set_mill, False, True)
|
self._queue.enqueue(7, self.__queue_wrapper__, self.set_ploenlein, False, True)
|
||||||
self._queue.enqueue(8, self.wait, 0 if no_delay else 6 * 60)
|
self._queue.enqueue(8, self.wait, 0 if no_delay else 9 * 60)
|
||||||
self._queue.enqueue(9, self.__queue_wrapper__, self.set_reese_house, False, True)
|
self._queue.enqueue(9, self.__queue_wrapper__, self.set_mill, False, True)
|
||||||
|
self._queue.enqueue(10, self.wait, 0 if no_delay else 6 * 60)
|
||||||
|
self._queue.enqueue(11, self.__queue_wrapper__, self.set_reese_house, False, True)
|
||||||
|
|
||||||
def task_1s(self, task_inst):
|
def task_1s(self, task_inst):
|
||||||
self.sm_mode.work()
|
self.sm_mode.work()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user