diff --git a/examples/solar-monitoring.py b/examples/solar-monitoring.py index 1543d4d..76a5561 100644 --- a/examples/solar-monitoring.py +++ b/examples/solar-monitoring.py @@ -72,49 +72,53 @@ def run(): car_soc = subscribe(client, topic_car_soc) charge_point_power = subscribe(client, topic_charge_point_power) -try: - logging.info("epd2in13b_V3 Demo") - - epd = epd2in13b_V3.EPD() - #logging.info("init and Clear") - #epd.init() - #epd.Clear() - - # Drawing on the image - logging.info("Drawing") - font16 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 16) - font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) - - # Drawing on the Horizontal image - logging.info("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - HRYimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((2, 0), 'PV Production', font = font16, fill = 0) - drawblack.text((2, 16), 'Hausverbrauch', font = font16, fill = 0) - drawblack.text((2, 32), 'Strom Import', font = font16, fill = 0) - drawblack.text((2, 48), 'Batterie', font = font16, fill = 0) - drawblack.text((2, 64), 'Batterie Entladen', font = font16, fill = 0) - drawblack.text((2, 80), 'Auto Laden', font = font16, fill = 0) + monitor(charge_point_power) - drawblack.text((100, 80), str(charge_point_power), font = font16, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - #logging.info("Clear...") - #epd.init() - #epd.Clear() - - logging.info("Goto Sleep...") - epd.sleep() +def monitor(charge_point_power) + try: + logging.info("epd2in13b_V3 Demo") + + epd = epd2in13b_V3.EPD() + #logging.info("init and Clear") + #epd.init() + #epd.Clear() + + # Drawing on the image + logging.info("Drawing") + font16 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 16) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) + + # Drawing on the Horizontal image + logging.info("1.Drawing on the Horizontal image...") + HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 + HRYimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 ryimage: red or yellow image + drawblack = ImageDraw.Draw(HBlackimage) + drawry = ImageDraw.Draw(HRYimage) + drawblack.text((2, 0), 'PV Production', font = font16, fill = 0) + drawblack.text((2, 16), 'Hausverbrauch', font = font16, fill = 0) + drawblack.text((2, 32), 'Strom Import', font = font16, fill = 0) + drawblack.text((2, 48), 'Batterie', font = font16, fill = 0) + drawblack.text((2, 64), 'Batterie Entladen', font = font16, fill = 0) + drawblack.text((2, 80), 'Auto Laden', font = font16, fill = 0) -except IOError as e: - logging.info(e) + drawblack.text((100, 80), str(charge_point_power), font = font16, fill = 0) + epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) -except KeyboardInterrupt: - logging.info("ctrl + c:") - epd2in13b_V3.epdconfig.module_exit() - exit() + #logging.info("Clear...") + #epd.init() + #epd.Clear() + + logging.info("Goto Sleep...") + epd.sleep() + + except IOError as e: + logging.info(e) + + except KeyboardInterrupt: + logging.info("ctrl + c:") + epd2in13b_V3.epdconfig.module_exit() + exit() #client.loop_forever()