From 796d950ec31d349d62d1f1bd4ac5e394d91332e4 Mon Sep 17 00:00:00 2001 From: Stefan Kinzel Date: Tue, 17 Jan 2017 23:28:21 +0100 Subject: [PATCH] Lustige neue Funktionen gemacht --- FlipdotSender.py | 20 +++++++++++++++++++- mqtt-to-flipdot.py | 7 ++++++- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/FlipdotSender.py b/FlipdotSender.py index 1abfc86..d66c5b2 100644 --- a/FlipdotSender.py +++ b/FlipdotSender.py @@ -4,6 +4,8 @@ import binascii import io import time import re +import numpy as np + class FlipdotSender(object): ''' @@ -62,7 +64,23 @@ class FlipdotSender(object): packet = self._array2packet(imgmap) self._sock.sendto(bytes(packet), (self._udphost, self._udpport)) - + + def send_bytes(self, img): + imgmap = [] + for pixel in img: + if pixel == "1": + imgmap.append(1) + else: + imgmap.append(0) + + if len(img) < 1280: + imgmap = np.hstack((imgmap, np.zeros(1280-len(img), dtype=int))) + + packet = self._array2packet(imgmap) + + self._sock.sendto(bytes(packet), (self._udphost, self._udpport)) + + def send_text(self, text): image = Image.new("RGBA", self._img_size, FlipdotSender.C_BLACK) draw = ImageDraw.Draw(image) diff --git a/mqtt-to-flipdot.py b/mqtt-to-flipdot.py index acfa8e5..aa0604a 100644 --- a/mqtt-to-flipdot.py +++ b/mqtt-to-flipdot.py @@ -8,6 +8,7 @@ def on_connect(client, userdata, flags, rc): print("Connected with result code " + str(rc)) client.subscribe("raum2/flipdot/text") client.subscribe("raum2/flipdot/scroll") + client.subscribe("raum2/flipdot/image") def on_message(client, userdata, msg): @@ -27,7 +28,11 @@ def on_message(client, userdata, msg): if msg.topic == "raum2/flipdot/text": payload = msg.payload.decode("utf-8") flipdot.send_text(payload) - + + if msg.topic == "raum2/flipdot/image": + payload = msg.payload.decode("utf-8") + print(payload) + flipdot.send_bytes(payload) flipdot = FlipdotSender("2001:67c:275c:a9::c", 2323)