def __init__(self, rail, config=None): lcd.clear() bl.off() Displayotron.rail = rail self.config = config if config['use_rbg']: bl.use_rbg()
def _idle(): while 1: if message_lock.locked() == False: lcd.clear() if terminal_enabled != True: backlight.value = (1, 0.125, 0.125) lcd.write(terminal_locked_message) lcd.set_cursor_position(0,2) lcd.write(unlock) else: backlight.on() lcd.write(terminal_message) lcd.set_cursor_position(0,2) lcd.write(chr(7)) if terminal_amount > 0: lcd.write(refill) else: lcd.write(amount) terminal_amount_string = locale.format('%.2f', abs(terminal_amount), True, True) lcd.set_cursor_position(lcd.COLS-len(terminal_amount_string)-1,2) lcd.write(terminal_amount_string) lcd.write(chr(7)) lcd.update_animations() time.sleep(1) else: time.sleep(0.25)
def on_print_progress(self, storage, path, progress): lcd.clear() start = path.rfind('/') end = path.rfind('.') # Just want the file name, no path or extension. # The rfind gets us the deepest directory so we can truncate that off the string # It also gets us the index of the file extension # The code below will substring any directories off the path, and remove the extention if (start == -1): start = 0 if (end == -1): end = path.len() - 1 lcd.write(path[start:end]) backlight.set_graph(progress / 100.0) backlight.rgb(0, 0, 255) backlight.update() lcd.set_cursor_position(0, 1) lcd.write('Completed: ' + str(progress) + '%') if progress == 1: self.start_date = time.time() if progress > 10 and progress < 100: now = time.time() elapsed = now - self.start_date average = elapsed / (progress - 1) remaining = int((100 - progress) * average) remaining = str(datetime.timedelta(seconds=remaining)) lcd.set_cursor_position(0, 2) lcd.write('ETC: ') lcd.write(remaining) if progress == 100: self.JobIsDone(lcd)
def signal_handler(signal, frame): global is_active is_active = False backlight.set_graph(0) lcd.clear() backlight.off() exit(0)
def showWelcomeMessage(): lcd.clear() lcd.set_cursor_position(0,0) lcd.write("Welcome!") lcd.set_cursor_position(0,1) lcd.write("FruityWiFi " + __FRUITYWIFI__) time.sleep(2)
def temperatures(): #-------------------------------- #TEMPERATURE AMBIANTE lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position(0,0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Temp Ambiante:") #Affichage du String entre guillemet lcd.set_cursor_position(0,1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write(str(climat_now)) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable #-------------------------------- time.sleep(5) #-------------------------------- #TEMPERATURE MIN & MAX lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position(0,0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Temp MIN/MAX:") #Affichage du String entre guillemet lcd.set_cursor_position(0,1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write(str(climat_min)) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable lcd.set_cursor_position(0,2) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write(str(climat_max)) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable
def redraw(self, menu): lcd.clear() lcd.set_cursor_position(3,1) lcd.write("Bye (^_^)/") for x in reversed(range(127)): backlight.rgb(0, x * 2, 0) lcd.clear() sys.exit(0)
def Vitesse_du_vent(): #Vitesse du Vent #-------------------------------- lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position(0,0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Vitesse Vent m/s") #Affichage du String entre guillemet lcd.set_cursor_position(0,1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write(str(vitesse_du_vent)) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable
def redraw(self, menu): lcd.clear() menu.write_option( row=0, text= "About FruityWifi | Site: http://www.fruitywifi.com | Twitter: @fruitywifi @xtr4nge", scroll=True) menu.write_option(row=1, text=self.fruityWifiVersion, scroll=True) menu.write_option(row=2, text=self.fruityFirmware, scroll=True)
def redraw(self, menu): print "Bye ;)" lcd.clear() lcd.set_cursor_position(4, 1) lcd.write("Bye Bye!") time.sleep(2) lcd.clear() backlight.rgb(0, 0, 0) sys.exit()
def Taux_de_Nuage(): #Taux de Nuages présent dans le ciel #-------------------------------- lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position(0,0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Taux Nuage") #Affichage du String entre guillemet lcd.set_cursor_position(0,1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write(str(couverture_de_nuage)) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable
def redraw(self, menu): print "Bye ;)" lcd.clear() lcd.set_cursor_position(4,1) lcd.write("Bye Bye!") time.sleep(2) lcd.clear() backlight.rgb(0,0,0) sys.exit()
def Taux_Humidite(): #Taux d'Humidité présent dans l'Environnement actuel #-------------------------------- lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position(0,0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Taux d'Humidite") #Affichage du String entre guillemet lcd.set_cursor_position(0,1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write(str(pourcentage_humidite)) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable
def handle_down(pin): global loopcount loopcount = 0 lcd.clear() backlight.rgb(255, 0, 0) lcd.write("Shutting Down!") time.sleep(1) os.system('systemctl poweroff') sys.exit() time.sleep(2)
def __init__(self): # Clear the screen and set the contrast lcd.clear() lcd.set_contrast(20) # Tested a bunch of contrasts 20 seems the best GPIO.setmode(GPIO.BCM) GPIO.setup(5, GPIO.OUT) GPIO.setup(6, GPIO.OUT) GPIO.setup(13, GPIO.OUT)
def show_follower_count(pin): try: followers = twitter.follower_count() msg = "You have %-6i followers" % followers except: msg = "Twitter API limit reached" backlight.sweep(random()) lcd.clear() lcd.write(msg)
def JobIsDone(self, localLcd): lcd.clear() backlight.rgb(255, 255, 255) localLcd.write('Job is Done!') for i in range(0, 100): backlight.set_graph((100 - i) / 100.0) time.sleep(0.05) backlight.update() lcd.clear() lcd.write('Ready for the next job')
def redraw(self, menu): lcd.clear() menu.write_option(row=0, text="About this App") menu.write_option( row=1, text= "Site: https://github.com/Floppynator/FruityDisplay_DisplayOTron3000", scroll=True) lcd.set_cursor_position(0, 2) lcd.write("Twitter: @HA1pe")
def Volumes(): #Volume de Neige (en m² ?) #-------------------------------- lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position(0,0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Volumes Neige/Pluie") #Affichage du String entre guillemet lcd.set_cursor_position(0,1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write(volume_de_neige) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable lcd.set_cursor_position(0,2) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write(str(volume_de_pluie)) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable
def condition_climatique(): #Status de la Météo Actuel #-------------------------------- lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position(0,0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Condition Meteo") #Affichage du String entre guillemet lcd.set_cursor_position(0,1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write("Actuel:") #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable lcd.set_cursor_position(0,2) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write(status_climat) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable
def printIt(self, message1="", message2="", message3=""): lcd.clear() message1 = self.validateMessage(message1) message2 = self.validateMessage(message2) message3 = self.validateMessage(message3) print "+".ljust(columns+1,"-")+"+" print "|"+message1+"|" print "|"+message2+"|" print "|"+message3+"|" print "+".ljust(columns+1,"-")+"+" lcd.write(message1) lcd.write(message2) lcd.write(message3)
def temps_systeme(): system_time = temps_actuel() #Affichage DOT3K lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position( 0, 0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Temps/Time:") #Affichage du String entre guillemet lcd.set_cursor_position( 0, 1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write(system_time)
def affichage_numero(): #-------------------------------- #NUMEROS D'URGENCES INTERNATIONAUX lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position( 0, 0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Numero Urgence:") #Affichage du String entre guillemet lcd.set_cursor_position( 0, 1) #Positionnement du Curseur à la colonne 0 et ligne 1 print(tel_urgence) lcd.write( str(tel_urgence) ) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable
def _message(code, credit_balance=None): message_lock.acquire() _message_output(code) lcd.clear() lcd.write(message_code[code]) if credit_balance is not None: lcd.set_cursor_position(0,2) lcd.write(" ") lcd.write(balance) credit_balance_string = locale.format('%.2f', credit_balance, monetary=True) lcd.set_cursor_position(lcd.COLS-len(credit_balance_string)-1,2) lcd.write(credit_balance_string) lcd.write(" ") time.sleep(2.5) message_lock.release()
def redraw(self): volume = subprocess.check_output("mpc status | grep volume", shell=True, stderr=subprocess.STDOUT) volume = volume[7:volume.find("%")] lcd.clear() lcd.set_cursor_position(0, 0) lcd.write(self.channelName[self.selectedStation]) lcd.set_cursor_position(0, 1) lcd.write(time.strftime("%d.%m. %H:%M:%S")) lcd.set_cursor_position(0, 2) lcd.write('Volume:' + volume + ' %') cpu = psutil.cpu_percent() backlight.set_graph(float(cpu) / 100.0)
def handle_press (pin): global camera_running lcd.clear() lcd.write("Stopping camera...") backlight.rgb(0, 0, 0) sleep(0.5) print "Stopping camera..." camera_running = False camera.terminate() camera.join() lcd.clear() lcd.write("Camera stopped...") sleep(0.5) print "Camera stopped..."
def loadingScreen(): lcd.clear() # set brigthness backlight.set_bar(0, 20) # write loading message to lcd lcd.set_cursor_position(3,1) lcd.write("Loading...") # fire up bargraph leds! Wohoo for i in range(100): backlight.set_graph(i / 70.0) time.sleep(0.005) # disable leds =( backlight.set_graph(0)
def queries_thread(): """Print pihole stats to the lcd""" lcd.clear() t = threading.currentThread() while getattr(t, "running", True): pihole = ph.PiHole("192.168.1.32") lcd.set_cursor_position(0, 0) lcd.write('{} queries'.format(pihole.queries)) lcd.set_cursor_position(0, 1) lcd.write('{}% blocked'.format(pihole.ads_percentage)) lcd.set_cursor_position(0, 2) lcd.write('{} total'.format(pihole.blocked)) time.sleep(5)
def display(): forecast = darksky.Forecast(api_key, latitude, longitude, units=units) current = forecast.currently temp = current.temperature temp = str(temp) humidity = current.humidity * 100 humidity = str(humidity) rain = current.precipProbability * 100 rain = str(rain) uvIndex = current.uvIndex uv = str(uvIndex) if uvIndex <= 2.9: backlight.rgb(90, 148, 35) # Green (low) elif (uvIndex >= 3) and (uvIndex <= 5.9): backlight.rgb(241, 227, 54) # Yellow (moderate) elif (uvIndex >= 6) and (uvIndex <= 7.9): backlight.rgb(217, 90, 18) # Orange (high) elif (uvIndex >= 8) and (uvIndex <= 10.9): backlight.rgb(185, 2, 34) # Red (very high) else: backlight.rgb(99, 74, 195) # Violet (extreme) try: lcd.clear() lcd.set_cursor_position(0, 0) print("Temperture: " + temp + " C") lcd.write("Temp: " + temp + "\xf2C") lcd.set_cursor_position(0, 1) print("Humidity: " + humidity + "%") lcd.write("Humidity: " + humidity + "%") lcd.set_cursor_position(0, 2) print("Rain: " + rain + "%") lcd.write("Rain: " + rain + "%") print("UV Index: " + uv + "") except: lcd.write("Connection Error") # Press the button on the joystick to exit @nav.on(nav.BUTTON) def handle_button(pin): lcd.clear() backlight.rgb(0, 0, 0) backlight.set_graph(0) os._exit(1)
def affichage_de_la_boussole_dot3k_2(): #-------------------------------- #BOUSSOLE 2/2 lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position( 0, 0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("BOUSSOLE 2/2") #Affichage du String entre guillemet lcd.set_cursor_position( 0, 1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write( str(round_retourne_longitude) ) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable lcd.set_cursor_position( 0, 2) #Positionnement du Curseur à la colonne 0 et ligne 2 lcd.write( dir_Longitude_Hemisphere ) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable
def neige_3h(): #Prochainement de la Neige ? #-------------------------------- lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position( 0, 0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Neige dans 3H?") #Affichage du String entre guillemet if will_snow == True: #Si il y a de la pluie alors... lcd.set_cursor_position(0, 1) lcd.write("Neige prevue") #On affirme cela par un message elif will_snow == False: #Sinon... lcd.set_cursor_position( 0, 1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write( "Aucune Neige prevue" ) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable
def switchMode(new_mode): global mode, backlight_timer, deploy_index lcd.clear() # Reset deploy_index if mode changes if new_mode != mode: deploy_index = -1 mode = new_mode # Turn off backlight & screen after 10 seconds # If user presses joystick while still in same mode it resets the timeout (keep screen on) screen_on = True if backlight_timer != None: backlight_timer.cancel() backlight_timer = Timer(15, screenOff) backlight_timer.start() # Up mode = showKubeCounts if mode == joystick.UP: backlight.hue(0.4) # Static information for this mode lcd.write(f"Nodes: / ") lcd.write(f"Pods: / ") lcd.write(f"Deploy: / ") showKubeCounts() # Left mode = showNodeMetrics if mode == joystick.LEFT: backlight.hue(0.1) printNodes() showNodeMetrics() # Down mode = showKubeDeploys if mode == joystick.DOWN: # Special case; allows scrolling through deployments by pushing down repeatedly deploy_index = deploy_index + 1 if deploy_index >= deploy_max: deploy_index = 0 backlight.hue(0.7) showKubeDeploys()
def display_tweet(lcd, tweet, scroll_speed): """Displays a tweet as a scrolling marquee with its author's name written underneath.""" # Remove '\n' characters because dot3k displays them wierdly! s = tweet.text.replace("\n", " ") # Append 16 spaces to the tweet for scrolling. This stops the # author's handle from spilling into the tweet. s += " " * 16 lcd.clear() for i in range(0, len(s) - 16): lcd.write(s[i:i + 16]) # 16 = Width of Dot3k display in chars. # Add the author's handle below the tweet lcd.write("@" + tweet.author.screen_name) time.sleep(scroll_speed) lcd.clear()
def determination_dot3k(): recup_affichage( ) #Demarrage du fichier python Recuperation_Determination.py global ville #Déclaration de la variable GLOBAL 'ville' ville = determine_less( ) #L'information dtermine par un autre fichier python est stocker dans la variable pour être utiliser apès #Using the 'lcd.write' way lcd.clear() #Nettoyage de la Zone Affichable lcd.set_cursor_position( 0, 0) #Positionnement du Curseur à la colonne 0 et ligne 0 lcd.write("Nous sommes ici:") #Affichage du String entre guillemet lcd.set_cursor_position( 0, 1) #Positionnement du Curseur à la colonne 0 et ligne 1 lcd.write( ville ) #Affichage de la valeur convertis de FLOAT à STRING via une valeur retourné qui a stocker dans une variable
def right(self): # fire cmd self.last_update = 1 cmd = self.config.get('commands', self.cmds[self.selected_cmd]) time.sleep(1) cmd = cmd.split(",") lcd.clear() lcd.set_cursor_position(0,0) lcd.write("Execute CMD") lcd.set_cursor_position(0,1) lcd.write(cmd[0]) time.sleep(1) # EXECUTE THIS COMMAND out = str(self.execCommand(cmd[1])) print(out) lcd.clear() lcd.set_cursor_position(6,1) lcd.write("Done.") time.sleep(1) lcd.clear() self.last_update = 0 return True
def right(self): # fire cmd self.last_update = 1 cmd = self.config.get('commands', self.cmds[self.selected_cmd]) time.sleep(1) cmd = cmd.split(",") lcd.clear() lcd.set_cursor_position(0, 0) lcd.write("Execute CMD") lcd.set_cursor_position(0, 1) lcd.write(cmd[0]) time.sleep(1) # EXECUTE THIS COMMAND out = str(self.execCommand(cmd[1])) print(out) lcd.clear() lcd.set_cursor_position(6, 1) lcd.write("Done.") time.sleep(1) lcd.clear() self.last_update = 0 return True
def init_animation(): hourglass = [ [0x1F,0x11,0x11,0x11,0x11,0x11,0x11,0x1F],[0x1F,0x1F,0x11,0x11,0x11,0x11,0x11,0x1F], [0x1F,0x1F,0x1F,0x11,0x11,0x11,0x11,0x1F],[0x1F,0x1F,0x1F,0x1F,0x11,0x11,0x11,0x1F], [0x1F,0x11,0x1F,0x1F,0x1F,0x11,0x11,0x1F],[0x1F,0x11,0x11,0x1F,0x1F,0x1F,0x11,0x1F], [0x1F,0x11,0x11,0x11,0x1F,0x1F,0x1F,0x1F],[0x1F,0x11,0x11,0x11,0x11,0x1F,0x1F,0x1F], [0x1F,0x11,0x11,0x11,0x11,0x11,0x1F,0x1F],[0x1F,0x11,0x11,0x11,0x11,0x11,0x11,0x1F] ] greetingtext = [ # "- - - - - - - - ", " Welcome ", " To ", " Yuki-Chan " ] dotc = 0 texti = 0 for x in range(127): backlight.rgb(x / 2, x * 2, x / 2) """ lcd.create_char(0, getAnimFrame(hourglass, 5)) lcd.clear() lcd.set_cursor_position(15,2) lcd.write(chr(0)) """ lcd.set_cursor_position(0,1) lcd.write(greetingtext[texti]) if dotc > 30: texti = (texti + 1) % len(greetingtext) dotc = 0 else: dotc += 1 lcd.set_cursor_position(6,2) for i in range(dotc / 10): lcd.write(".") lcd.clear()
def system_thread(): """Print system load, memory usage, and temperature to the lcd""" lcd.clear() t = threading.currentThread() while getattr(t, "running", True): pihole = ph.PiHole("192.168.1.32") one_minute, five_minute, fifteen_minute = [ x / psutil.cpu_count() * 100 for x in psutil.getloadavg() ] memory = psutil.virtual_memory() temp = psutil.sensors_temperatures(fahrenheit=True)['cpu-thermal'][0] lcd.set_cursor_position(0, 0) lcd.write('Load {}'.format(one_minute)) lcd.set_cursor_position(0, 1) lcd.write('Memory {}'.format(memory.percent)) lcd.set_cursor_position(0, 2) lcd.write('{} F'.format(temp.current)) time.sleep(5)
def display_message(message): lcd.clear() lcd.write(message)
def handle_button(pin): print("Button pressed!") l.clear() b.rgb(255,255,255) l.write("Ouch!")
def handle_right(pin): print("Right pressed!") l.clear() b.rgb(0,255,255) l.write("Rightie tighty!")
def doorbell(): GPIO.remove_event_detect(gpio_bell) # Ignore multiple clicks if debug: print("Start of Doorbell function\n") # If pushover is enabled, run as thread and continue if push_enabled: t_push = threading.Thread(target=pushover, args=()) t_push.start() # If taking pictures is enabled, run as thread and continue if pictures_enabled: t_snap = threading.Thread(target=snapper, args=()) t_snap.start() # Log the event in the databse if debug: print "Doorbell rang at "+ts() log("Someone was at your door.") if debug: print "Event logged" # ####### # # Phase 1 # Ringing. # ####### # # Clear LCD and adjust information lcd.clear() backlight.rgb(0,0,255) lcd.set_cursor_position(0,0) lcd.write(txt_security) lcd.set_cursor_position(0,1) lcd.write(txt_ring) lcd.set_cursor_position(0,2) lcd.write(txt_ring2) if debug: print("Text changed, entering wait_loop*2") wait_loop(200) if debug: print("Wait loop done") if debug: print("<< Next Phase >>\n") backlight.set_graph(0) # ####### # # Phase 2 # Trying to contact them. # ####### # # Clear LCD and adjust information lcd.clear() backlight.rgb(255,153,0) lcd.set_cursor_position(0,0) lcd.write(txt_wait1) lcd.set_cursor_position(0,1) lcd.write(txt_wait2) lcd.set_cursor_position(0,2) lcd.write(txt_wait3) if debug: print("Text changed, entering wait_loop*2") wait_loop(100) if debug: print("Wait loop done") if debug: print("<< Next Phase >>\n") backlight.set_graph(0) # ####### # # Phase 3 # No one is there. # ####### # # Clear LCD and adjust information lcd.clear() backlight.rgb(255,0,0) lcd.set_cursor_position(0,0) lcd.write(txt_away1) lcd.set_cursor_position(0,1) lcd.write(txt_away2) lcd.set_cursor_position(0,2) lcd.write(txt_away3) if debug: print("Text changed, entering wait_loop") wait_loop(80) if debug: print("<< Next Phase >>\n") backlight.set_graph(0) # ####### # # Phase 4 # Delivery to the neighbors. # ####### # # Clear LCD and adjust information lcd.clear() backlight.rgb(0,255,0) lcd.set_cursor_position(0,0) lcd.write(txt_package1) lcd.set_cursor_position(0,1) lcd.write(txt_package2) lcd.set_cursor_position(0,2) lcd.write(txt_package3) if debug: print("Text changed, entering sleep") wait_loop(150) if debug: print("Wait loop done") if debug: print("<< End of last Phase >>\n") backlight.set_graph(0) lcd.clear() if debug: print("End of Doorbell function\n") GPIO.add_event_detect(gpio_bell,GPIO.FALLING)
def handle_left(pin): print("Left pressed!") l.clear() b.rgb(0,0,255) l.write("Leftie left left!")
def handle_down(pin): print("Down pressed!") l.clear() b.rgb(0,255,0) l.write("Down down doobie down!")
def handle_up(pin): print("Up pressed!") l.clear() b.rgb(255,0,0) l.write("Up up and away!")
def signal_handler(signal, frame): lcd.clear() backlight.off() sys.exit(0)
def redraw(self, menu): lcd.clear() menu.write_option(row=0, text="About FruityWifi | Site: http://www.fruitywifi.com | Twitter: @fruitywifi @xtr4nge", scroll=True) menu.write_option(row=1, text=self.fruityWifiVersion, scroll=True) menu.write_option(row=2, text=self.fruityFirmware, scroll=True)
def __init__(self): lcd.clear() self.content = ""
rev_count_pin = 26 #BOARD 37 GPIO_TRIGGER = 5 #BOARD 29 GPIO_ECHO = 6 #BOARD 31 # Set pins as output and input for Ultrasonic Sensor & Reed Switch GPIO.setmode(GPIO.BCM) GPIO.setup(rev_count_power_pin, GPIO.OUT)#Reed Switch Power GPIO.setup(rev_count_pin, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)#Reed Switch On/Off check GPIO.setup(GPIO_TRIGGER,GPIO.OUT)#US sensor GPIO.setup(GPIO_ECHO,GPIO.IN, pull_up_down=GPIO.PUD_DOWN)#US sensor GPIO.output(rev_count_power_pin, GPIO.HIGH)#Turn on Power for reed switch GPIO.output(GPIO_TRIGGER, False) #============================================start HC-SR04==========================================================================# time.sleep(0.5) l.clear() # Send 10us pulse to trigger GPIO.output(GPIO_TRIGGER, True) time.sleep(0.00001) GPIO.output(GPIO_TRIGGER, False) start = time.time() #==========================================define MPLAYER functions=================================================================# def load_one_song(songs_music_dir="//home//pi//music//"): mp = mpylayer.MPlayerControl() music_dir = songs_music_dir music_list = os.listdir(music_dir) mp.loadfile(music_dir[random.randint(0, (len(music_dir)-1)]) def load_mp(): mp = mpylayer.MPlayerControl() music_dir = "//home//pi//music//" musix = os.listdir(music_dir)
def clearScreen(self): lcd.clear()
def clean_shutdown(): backlight.set_graph(0) backlight.rgb(0, 0, 0) lcd.clear()
def redraw(self, menu): lcd.clear() menu.write_option(row=0, text="About this App") menu.write_option(row=1, text="Site: https://github.com/Floppynator/FruityDisplay_DisplayOTron3000", scroll=True) lcd.set_cursor_position(0,2) lcd.write("Twitter: @HA1pe")
def off(self): os.system('mpc stop') backlight.set_graph(0) backlight.rgb(0, 0, 0) lcd.clear()
#!/usr/bin/env python import dot3k.lcd as lcd import dot3k.backlight as backlight import time # Clear the LCD and display Hello World lcd.clear() lcd.write("Hello World") # Turn off the backlight backlight.rgb(0,0,0) """ set_graph accepts a float between 0.0 and 1.0 and lights up the LEDs accordingly """ for i in range(100): backlight.set_graph(i/100.0) time.sleep(0.05) """ set_bar will set a specific bargraph LED to a brightness between 0 and 255 """ for i in range(256): backlight.set_bar(0,[255-i]*9) time.sleep(0.01) backlight.set_graph(0)
def shutdown_animation(): lcd.set_cursor_position(3,1) lcd.write("Bye (^_^)/") for x in reversed(range(127)): backlight.rgb(x, x * 2, x) lcd.clear()