def on_ui_setup(self, ui): if ui.is_waveshare_v2(): h_pos = (180, 80) v_pos = (180, 61) elif ui.is_inky(): h_pos = (140, 68) v_pos = (165, 54) else: h_pos = (155, 76) v_pos = (180, 61) if self.options['orientation'] == "horizontal": ui.add_element( 'memtemp', LabeledValue(color=BLACK, label='', value='mem cpu temp\n - - -', position=h_pos, label_font=fonts.Small, text_font=fonts.Small)) elif self.options['orientation'] == "vertical": ui.add_element( 'memtemp', LabeledValue(color=BLACK, label='', value=' mem:-\n cpu:-\ntemp:-', position=v_pos, label_font=fonts.Small, text_font=fonts.Small))
def on_ui_setup(self, ui): if ui.is_waveshare_v2(): h_pos = (0, 95) v_pos = (180, 61) elif ui.is_waveshare_v1(): h_pos = (0, 95) v_pos = (170, 61) elif ui.is_waveshare144lcd(): h_pos = (0, 92) v_pos = (78, 67) elif ui.is_inky(): h_pos = (0, 83) v_pos = (165, 54) elif ui.is_waveshare27inch(): h_pos = (0, 153) v_pos = (216, 122) else: h_pos = (0, 91) v_pos = (180, 61) if self.options['orientation'] == "vertical": ui.add_element('display-password', LabeledValue(color=BLACK, label='', value='', position=v_pos, label_font=fonts.Bold, text_font=fonts.Small)) else: # default to horizontal ui.add_element('display-password', LabeledValue(color=BLACK, label='', value='', position=h_pos, label_font=fonts.Bold, text_font=fonts.Small))
def on_ui_setup(self, ui): # add coordinates for other displays if ui.is_waveshare_v2(): lat_pos = (127, 75) lon_pos = (122, 84) alt_pos = (127, 94) elif ui.is_inky(): # guessed values, add tested ones if you can lat_pos = (112, 30) lon_pos = (112, 49) alt_pos = (87, 63) elif ui.is_waveshare144lcd(): # guessed values, add tested ones if you can lat_pos = (67, 73) lon_pos = (62, 83) alt_pos = (67, 93) else: # guessed values, add tested ones if you can lat_pos = (127, 51) lon_pos = (127, 56) alt_pos = (102, 71) label_spacing = 0 ui.add_element( "latitude", LabeledValue( color=BLACK, label="lat:", value="-", position=lat_pos, label_font=fonts.Small, text_font=fonts.Small, label_spacing=label_spacing, ), ) ui.add_element( "longitude", LabeledValue( color=BLACK, label="long:", value="-", position=lon_pos, label_font=fonts.Small, text_font=fonts.Small, label_spacing=label_spacing, ), ) ui.add_element( "altitude", LabeledValue( color=BLACK, label="alt:", value="-", position=alt_pos, label_font=fonts.Small, text_font=fonts.Small, label_spacing=label_spacing, ), )
def on_ui_setup(self, ui): ui.add_element( "bat", LabeledValue( color=BLACK, label="BAT", value="0%", position=(ui.width() / 2 + 15, 0), label_font=fonts.Bold, text_font=fonts.Medium, ), ) # display charging status if self.is_new_model: ui.add_element( "chg", LabeledValue( color=BLACK, label="", value="", position=(ui.width() / 2 - 12, 0), label_font=fonts.Bold, text_font=fonts.Bold, ), )
def on_ui_setup(self, ui): memenable = False config_is_toml = True if os.path.exists( '/etc/pwnagotchi/config.toml') else False config_path = '/etc/pwnagotchi/config.toml' if config_is_toml else '/etc/pwnagotchi/config.yml' with open(config_path) as f: data = toml.load(f) if config_is_toml else yaml.load( f, Loader=yaml.FullLoader) if 'memtemp' in data["main"]["plugins"]: if 'enabled' in data["main"]["plugins"]["memtemp"]: if data["main"]["plugins"]["memtemp"]["enabled"]: memenable = True logging.info("Wardrive: memtemp is enabled") if ui.is_waveshare_v2(): pos = (130, 85) if memenable else (200, 85) pos2 = (70, 70) if memenable else (195, 70) ui.add_element( 'clock', LabeledValue(color=BLACK, label='', value='-/-/-\n-:--', position=pos, label_font=fonts.Small, text_font=fonts.Small)) ui.add_element( 'wardriver', LabeledValue(color=BLACK, label='', value='WARDRIV\'N', position=pos2, label_font=fonts.Small, text_font=fonts.Small))
def on_ui_setup(self, ui): try: # Configure line_spacing line_spacing = int(self.options['linespacing']) except Exception: # Set default value line_spacing = self.LINE_SPACING try: # Configure position pos = self.options['position'].split(',') pos = [int(x.strip()) for x in pos] except Exception: # Set position based on screen type if ui.is_waveshare_v2(): pos = (122, 70) else: pos = (122, 50) ui.add_element( 'gps_lat', LabeledValue( color=BLACK, label='lat:', value='-', position=(pos[0] + 5, pos[1]), label_font=fonts.Small, text_font=fonts.Small, label_spacing=self.LABEL_SPACING, ), ) ui.add_element( 'gps_long', LabeledValue( color=BLACK, label='long:', value='-', position=(pos[0], pos[1] + line_spacing), label_font=fonts.Small, text_font=fonts.Small, label_spacing=self.LABEL_SPACING, ), ) ui.add_element( 'gps_alt', LabeledValue( color=BLACK, label='alt:', value='-', position=(pos[0] + 5, pos[1] + (2 * line_spacing)), label_font=fonts.Small, text_font=fonts.Small, label_spacing=self.LABEL_SPACING, ), )
def on_ui_setup(self, ui): ui.add_element( 'Lv', LabeledValue(color=BLACK, label='Lv', value=0, position=(ui.width() / 2 - 125, 95), label_font=fonts.Bold, text_font=fonts.Medium)) ui.add_element( 'Exp', LabeledValue(color=BLACK, label='Exp', value=0, position=(ui.width() / 2 - 85, 95), label_font=fonts.Bold, text_font=fonts.Medium))
def on_ui_setup(ui): ui.add_element( 'memtemp', LabeledValue(color=BLACK, label='', value='\nT:- U:-\nF:- -', position=(ui.width() / 2 + 17, ui.height() / 2), label_font=fonts.Bold, text_font=fonts.Medium))
def on_ui_setup(self, ui): ui.add_element( 'pivoyager', LabeledValue(color=BLACK, label=' ', value=' ', position=(192, 84), label_font=fonts.Small, text_font=fonts.Small))
def on_ui_setup(self, ui): ui.add_element( 'pisugar', LabeledValue(color=BLACK, label='BAT', value='0%', position=(ui.width() / 2 + 10, 0), label_font=fonts.Bold, text_font=fonts.Medium))
def on_ui_setup(self, ui): ui.add_element( 'bluetooth', LabeledValue(color=BLACK, label='BT', value='-', position=(ui.width() / 2 - 15, 0), label_font=fonts.Bold, text_font=fonts.Medium))
def on_ui_setup(self, ui): # add custom UI elements ui.add_element( 'deauth', LabeledValue(color=BLACK, label='Deauths ', value=str(self.deauth_counter), position=(ui.width() / 2 + 50, ui.height() - 25), label_font=fonts.Bold, text_font=fonts.Medium)) ui.add_element( 'hand', LabeledValue(color=BLACK, label='Handshakes ', value=str(self.handshake_counter), position=(ui.width() / 2 + 50, ui.height() - 35), label_font=fonts.Bold, text_font=fonts.Medium))
def on_ui_setup(self, ui): # add custom UI elements ui.add_element( 'deauth', LabeledValue(color=BLACK, label='Deauths ', value=str(self.deauth_counter), position=(ui.width() / 2 - 125, 95), label_font=fonts.Medium, text_font=fonts.Small)) ui.add_element( 'hand', LabeledValue(color=BLACK, label='Handshakes ', value=str(self.handshake_counter), position=(ui.width() / 2 - 125, 85), label_font=fonts.Medium, text_font=fonts.Small))
def on_ui_setup(self, ui): ui.add_element( 'ups', LabeledValue(color=BLACK, label='UPS', value='0%/0V', position=(ui.width() / 2 + 15, 0), label_font=fonts.Bold, text_font=fonts.Medium))
def on_ui_setup(ui): if OPTIONS['orientation'] == "horizontal": ui.add_element( 'memtemp', LabeledValue(color=BLACK, label='', value='mem cpu temp\n - - -', position=(ui.width() / 2 + 30, ui.height() / 2 + 15), label_font=fonts.Small, text_font=fonts.Small)) elif OPTIONS['orientation'] == "vertical": ui.add_element( 'memtemp', LabeledValue(color=BLACK, label='', value=' mem:-\n cpu:-\ntemp:-', position=(ui.width() / 2 + 55, ui.height() / 2), label_font=fonts.Small, text_font=fonts.Small))
def on_ui_setup(self, ui): memenable = False if self.config['main']['plugins']['memtemp']['enabled'] is True: memenable = True logging.info("[clock] Memtemp is enabled.") if ui.is_waveshare_v2(): pos = (120, 80) if memenable else (200, 80) ui.add_element('clock', LabeledValue(color=BLACK, label='', value='-/-/-\n-:--', position=pos, label_font=fonts.Small, text_font=fonts.Small))
def on_ui_setup(self, ui): with ui._lock: ui.add_element( 'apfake', LabeledValue(color=BLACK, label='F', value='-', position=(ui.width() / 2 + 20, 0), label_font=fonts.Bold, text_font=fonts.Medium))
def on_ui_setup(self, ui): # add custom UI elements ui.add_element( 'clk', LabeledValue(color=BLACK, label='', value='-/--:--', position=(175, 110), label_font=fonts.Small, text_font=fonts.Small))
def on_ui_setup(self, ui): pos = (1, 76) ui.add_element( 'pn_status', LabeledValue(color=BLACK, label='', value='PN: Active', position=pos, label_font=fonts.Small, text_font=fonts.Small)) pos = (122, 94) ui.add_element( 'pn_count', LabeledValue(color=BLACK, label='', value='PN: Active', position=pos, label_font=fonts.Small, text_font=fonts.Small))
def on_ui_setup(self, ui): if ui.is_waveshare_v2(): h_pos = (170, 80) v_pos = (180, 61) elif ui.is_waveshare_v1(): h_pos = (170, 80) v_pos = (170, 61) elif ui.is_waveshare144lcd(): h_pos = (53, 77) v_pos = (78, 67) elif ui.is_inky(): h_pos = (130, 68) v_pos = (165, 54) elif ui.is_waveshare27inch(): h_pos = (192, 138) v_pos = (216, 122) else: h_pos = (145, 76) v_pos = (180, 61) if self.options['orientation'] == "vertical": ui.add_element( 'memtemp', LabeledValue(color=BLACK, label='', value=' mem:-\n cpu:-\ntemp:-', position=v_pos, label_font=fonts.Small, text_font=fonts.Small)) else: # default to horizontal ui.add_element( 'memtemp', LabeledValue(color=BLACK, label='', value='mem cpu temp\n - - -', position=h_pos, label_font=fonts.Small, text_font=fonts.Small))
def on_ui_update(ui): new_value = ' %d (%d)' % (UNREAD_MESSAGES, TOTAL_MESSAGES) if not ui.has_element('mailbox'): logging.debug("add mailbox") ui.add_element( 'mailbox', LabeledValue(color=BLACK, label='MSG', value=new_value, position=(100, 0), label_font=fonts.Bold, text_font=fonts.Medium)) ui.set('mailbox', new_value)
def on_ui_setup(self, ui): memenable = False with open('/etc/pwnagotchi/config.yml') as f: data = yaml.load(f, Loader=yaml.FullLoader) if 'memtemp' in data["main"]["plugins"]: if 'enabled' in data["main"]["plugins"]["memtemp"]: if data["main"]["plugins"]["memtemp"]["enabled"]: memenable = True logging.info("[christmas] memtemp is enabled") if ui.is_waveshare_v2(): pos = (130, 80) if memenable else (200, 80) ui.add_element('christmas', LabeledValue(color=BLACK, label='', value='christmas\n', position=pos, label_font=fonts.Small, text_font=fonts.Small))
def on_ui_setup(self, ui): emenable = False with open('/etc/pwnagotchi/config.toml', 'r') as f: config = f.read().splitlines() if "main.plugins.memtemp.enabled = true" in config: memenable = True logging.info( "Birth Day Counter Plugin: memtemp is enabled") if ui.is_waveshare_v2(): pos = (160, 95) if memenable else (160, 95) ui.add_element('birthday', LabeledValue(color=BLACK, label='', value='birthday\n', position=pos, label_font=fonts.Small, text_font=fonts.Small))
def on_ui_setup(self, ui): emenable = False with open('/etc/pwnagotchi/config.toml', 'r') as f: config = f.read().splitlines() if "main.plugins.memtemp.enabled = true" in config: memenable = True logging.info( "Pwnagotchi Clock Plugin: memtemp is enabled") if ui.is_waveshare_v2(): pos = (130, 80) if memenable else (200, 80) ui.add_element('clock', LabeledValue(color=BLACK, label='', value='-/-/-\n-:--', position=pos, label_font=fonts.Small, text_font=fonts.Small))
def on_ui_update(ui): new_value = ' %d (%d)' % (UNREAD_MESSAGES, TOTAL_MESSAGES) if not ui.has_element('mailbox') and UNREAD_MESSAGES > 0: if ui.is_inky(): pos = (80, 0) else: pos = (100, 0) ui.add_element( 'mailbox', LabeledValue(color=BLACK, label='MSG', value=new_value, position=pos, label_font=fonts.Bold, text_font=fonts.Medium)) ui.set('mailbox', new_value)
def on_ui_setup(self, ui): if ui.is_waveshare_v2(): h_pos = (180, 80) elif ui.is_waveshare_v1(): h_pos = (170, 80) elif ui.is_waveshare144lcd(): h_pos = (53, 77) elif ui.is_inky(): h_pos = (140, 68) elif ui.is_waveshare27inch(): h_pos = (192, 138) else: h_pos = (155, 76) ui.add_element( 'bitcoin', LabeledValue(color=BLACK, label='', value=' BTC/USD: \n $ ', position=h_pos, label_font=fonts.Small, text_font=fonts.Small))
def on_ui_setup(self, ui): try: # Configure field list self.fields = self.options['fields'].split(',') self.fields = [ x.strip() for x in self.fields if x.strip() in self.ALLOWED_FIELDS.keys() ] self.fields = self.fields[:3] # limit to the first 3 fields except Exception: # Set default value self.fields = self.DEFAULT_FIELDS try: # Configure line_spacing line_spacing = int(self.options['linespacing']) except Exception: # Set default value line_spacing = self.LINE_SPACING try: # Configure position pos = self.options['position'].split(',') pos = [int(x.strip()) for x in pos] if self.options['orientation'] == "vertical": v_pos = (pos[0], pos[1]) else: h_pos = (pos[0], pos[1]) except Exception: # Set default position based on screen type if ui.is_waveshare_v2(): h_pos = (115, 74) v_pos = (115, 64) elif ui.is_waveshare_v1(): h_pos = (170, 80) v_pos = (165, 61) elif ui.is_waveshare144lcd(): h_pos = (53, 77) v_pos = (73, 67) elif ui.is_inky(): h_pos = (140, 68) v_pos = (160, 54) elif ui.is_waveshare27inch(): h_pos = (192, 138) v_pos = (211, 122) else: h_pos = (155, 76) v_pos = (175, 61) if self.options['orientation'] == "vertical": # Dynamically create the required LabeledValue objects for idx, field in enumerate(self.fields): v_pos_x = v_pos[0] v_pos_y = v_pos[1] + ( (len(self.fields) - 3) * -1 * line_spacing) ui.add_element( f"memtemp_{field}", LabeledValue( color=BLACK, label=f"{self.pad_text(field)}:", value="-", position=(v_pos_x, v_pos_y + (idx * line_spacing)), label_font=fonts.Small, text_font=fonts.Small, label_spacing=self.LABEL_SPACING, )) else: # default to horizontal h_pos_x = h_pos[0] + ((len(self.fields) - 3) * -1 * 25) h_pos_y = h_pos[1] ui.add_element( 'memtemp_header', Text( color=BLACK, value=" ".join([self.pad_text(x) for x in self.fields]), position=(h_pos_x, h_pos_y), font=fonts.Small, )) ui.add_element( 'memtemp_data', Text( color=BLACK, value=" ".join([self.pad_text("-") for x in self.fields]), position=(h_pos_x, h_pos_y + line_spacing), font=fonts.Small, ))
def on_ui_setup(ui): ui.add_element('memtemp', LabeledValue(color=BLACK, label='SYS', value='tm:0 um:0 fm:0 0.0C', position=(0, ui.height()-28), label_font=fonts.Bold, text_font=fonts.Medium))
def on_ui_setup(self, ui): try: # Configure line_spacing line_spacing = int(self.options['linespacing']) except Exception: # Set default value line_spacing = self.LINE_SPACING try: # Configure position pos = self.options['position'].split(',') pos = [int(x.strip()) for x in pos] lat_pos = (pos[0] + 5, pos[1]) lon_pos = (pos[0], pos[1] + line_spacing) alt_pos = (pos[0] + 5, pos[1] + (2 * line_spacing)) except Exception: # Set default value based on display type if ui.is_waveshare_v2(): lat_pos = (127, 74) lon_pos = (122, 84) alt_pos = (127, 94) elif ui.is_waveshare_v1(): lat_pos = (130, 70) lon_pos = (125, 80) alt_pos = (130, 90) elif ui.is_inky(): lat_pos = (127, 60) lon_pos = (122, 70) alt_pos = (127, 80) elif ui.is_waveshare144lcd(): # guessed values, add tested ones if you can lat_pos = (67, 73) lon_pos = (62, 83) alt_pos = (67, 93) elif ui.is_dfrobot_v2(): lat_pos = (127, 74) lon_pos = (122, 84) alt_pos = (127, 94) elif ui.is_waveshare27inch(): lat_pos = (6, 120) lon_pos = (1, 135) alt_pos = (6, 150) else: # guessed values, add tested ones if you can lat_pos = (127, 51) lon_pos = (122, 61) alt_pos = (127, 71) ui.add_element( "latitude", LabeledValue( color=BLACK, label="lat:", value="-", position=lat_pos, label_font=fonts.Small, text_font=fonts.Small, label_spacing=self.LABEL_SPACING, ), ) ui.add_element( "longitude", LabeledValue( color=BLACK, label="long:", value="-", position=lon_pos, label_font=fonts.Small, text_font=fonts.Small, label_spacing=self.LABEL_SPACING, ), ) ui.add_element( "altitude", LabeledValue( color=BLACK, label="alt:", value="-", position=alt_pos, label_font=fonts.Small, text_font=fonts.Small, label_spacing=self.LABEL_SPACING, ), )
def on_ui_setup(self, ui): # add coordinates for other displays if ui.is_waveshare_v2(): lat_pos = (132, 67) lon_pos = (127, 77) alt_pos = (132, 87) elif ui.is_waveshare_v1(): lat_pos = (130, 70) lon_pos = (125, 80) alt_pos = (130, 90) elif ui.is_inky(): lat_pos = (127, 60) lon_pos = (127, 70) alt_pos = (127, 80) elif ui.is_waveshare144lcd(): # guessed values, add tested ones if you can lat_pos = (67, 73) lon_pos = (62, 83) alt_pos = (67, 93) elif ui.is_dfrobot_v2: lat_pos = (127, 75) lon_pos = (122, 84) alt_pos = (127, 94) elif ui.is_waveshare27inch(): lat_pos = (6, 120) lon_pos = (1, 135) alt_pos = (6, 150) else: # guessed values, add tested ones if you can lat_pos = (127, 51) lon_pos = (127, 56) alt_pos = (102, 71) label_spacing = 0 ui.add_element( "latitude", LabeledValue( color=BLACK, label="lat:", value="-", position=lat_pos, label_font=fonts.Small, text_font=fonts.Small, label_spacing=label_spacing, ), ) ui.add_element( "longitude", LabeledValue( color=BLACK, label="long:", value="-", position=lon_pos, label_font=fonts.Small, text_font=fonts.Small, label_spacing=label_spacing, ), ) ui.add_element( "altitude", LabeledValue( color=BLACK, label="alt:", value="-", position=alt_pos, label_font=fonts.Small, text_font=fonts.Small, label_spacing=label_spacing, ), )