Skip to content

Commit

Permalink
LilyGo 2.4 Inch Support'
Browse files Browse the repository at this point in the history
  • Loading branch information
jouellnyc committed Dec 26, 2022
1 parent c6b4a86 commit 39215fe
Show file tree
Hide file tree
Showing 7 changed files with 60 additions and 86 deletions.
6 changes: 2 additions & 4 deletions appsetup/microdot_runner.py
Original file line number Diff line number Diff line change
Expand Up @@ -152,14 +152,12 @@ def setup(req):
else:
return '<HTML><TITLE>Error</TITLE>' + result + '</HTML>', 200, {'Content-Type': 'text/html'}




@app.route('/reboot/', methods=['GET'])
def reboot(req):
machine.reset()


""" Start Microdot """
print("MicroDot Starting")
app.run(host='0.0.0.0', port=80)
app.run(host='0.0.0.0', port=80)

1 change: 1 addition & 0 deletions appsetup/setup_complete.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
s
13 changes: 13 additions & 0 deletions dadloop
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
###
time.sleep(10)
clear_fill()
display.draw_text(0, start + (0 * delta), f"What's Next?" , date_font, white , drk_grn)
display.draw_text(5, start + (1 * delta), f"Grandson" , score_font, white , drk_grn)
display.draw_text(5, start + (2 * delta), f"Pics!" , score_font, white , drk_grn)
time.sleep(10)
while True:
for x in ['/319.1.jpg.raw', '/319.IMG_1721.jpg.raw', '/319.IMG_1392.jpg.raw', '/319.IMG_2132.jpg.raw','/319.IMG_1358.jpg.raw']:
display.draw_image(x, 0, 0, 319, 239)
time.sleep(5)
###

Binary file added images/1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/qq.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
126 changes: 44 additions & 82 deletions mlbapp/mlb_app_runner_ili9341.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
import time

""" OLED SETUP """
from hardware.esp32_oled_2_8_inch import display, red, black, white, drk_grn
from hardware.esp32_oled_2_8_inch import score_font, date_font, sm_font, draw_outline_box, clear_fill
from hardware.screen_runner import display, red, black, white, drk_grn
from hardware.screen_runner import score_font, date_font, sm_font, draw_outline_box, clear_fill
from hardware.config import case
if case == "upright":
date_font=sm_font
Expand All @@ -18,82 +18,40 @@
from hardware.ntp_setup import utc_to_local
url='https://en.wikipedia.org/wiki/2023_Major_League_Baseball_season'
ua='Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36'

""" Helper Credits
https://forum.micropython.org/viewtopic.php?t=4179
https://stackoverflow.com/questions/3418050/how-to-map-month-name-to-month-number-and-vice-versa/33736132#33736132
"""

""" Version """
from .version import version

def month_string_to_number(dstring):
m = {
'jan': 1,
'feb': 2,
'mar': 3,
'apr':4,
'may':5,
'jun':6,
'jul':7,
'aug':8,
'sep':9,
'oct':10,
'nov':11,
'dec':12
}
s = dstring.strip()[:3].lower()

try:
out = m[s]
return out
except:
raise ValueError('Not a month')



def get_start_date(url, ua):
import re
import mrequests
t=mrequests.get(url, headers={"User-Agent" : ua})
_mtch= re.search("scheduled to begin on\s+([A-Z][a-z]+\s+[0-9]+)",t.text)
print(f"m1 {_mtch}")
if _mtch:
try:
start_date = _mtch.group(1)
except IndexError as e:
start_date = "??"
finally:
print(f"start_date {start_date}")
mstart, dstart = start_date.split()
return (mstart, int(dstart))

print(start_date)
return start_date

def say_fetching():
clear_fill()
draw_outline_box()
display.draw_text(5, 5,'Fetching Data',date_font, white, drk_grn)

def days_between(d1, d2):
import utime
d1 += (1, 0, 0, 0, 0) # ensure a time past midnight
d2 += (1, 0, 0, 0, 0)
return (utime.mktime(d1)// (24*3600)) - (utime.mktime(d2) // (24*3600))


def days_till_open():
def days_til_open():
say_fetching()
mstartn, dstarti = get_start_date(url, ua)
mstarti = month_string_to_number(mstartn)
if mstarti < mti:
ystarti = yri + 1
else:
ystarti = yri
days_until = days_between( (ystarti, mstarti, dstarti) , (yri, mti, dyi) )
start_date=get_start_date(url, ua)
clear_fill()
draw_outline_box()
display.draw_text(5, start + (0 * delta) ,f"{mt}-{dy}-{short_yr}" , date_font, white ,drk_grn)
display.draw_text(5, start + (1 * delta) + 5 ,f"Opening Day is" , date_font, white ,drk_grn)
display.draw_text(5, start + (2 * delta) + 5 ,f"{mstartn} {dstarti}, {ystarti}" , date_font, white ,drk_grn)
display.draw_text(5, start + (3 * delta) + 5 ,f"{days_until} days away!" , score_font, white ,drk_grn)
display.draw_text(5, start + (0 * delta) ,f"{mt}-{dy}-{short_yr}", date_font, white , drk_grn)
display.draw_text(5, start + (1 * delta) + 5 ,f"Opening" , score_font, white , drk_grn)
display.draw_text(5, start + (2 * delta) + 5 ,f"Day is" , score_font, white , drk_grn)
display.draw_text(5, start + (3 * delta) + 5 ,f"{start_date}" , score_font, white , drk_grn)

def get_x_p(pname):
""" Given 'John Smith (Jr.)' """
""" return 'J.Smith' """
Expand Down Expand Up @@ -221,45 +179,49 @@ def get_score():

while True:

factory_test = "True"
import gc
gc.collect()
print(f"Version: {version}")

#Strings
print(f"Version: {version}")
yr, mt, dy, hr, mn, s1, s2, s3 = [ f"{x:02d}" for x in time.localtime() ]
#Integers
yri, mti, dyi, hri, mni, s1i, s2i, s3i = [ int(x) for x in time.localtime() ]

short_yr = f"{int( str(yr)[2:]):02d}"
short_yri = int(str(yri)[2:])

gm_dt = f"{mt}/{dy}/{yr}"

print("Date: ",gm_dt)
params = {'teamId': team_id, 'startDate': gm_dt, 'endDate': gm_dt, 'sportId': '1', 'hydrate': 'decisions,linescore'}
print("Month is",mt)

if mti in [11,12,01,02,03]:
if int(mt) not in [09,10,11,12,01,02,03]:

days_till_open()
days_til_open()
time.sleep(60 * 60 * 24 ) # check back Tommorow

else:

try:
games = my_mlb_api.schedule(start_date=gm_dt, end_date=gm_dt, team=team_id, params=params)
except OSError as e:
#Catch this known weird, unrecoverable issue and reboot
#https://github.com/espressif/esp-idf/issues/2907
if 'MBEDTLS_ERR_SSL_CONN_EOF' in str(e):
import machine
machine.reset()
else:
if not games:
no_gm()
time.sleep(60 * 60 * 4) # check back 4 hours from now
if factory_test == "True":
from .games import games

for x in games:

try:
#from .games import games
#games = my_mlb_api.schedule(start_date=gm_dt, end_date=gm_dt, team=team_id, params=params)
games = [x]
except OSError as e:
#Catch this known weird, unrecoverable issue and reboot
#https://github.com/espressif/esp-idf/issues/2907
if 'MBEDTLS_ERR_SSL_CONN_EOF' in str(e):
import machine
machine.reset()
else:
print(games[0])
what_sleep=get_score()
print(f"Sleeping {what_sleep} seconds")
time.sleep(what_sleep)
if not games:
no_gm()
time.sleep(60 * 60 * 4) # check back 4 hours from now
else:
print(games[0])
what_sleep=get_score()
print(f"Sleeping {what_sleep} seconds")
time.sleep(what_sleep)



0 comments on commit 39215fe

Please sign in to comment.