示例#1
0
def load_entries(limit, offset):
    debug("Waiting for wifi...")

    # Wait for WiFi connection
    while not wifi.sta_if.isconnected():
        sleep(0.1)
        pass

    debug("Got wifi. Loading data.")

    data = None
    try:
        url = "http://83.137.144.16/api/oneliner"
        r = requests.get(url,
                         headers={"Host": "defeest.nl"},
                         host_override="defeest.nl")
        data = r.text
        r.close()
    except Exception as e:
        set_message("Unexpected error: " + str(e))
        sleep(10)
        deepsleep.reboot()
    try:
        entries = []
        for entry in data.split('\n'):
            if entry == "":
                continue
            #extension = entry.split(',')[0]
            name = (entry.split(',')[0]).replace('"', '')
            entries.append((extension, name))
        debug("Loaded " + str(len(entries)) + " entries")
        return entries
    except Exception as e:
        set_message("Parsing error: " + str(e))
        sleep(10)
示例#2
0
def start_app(app, display=True):
    if display:
        ugfx.clear(ugfx.WHITE)
        ugfx.string(0, 0, "Loading...", "PermanentMarker22", ugfx.BLACK)
        if app:
            ugfx.string(0, 25, "Starting " + app + "...", "Roboto_Regular12",
                        ugfx.BLACK)
        else:
            ugfx.string(0, 25, "Returning to homescreen...",
                        "Roboto_Regular12", ugfx.BLACK)
        ugfx.flush(ugfx.LUT_FASTER)
    esp.rtcmem_write_string(app)
    deepsleep.reboot()
示例#3
0
def vendmate(pressed):
  if pressed:
    try:
      led_array = bytes([255, 0, 0, 100, 255, 0, 0, 100, 255, 0, 0, 100, 255, 0, 0, 100, 255, 0, 0, 100, 255, 0, 0, 100])
      badge.leds_enable()
      badge.leds_send_data(led_array,24)
      time.sleep(1)
      badge.leds_disable()
      badge.vibrator_activate(0xFF)
      set_message("U WOT MATE?!?!")
      url = "https://vendingmachineurl.url/api"
      h = {"Authorization":"Basic <base64 login string>"}
      data = requests.get(url, headers=h)
      data.close()
      set_message("Look at the vending machine")
    except Exception as e:
      set_message("Unexpected error: "+str(e))
      deepsleep.reboot()
示例#4
0
def start_app(app, display = True):
	if display:
		easydraw.msg(app, "Loading...", True)
		term.header(True, "Loading application "+app+"...")
	esp.rtcmem_write_string(app)
	deepsleep.reboot()
示例#5
0
def start_ota():
	term.header(True, "Starting OTA...")
	esp.rtcmem_write(0,1)
	esp.rtcmem_write(1,254)
	deepsleep.reboot()
示例#6
0
def start_bpp(duration):
    print("[BPP] Duration = " + str(duration))
    esp.rtcmem_write(0, 2)
    esp.rtcmem_write(1, 253)
    deepsleep.reboot()
示例#7
0
def start_ota():
    esp.rtcmem_write(0, 1)
    esp.rtcmem_write(1, 254)
    deepsleep.reboot()
示例#8
0
    if down_state and not pressed and offset > 1:
        offset -= 1
        draw(load_entries(limit, offset))
    down_state = pressed


def set_debug(pressed):
    if not pressed:
        if debug_enabled:
            set_message("Debug disabled")
            badge.nvs_set_str("oneliner", "debug", "False")
        else:
            set_message("Debug enabled")
            badge.nvs_set_str("oneliner", "debug", "True")


try:
    draw(load_entries(limit, offset))
except Exception as e:
    set_message("Error: " + str(e))
    sleep(10)
    deepsleep.reboot()

ugfx.input_attach(ugfx.JOY_UP, up_pressed)
ugfx.input_attach(ugfx.JOY_DOWN, down_pressed)
ugfx.input_attach(ugfx.BTN_SELECT, lambda pressed: deepsleep.reboot())
ugfx.input_attach(ugfx.BTN_START, set_debug)

while True:
    sleep(0.1)
示例#9
0
def reboot(wut):
    if wut:
        deepsleep.reboot()
示例#10
0
 def exit(self, press):
     if press:
         deepsleep.reboot()
示例#11
0
def reboot(wut):
    deepsleep.reboot()
示例#12
0
def home(pressed):
  if pressed:
    deepsleep.reboot()
示例#13
0
sta_if.connect("SHA2017-insecure")

# while not sta_if.isconnected():
# print("Not connected, waiting...")
# sleep(0.2)

#####

import io
import urequests as requests

r = requests.get(
    'https://raw.githubusercontent.com/the-louie/sha2017-badge-pager/master/__init__.py'
)

f = io.open('/lib/louie-test/__init__.py', 'w')
f.write(r.text)
f.close()

##########

import appglue

appglue.start_app("louie-test")

######

import deepsleep

deepsleep.reboot()