I'm not sure whether anyone else is having this issue but my Core S3 keeps saying:
Traceback (most recent call last):
File "m5ui/port.py", line 40, in timer_cb
KeyboardInterrupt:
I have tried python code on UIFlow 2 and blocks in UIFlow 2 but neither seem to work. It seems that with no blocks in the loop the Core S3 works fine but with a loop block and something inside it then it just crashes with that error.
import os, sys, io
import M5
from M5 import *
import m5ui
import lvgl as lv
from unit import GPSV11Unit
TimeburnerxJB8_20px = None
TimeburnerBold_peGR_70px = None
page0 = None
image0 = None
timelabel = None
battlabel = None
label0 = None
label1 = None
label2 = None
image1 = None
label3 = None
label4 = None
gpssma_0 = None
date1 = None
spd = None
def setup():
global TimeburnerxJB8_20px, TimeburnerBold_peGR_70px, page0, image0, timelabel, battlabel, label0, label1, label2, image1, label3, label4, gpssma_0, date1, spd
M5.begin()
Widgets.setRotation(1)
m5ui.init()
TimeburnerxJB8_20px = lv.binfont_create("S:/flash/res/font/TimeburnerxJB8-20px.bin")
TimeburnerBold_peGR_70px = lv.binfont_create("S:/flash/res/font/TimeburnerBold-peGR-70px.bin")
page0 = m5ui.M5Page(bg_c=0x000000)
image0 = m5ui.M5Image("/flash/res/img/GPS.png", x=257, y=0, rotation=0, scale_x=0.6, scale_y=0.6, parent=page0)
timelabel = m5ui.M5Label("00:00", x=277, y=0, text_c=0xffffff, bg_c=0xffffff, bg_opa=0, font=lv.font_montserrat_14, parent=page0)
battlabel = m5ui.M5Label("100%", x=0, y=0, text_c=0xffffff, bg_c=0xffffff, bg_opa=0, font=lv.font_montserrat_14, parent=page0)
label0 = m5ui.M5Label("100", x=0, y=79, text_c=0xffffff, bg_c=0xffffff, bg_opa=0, font=TimeburnerBold_peGR_70px, parent=page0)
label1 = m5ui.M5Label("mph", x=110, y=120, text_c=0xffffff, bg_c=0xffffff, bg_opa=0, font=TimeburnerxJB8_20px, parent=page0)
label2 = m5ui.M5Label("10000m", x=72, y=159, text_c=0xffffff, bg_c=0xffffff, bg_opa=0, font=TimeburnerBold_peGR_70px, parent=page0)
image1 = m5ui.M5Image("/flash/res/img/satellite.png", x=235, y=2, rotation=0, scale_x=0.6, scale_y=0.6, parent=page0)
label3 = m5ui.M5Label("HDG:", x=140, y=45, text_c=0xffffff, bg_c=0xffffff, bg_opa=0, font=lv.font_montserrat_14, parent=page0)
label4 = m5ui.M5Label("360", x=188, y=40, text_c=0xffffff, bg_c=0xffffff, bg_opa=0, font=TimeburnerBold_peGR_70px, parent=page0)
gpssma_0 = GPSV11Unit(2, port=(18, 17))
page0.screen_load()
gpssma_0.set_work_mode(7)
gpssma_0.set_time_zone(0)
def loop():
global TimeburnerxJB8_20px, TimeburnerBold_peGR_70px, page0, image0, timelabel, battlabel, label0, label1, label2, image1, label3, label4, gpssma_0, date1, spd
M5.update()
date1 = []
date1 = gpssma_0.get_gps_time()
timelabel.set_text(str((str((date1[0])) + str(((str(':') + str((date1[1]))))))))
timelabel.align_to(page0, lv.ALIGN.TOP_RIGHT, 0, 0)
if (gpssma_0.get_satellite_num()) == 0:
image0.set_flag(lv.obj.FLAG.HIDDEN, False)
image1.set_flag(lv.obj.FLAG.HIDDEN, True)
else:
image1.set_flag(lv.obj.FLAG.HIDDEN, False)
image0.set_flag(lv.obj.FLAG.HIDDEN, True)
label2.set_text(str(gpssma_0.get_altitude()))
label2.align_to(page0, lv.ALIGN.BOTTOM_RIGHT, 0, 0)
spd = int(gpssma_0.get_speed_over_ground())
spd = spd * 1.151
label0.set_text(str(str(spd)))
label0.align_to(page0, lv.ALIGN.LEFT_MID, 0, 0)
battlabel.set_text(str((str((str((Power.getBatteryLevel())))) + str('%'))))
battlabel.align_to(page0, lv.ALIGN.TOP_LEFT, 0, 0)
label4.set_text(str(gpssma_0.get_corse_over_ground()))
if __name__ == '__main__':
try:
setup()
while True:
loop()
except (Exception, KeyboardInterrupt) as e:
try:
m5ui.deinit()
from utility import print_error_msg
print_error_msg(e)
except ImportError:
print("please update to latest firmware")
That was the code that hasn't worked.
Any help much appreciated,
RPi
