| 
									
										
										
										
											2020-06-18 16:21:53 +02:00
										 |  |  | #!/usr/bin/python3 | 
					
						
							|  |  |  | # -*- coding: utf-8 -*- | 
					
						
							|  |  |  | """
 | 
					
						
							|  |  |  | 9.7" driver class | 
					
						
							|  |  |  | Copyright by aceisace | 
					
						
							|  |  |  | """
 | 
					
						
							|  |  |  | from inkycal.custom import images, top_level | 
					
						
							| 
									
										
										
										
											2020-12-07 11:36:01 +01:00
										 |  |  | from os.path import exists | 
					
						
							| 
									
										
										
										
											2020-06-18 16:21:53 +02:00
										 |  |  | 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""" | 
					
						
							| 
									
										
										
										
											2020-12-07 11:36:01 +01:00
										 |  |  |     # Check if zipped folders are present, if yes, assume | 
					
						
							|  |  |  |     # drivers have not been installed yet | 
					
						
							| 
									
										
										
										
											2020-06-18 16:21:53 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-12-07 11:36:01 +01:00
										 |  |  |     if exists(f'{driver_dir}IT8951.zip'): | 
					
						
							|  |  |  |       print('Additional steps are required to install drivers for 9.7" E-Paper. ' | 
					
						
							|  |  |  |             'Please run the following command in Terminal, then retry:\n' | 
					
						
							|  |  |  |             f'bash {driver_dir}install.sh') | 
					
						
							| 
									
										
										
										
											2020-06-18 16:21:53 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |   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""" | 
					
						
							| 
									
										
										
										
											2020-12-05 00:23:09 +01:00
										 |  |  |     image = image.rotate(90, expand=True) | 
					
						
							| 
									
										
										
										
											2020-06-18 16:21:53 +02:00
										 |  |  |     image.convert('RGB').save(images+'canvas.bmp', 'BMP') | 
					
						
							|  |  |  |     command = 'sudo {}IT8951/IT8951 0 0 {}'.format(driver_dir, images+'canvas.bmp') | 
					
						
							| 
									
										
										
										
											2020-12-05 00:23:09 +01:00
										 |  |  |     #print(command) | 
					
						
							| 
									
										
										
										
											2020-06-18 16:21:53 +02:00
										 |  |  |     return command | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   def sleep(self): | 
					
						
							|  |  |  |     pass | 
					
						
							|  |  |  | 
 |