diff --git a/actuasim.py b/actuasim.py index d3bd3b56c0c80246692c7d5569274ecf33f2e63a..0df73ecfd64b351c6f7def87934ceceedf57f86d 100755 --- a/actuasim.py +++ b/actuasim.py @@ -150,7 +150,12 @@ class Actuasim(QMainWindow): def frame_received(self, frame): self.logger.info('Frame received:' + str([hex(h) for h in frame[0]])) - decoded_frame = knxnet.decode_frame(frame[0]) + try: + decoded_frame = knxnet.decode_frame(frame[0]) + except Exception as e: + self.logger.info('Bad frame: {}'.format(e)) + return + if decoded_frame.header.service_type_descriptor == knxnet.ServiceTypeDescriptor.CONNECTION_REQUEST: self.logger.info('= Connection request:\n' + str(decoded_frame)) conn_resp = knxnet.create_frame(knxnet.ServiceTypeDescriptor.CONNECTION_RESPONSE, diff --git a/actuasim/blind.py b/actuasim/blind.py index ac9f7d95f2196542226f4633447e0dbf217266ad..587b9517754fd3949637b53c8244f7f8a9014842 100644 --- a/actuasim/blind.py +++ b/actuasim/blind.py @@ -23,14 +23,14 @@ class BlindWidget(QWidget): def __init__(self, individual_address, group_address, blind_position=0, animation_speed_ms=1500): super(BlindWidget, self).__init__() - self.ui = Ui_Blind() - self.ui.setupUi(self) - self.logger = logging.getLogger() self.individual_address = individual_address self.group_address = group_address + self.ui = Ui_Blind() + self.ui.setupUi(self) + # Progressbar init self.is_moving = False self.animation_speed = animation_speed_ms diff --git a/actuasim/knxserver.py b/actuasim/knxserver.py index 4d634b93da0377957478e3c3156805a83120d25b..430ac4a3e1972a9b093a0f4b17e3e8460b150835 100644 --- a/actuasim/knxserver.py +++ b/actuasim/knxserver.py @@ -45,4 +45,4 @@ class Knxserver(QObject, threading.Thread): if __name__ == '__main__': serv = Knxserver() - serv.start() \ No newline at end of file + serv.start() diff --git a/actuasim/valve.py b/actuasim/valve.py index 7634b2aa52b5ce1baef82d398819701bd3cddf86..755bd6c16c4f4ab47d793c526f5fc421314cfcdd 100644 --- a/actuasim/valve.py +++ b/actuasim/valve.py @@ -25,14 +25,18 @@ class ValveWidget(QWidget): def __init__(self, individual_address, group_address, valve_position=45, animation_speed_ms=1500): super(ValveWidget, self).__init__() - self.ui = Ui_Valve() - self.ui.setupUi(self) self.logger = logging.getLogger() self.individual_address = individual_address self.group_address = group_address + self._position = 0 + + self.ui = Ui_Valve() + self.ui.setupUi(self) + + self.position = valve_position self.setFixedWidth(220)