#!/usr/bin/python3 # -*- coding: utf-8 -*- """ 9.7" driver class Copyright by aceisace """ from inkycal.custom import images, top_level from subprocess import call, run from os import chdir from PIL import Image # Display resolution EPD_WIDTH = 1200 EPD_HEIGHT = 825 driver_dir = top_level+'/inkycal/display/drivers/9_in_7_drivers/' class EPD: def __init__(self): """9.7" epaper class""" with open(driver_dir+'setup_state.txt', 'r') as file: setup_state = int(file.readline().rstrip()) if setup_state == 0: print('installing additional drivers...') self.setup() def init(self): pass def display(self, command): """displays an image""" try: run_command = command.split() run(run_command) except: print("oops, something didn't work right :/") def getbuffer(self, image): """ad-hoc""" image.convert('RGB').save(images+'canvas.bmp', 'BMP') command = 'sudo {}IT8951/IT8951 0 0 {}'.format(driver_dir, images+'canvas.bmp') print(command) return command def setup(self): """Runs the required setup for 9.7" epaper displays""" run(["chmod", "+x", driver_dir+"install.sh"]) call(driver_dir+"install.sh") with open(driver_dir+'setup_state.txt', 'w') as file: file.write('1') def sleep(self): pass