58 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| #!/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
 | |
| 
 |