修改闹钟列表
authord15521469561 <d155214695615@qq.com>
Wed, 17 May 2023 10:11:03 +0000 (18:11 +0800)
committerd15521469561 <d155214695615@qq.com>
Wed, 17 May 2023 10:11:03 +0000 (18:11 +0800)
定时开关机未完善

2.sdk/Helios_SDK/services/microPython/ports/quectel/core/source/modvoicecall.c
2.sdk/images/customer_fs.bin
2.sdk/project/K5/sdk/services/microPython/ports/quectel/core/alarm.py
2.sdk/project/K5/sdk/services/microPython/ports/quectel/core/main.py
2.sdk/project/K5/sdk/services/microPython/ports/quectel/core/mgr.py
2.sdk/project/K5/sdk/services/microPython/ports/quectel/core/protocol.py
2.sdk/project/K5/sdk/services/microPython/ports/quectel/core/ui.py
2.sdk/project/K5/sdk/services/microPython/ports/quectel/core/ui_setting.py
2.sdk/project/K5/sdk/system/platform/ASR_1606/boards/EG810MCN_GA_ALIPAY/images/firmware_base_release_pack.zip
2.sdk/project/K5/usr/main.py

index a7cb2a5..713e489 100644 (file)
@@ -368,6 +368,7 @@ STATIC mp_obj_t qpy_voicecall_start_dtmf(mp_obj_t mp_obj_dtmf, mp_obj_t mp_obj_d
 {
     int ret = 0;
     char *dtmf = (char *)mp_obj_str_get_str(mp_obj_dtmf);
+    QPY_MODVOICECALL_LOG("dtmf:%s\n",dtmf);
     int duration = mp_obj_get_int(mp_obj_duration);
 
     if (duration > 1000 || duration < 100)
index 17c5937..ed7d3a8 100644 (file)
Binary files a/2.sdk/images/customer_fs.bin and b/2.sdk/images/customer_fs.bin differ
index d3f2b56..dfe1c8d 100644 (file)
@@ -9,6 +9,7 @@ from common import Abstract, LogAdapter
 from machine import RTC
 import ujson
 import ql_fs
+from misc import Power
 import audio
 from ui import style_img,style_screen,style_font_youyuan_20
 import ntptime
@@ -399,12 +400,32 @@ class ClockManager(Abstract):
         self.days = 0
         self.idx = 0
 
+        IFEXIST = ql_fs.path_exists("/ext/static/storage_file/alarm_msg.json") 
+        self.check_alarm_list=[]     
+        if IFEXIST == False:
+            with open("/ext/static/storage_file/alarm_msg.json","w",encoding='utf-8') as fd:
+                ujson.dump( self.check_alarm_list,fd)
+                print("闹钟信息加载完成")
+        else:
+            with open("/ext/static/storage_file/alarm_msg.json","r",encoding='utf-8') as fd:
+                 self.check_alarm_list = ujson.load(fd)
+
     def post_processor_after_instantiation(self):
         EventMesh.subscribe("push_clock_info", self.set)
         EventMesh.subscribe("read_alarminjson", self.read_alarminjson)
         EventMesh.subscribe("add_alarm", self.add_alarm)
         EventMesh.subscribe("remove_alarm", self.remove_alarm)
         EventMesh.subscribe("set_rtc_alarm", self.set_rtc_alarm)
+        EventMesh.subscribe("get_alarm_indx", self.get_alarm_indx)
+        EventMesh.subscribe("get_check_alarm_list", self.get_check_alarm_list)
+        EventMesh.subscribe("set_check_alarm_list", self.set_check_alarm_list)
+
+    def set_check_alarm_list(self, event, msg):
+        self.check_alarm_list = msg
+        print("self.check_alarm_list = {}".format(self.check_alarm_list))
+
+    def get_check_alarm_list(self, event, msg):
+        return self.check_alarm_list
 
     def set(self, event, msg):
         global alarm_list
@@ -429,14 +450,68 @@ class ClockManager(Abstract):
         else:
             with open("/ext/static/storage_file/alarm_msg.json","r",encoding='utf-8') as fd:
                 alarm_list = ujson.load(fd)
-
+    
     def add_alarm(self, event, msg):
-        global alarm_list      
+        global alarm_list
         idx = len(alarm_list)
-        print("add_here-----idx:",idx)
-        alarm_list.append({"idx": idx, "hour": 0, "minute": 0, "days": [], "enabled": False,"repeart":1})
-        with open("/ext/static/storage_file/alarm_msg.json", 'w+',encoding='utf-8') as fd:
-            ujson.dump(alarm_list,fd)
+        set_index1 = 0
+        set_index2 = 0
+        count = 0
+        for i in range(0,2):
+            get_index = EventMesh.publish("get_boot_off_index")#设置关机时间
+            print("get_index{}".format(get_index))
+            if idx == 0:#
+                if get_index[0] == 0 and i == 0:#记录开关机的index
+                    count = i+1
+                    set_index1 = i+1
+                elif get_index[0] != 1 and i == 0:
+                    count = int(get_index[0])
+                    set_index1 = count
+
+                if get_index[1] == 0 and i == 1:
+                    count = i+1
+                    set_index2 = count
+                elif get_index[1] != 0 and i == 1:
+                    count = int(get_index[1])
+                    set_index2 = count
+            else:
+                if get_index[0] == 0 and i == 0:
+                    count = idx+1
+                    set_index1 = idx+1
+                elif get_index[0] != 0 and i == 0:
+                    count= int(get_index[0])
+                    set_index1 = count
+
+                if get_index[1] == 0 and i == 1:
+                    count = idx+2
+                    set_index2 = idx+2
+
+                elif get_index[1] != 0 and i == 1:
+                    count= int(get_index[1])
+                    set_index2 = count
+
+            print("idx {} set_index1:{} set_index2:{} count:{}".format(idx,set_index1,set_index2,count))
+            EventMesh.publish("set_boot_off_index",[set_index1,set_index2])#设置关机时间
+
+#00获取所有闹钟信息:
+# {'minute': 13, 'repeart': 2, 'idx': 0, 'enabled': 1, 'days': [1, 2, 3, 4, 5, 6, 0], 'hour': 11},
+# {'minute': 0, 'repeart': 2, 'idx': 1, 'enabled': 0, 'days': [1, 2, 3, 4, 5, 6, 0], 'hour': 17}, 
+# {'minute': 0, 'repeart': 1, 'idx': 2, 'enabled': 0, 'days': [], 'hour': 18}, 
+# {'hour': 8, 'repeart': 10, 'idx': 2, 'enabled': 1, 'days': [0, 1, 2, 3, 4, 5, 6], 'minute': 28}, 
+# {'hour': 17, 'repeart': 10, 'idx': 3, 'enabled': 1, 'days': [0, 1, 2, 3, 4, 5, 6], 'minute': 11}]
+
+            print("i {}".format(i))
+            off_msg1 = msg[i+1]
+            msg_tmp1 = off_msg1.split(':')
+            start_hour = int(msg_tmp1[0])
+            start_min = int(msg_tmp1[1])
+            enable = int(msg[0])
+            print("add_here-----idx:{} msg:{}",idx,msg)
+            alarm_list.append({"idx": count-1, "hour": start_hour, "minute": start_min, "days": [0,1,2,3,4,5,6], "enabled": enable,"repeart":10})
+            with open("/ext/static/storage_file/alarm_msg.json", 'w+',encoding='utf-8') as fd:
+                ujson.dump(alarm_list,fd)
+            print("alarm_list----- :{}",alarm_list)
+        EventMesh.publish("set_check_alarm_list",alarm_list)
 
     def remove_alarm(self, event, msg):
         global alarm_list
@@ -460,6 +535,9 @@ class ClockManager(Abstract):
         with open("/ext/static/storage_file/alarm_msg.json", 'w+',encoding='utf-8') as fd:
             ujson.dump(alarm_list,fd)
 
+    def get_alarm_indx(self,event,msg):
+        return self.idx
+
     def _rtc_callback(self,args):
         print("---!!!!!!alarm_ring!!!!!!!---,idx:",args)
         global alarm_list
@@ -467,7 +545,7 @@ class ClockManager(Abstract):
         idx = self.idx
         print("单次闹钟关闭:",idx)
         #判断是否是单次闹钟,如果是,则将开关状态设置为关闭
-        print("关闭1:",alarm_list [idx]["days"])
+        print("关闭1:",alarm_list[idx]["days"])
         if not alarm_list [idx]["days"] :
                 print("关闭2:",alarm_list [idx]["days"])
                 alarm_list[idx]["enabled"] = False
@@ -475,7 +553,22 @@ class ClockManager(Abstract):
                     ujson.dump(alarm_list,fd)
 
         #设置下一个闹钟
+        msg_tmp = EventMesh.publish("get_boot_off_time")
+
+        off_tmp2  = msg_tmp[2]
+        msg_tmp2 = off_tmp2.split(':')
+        end_min = int(msg_tmp2[0])*60+int(msg_tmp2[1])
+
+        rtc_now_time = self.rtc.datetime()
+        current = rtc_now_time[4]*60+rtc_now_time[5]
         EventMesh.publish("set_rtc_alarm")
+        print("end_min:{} current:{} off_tmp2:{}".format(end_min,current,off_tmp2))
+        if end_min == current:#结束的时间分钟等于关机时间分钟数则关机
+            
+            EventMesh.publish("load_screen", {"screen": "poweroff_comfirm"})
+            return
+
+        
         get_hr_state = EventMesh.publish("get_hr_state")
         get_spo2_state = EventMesh.publish("get_spo2_state")
         if get_hr_state != None or get_spo2_state != None:
@@ -716,16 +809,22 @@ class ClkListScreen(Screen):
                 self.alarm_show_list.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
                 #print("菜单的孩子个数:",clk_list_screen1.get_child_cnt())
                 num = 0
+                count = 0
                 for i ,each in enumerate(self.clock_list):
-                    
+                    if count >= 3:
+                        break
+                    num = each["idx"]
+                    repeart = each["repeart"]
+                    if repeart == 10:
+                        continue
                     _btn = lv.btn(self.alarm_show_list)
                     _btn.set_size(230,75)
-                    _btn.set_pos(8,79*i)
+                    _btn.set_pos(8,79*count)
                     _btn.add_style(style_cont_alarm, lv.PART.MAIN | lv.STATE.DEFAULT)
                     _btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.edit_alarm(e)),
                                             lv.EVENT.CLICKED, None)
 
-                    num = each["idx"]
+                    
                     # print("------刷新闹钟列表噢:{} num:{}",each,num)
                     _btn_label1 = lv.label(_btn)
                     _btn_label1.set_pos(50, 0)
@@ -777,6 +876,11 @@ class ClkListScreen(Screen):
                     #     _btn_switch.add_state(lv.STATE.CHECKED)
                     # else:
                     #     _btn_switch.clear_state(lv.STATE.CHECKED)
+                    count+=1
+                if count == 0:
+                    no_add_alarm_img.clear_flag(lv.obj.FLAG.HIDDEN)
+                    no_add_alarm.clear_flag(lv.obj.FLAG.HIDDEN) 
+                    self.alarm_show_list.add_flag(lv.obj.FLAG.HIDDEN) 
             else:
                 no_add_alarm_img.clear_flag(lv.obj.FLAG.HIDDEN)
                 no_add_alarm.clear_flag(lv.obj.FLAG.HIDDEN) 
index 43b4a16..37631a0 100644 (file)
@@ -136,7 +136,7 @@ if __name__ == '__main__':
     import mgr as mgr
     print("init7:{}".format(utime.localtime()))
     
-    from mgr import ConfigStoreManager, LocationManager, SockManager,getVolumSizeManager,gethistoryDataManager,getUpLoadDataManager, getplayAudiodStateManager,\
+    from mgr import ConfigStoreManager,getBootOffManager, LocationManager, SockManager,getVolumSizeManager,gethistoryDataManager,getUpLoadDataManager, getplayAudiodStateManager,\
     NetManager,AddrBookManager,MsgdetailManager,PhoneCallingManager,getStorageDataManager,getBrightnessManager,getHrTimeManager,getTempTimeManager,getLowBatManager
     print("init8:{}".format(utime.localtime()))
     
@@ -183,6 +183,7 @@ if __name__ == '__main__':
     app.append_manager(getTempTimeManager())
     app.append_manager(getplayAudiodStateManager())
     app.append_manager(getLowBatManager())
+    app.append_manager(getBootOffManager())
 
     print("init21:{}".format(utime.localtime()))    
     
index 11b8a53..effc846 100644 (file)
@@ -22,6 +22,7 @@ import audio
 from machine import I2C
 from Gsensor import SC7A20
 from Hsensor import GH3018
+from machine import RTC
 import quecgnss
 import wifiScan
 import math
@@ -875,6 +876,7 @@ class DeviceInfoManager(Abstract):
                                 if heart_value > 50 and heart_value != None:
                                     EventMesh.publish("set_old_hr_data",heart_value)
                                     EventMesh.publish(constants.PROTOCOL.HEART_SEND,heart_value)
+                                print("stop debug1")
                                 EventMesh.publish(constants.EVENT.STOP_HEART)
                                 self.HR_state = 0
                             elif self.get_spo2_state == 2 and self.HR_state == 2:
@@ -890,6 +892,7 @@ class DeviceInfoManager(Abstract):
                             if (time_tmp - self.SENSOR_time) >= hr_time:
                                 if self.get_spo2_state == 3 or self.get_hr_state == 3:#单次测量没有完毕优先测量间隔时间测量的
                                     if self.get_hr_state == 3:
+                                        print("stop debug2")
                                         EventMesh.publish(constants.EVENT.STOP_HEART)
                                         heart_value = EventMesh.publish(constants.EVENT.GET_HEART)
                                         if heart_value > 50 and heart_value != None:
@@ -918,6 +921,7 @@ class DeviceInfoManager(Abstract):
                             self.HR_OneTime = 0
                         elif (time_tmp - self.SENSOR_time) >= 60 and self.HR_state == 1:
                             EventMesh.publish("set_hr_state",0)#2代表后台进入测试
+                            print("stop debug3")
                             EventMesh.publish(constants.EVENT.STOP_HEART)
                             heart_value = EventMesh.publish(constants.EVENT.GET_HEART)
                             print("heart_value:{}".format(heart_value))
@@ -968,6 +972,7 @@ class DeviceInfoManager(Abstract):
                             elif self.HR_OneTime > 6 and self.HR_Onestate == 1:
                                 # print("self.HR_Onestate...4....:{} {} {} {} {}".format(self.HR_Onestate,self.get_hr_state,self.get_spo2_state,self.Hr_Need_Open,self.Spo2_Need_Open))
                                 if self.Hr_Need_Open == 1:#需要关闭心率测量
+                                    print("stop debug4")
                                     EventMesh.publish(constants.EVENT.STOP_HEART)
                                     heart_value = EventMesh.publish(constants.EVENT.GET_HEART)
                                     if heart_value > 50 and heart_value != None:
@@ -1018,6 +1023,7 @@ class DeviceInfoManager(Abstract):
                                         EventMesh.publish("set_old_spo2_data",spo2_value)
                                 elif self.set_hsenor_crt == 1:
                                     EventMesh.publish("set_hr_state",0)#0代表g关闭测试
+                                    print("stop debug5")
                                     EventMesh.publish(constants.EVENT.STOP_HEART)
                                     heart_value = EventMesh.publish(constants.EVENT.GET_HEART)
                                     if heart_value > 50 and heart_value != None:
@@ -1054,6 +1060,7 @@ class DeviceInfoManager(Abstract):
                             elif self.HR_OneTime > 6 and self.HR_Onestate == 1:
                                 print("stop_heart Onec ")
                                 if self.Hr_Need_Open == 1:#需要关闭心率测量
+                                    print("stop debug6")
                                     EventMesh.publish(constants.EVENT.STOP_HEART)
                                     heart_value = EventMesh.publish(constants.EVENT.GET_HEART)
                                     print("stop_heart heart_value:{}".format(heart_value))
@@ -1101,6 +1108,7 @@ class DeviceInfoManager(Abstract):
                                         EventMesh.publish(constants.PROTOCOL.OXYGEN_SEND,spo2_value)
                                 elif self.set_hsenor_crt == 1:
                                     EventMesh.publish("set_hr_state",0)#0代表g关闭测试
+                                    print("stop debug7")
                                     EventMesh.publish(constants.EVENT.STOP_HEART)
                                     heart_value = EventMesh.publish(constants.EVENT.GET_HEART)
                                     if heart_value > 50 and heart_value != None:
@@ -1111,13 +1119,14 @@ class DeviceInfoManager(Abstract):
                             self.HR_Onestate = 0
                             self.HR_OneTime = 0
         else:
-            if self.get_hr_state != 0 or self.get_spo2_state != 0:#3单次测量
-                if self.get_hr_state != 0:
-                    EventMesh.publish("set_hr_state",0)#2代表后台进入测试,定时测心率 1ui界面测试洗心率 
-                    EventMesh.publish(constants.EVENT.STOP_HEART) 
-                elif self.get_spo2_state != 0:
-                    EventMesh.publish("set_spo2_state",0)#2代表后台进入测试
-                    EventMesh.publish(constants.EVENT.STOP_BLOOD_OXYGEN)
+            if self.get_hr_state != None and self.get_spo2_state != None:
+                if self.get_hr_state != 0 or self.get_spo2_state != 0:#3单次测量
+                    if self.get_hr_state != 0:
+                        EventMesh.publish("set_hr_state",0)#2代表后台进入测试,定时测心率 1ui界面测试洗心率 
+                        EventMesh.publish(constants.EVENT.STOP_HEART) 
+                    elif self.get_spo2_state != 0:
+                        EventMesh.publish("set_spo2_state",0)#2代表后台进入测试
+                        EventMesh.publish(constants.EVENT.STOP_BLOOD_OXYGEN)
             
             if get_temp_time != None:
                 if get_temp_state != 0:
@@ -2352,11 +2361,13 @@ class getLowBatManager(Abstract):#低电提醒
 # n = 
 # 1683975862
 #836+600
-#1440 - 604 + 360  s = 71760
 class getBootOffManager(Abstract):#开关机时间
     def __init__(self):
         self.read_data = {}
-        self.off_msg = []
+        self.off_msg = {}
+        self.off_index1 = 0
+        self.off_index2 = 0
+        self.rtc =  RTC()
         check = ql_fs.path_exists("/ext/static/storage_file/config.json")
         
         if check == True:
@@ -2373,6 +2384,12 @@ class getBootOffManager(Abstract):#开关机时间
                     b3 = str("off_end") in self.read_data.keys()
                     if b3 == True:
                         self.off_end = self.read_data["off_end"]
+                    b4 = str("off_index1") in self.read_data.keys()
+                    if b4 == True:
+                        self.off_index1 = self.read_data["off_index1"]  
+                    b5 = str("off_index2") in self.read_data.keys()
+                    if b5 == True:
+                        self.off_index2 = self.read_data["off_index2"]  
                         
         # print("self.sos_numer1:{} self.read_data:{}".format(self.sos_numer1,self.read_data))
 
@@ -2380,89 +2397,23 @@ class getBootOffManager(Abstract):#开关机时间
         EventMesh.subscribe("set_boot_off_time", self.set_boot_off_time)#设置关机时间
         EventMesh.subscribe("get_boot_off_time", self.get_boot_off_time)
 
-    # def _rtc_callback(self,args):
-    #     msg_tmp = self.off_msg
-    #     off_tmp1  = msg_tmp[1]
-    #     msg_tmp1 = off_tmp1.split(':')
-    #     start_min = msg_tmp1[0]*60+msg_tmp1[1]
+        EventMesh.subscribe("set_boot_off_index", self.set_boot_off_index)#设置关机时间
+        EventMesh.subscribe("get_boot_off_index", self.get_boot_off_index)
 
+    def set_boot_off_index(self, event, msg): 
+        self.off_index1 = msg[0]
+        self.off_index2 = msg[1]
 
-    #     off_tmp2  = msg_tmp[2]
-    #     msg_tmp2 = off_tmp2.split(':')
-    #     end_min = off_tmp2[0]*60+msg_tmp2[1]
+        print("self.off_index1:{} self.off_index2:{}".format(self.off_index1,self.off_index2))
 
-    #     rtc_now_time = self.rtc.datetime()
-    #     current = rtc_now_time[4]*60+rtc_now_time[5]
-    #     # if current == start_min:
 
-    #     # if current == start_min:
+    def get_boot_off_index(self, event, msg):
+        return [self.off_index1,self.off_index2]
 
-    #     # print("---!!!!!!alarm_ring!!!!!!!---,idx:",args)
+    def set_boot_off_time(self, event, msg): 
+        self.off_msg = msg
 
-    # def set_boot_off_time(self, event, msg): 
-
-    #     self.off_msg = msg
-    #     if msg[0] == 0:
-    #         return
-      
-    #     rtc_now_time = self.rtc.datetime()
-
-    #     # data = RTC().datetime()
-    #     # hour = data[4]
-    #     # min = data[5]
-    #     #反向获取时间戳
-    #     def_time = 24*60 #一天的总分钟数
-    #     time = utime.localtime()
-    #     print("09获取utime的时间戳:", time)
-    #     rtc_mktime = utime.mktime(time)
-    #     print("10反向获取utime的mktime:", rtc_mktime)
-
-       
-    #     current_minute = rtc_now_time[4]*60 + rtc_now_time[5] #当前的分钟数不包含年月日
-    #     off_msg1 = msg[1]
-    #     off_msg2 = msg[2]
-    #     msg_tmp1 = off_msg1.split(':')
-    #     msg_tmp2 = off_msg2.split(':')
-    #     start_min = msg_tmp1[0]*60+msg_tmp1[1]
-    #     end_min = msg_tmp2[0]*60+msg_tmp2[1]
-    #     #9:00 6:00 
-    #     next_off_mktime = 0 #关机的时间戳
-    #     next_on_mktime = 0 #开机的时间戳
-    #     if current_minute >  start_min:#如果当前的分钟数 大于开始的关机时间分钟数 则认为是第二天6:00需要开机 23:00需要关机
-    #         next_off_mktime = rtc_mktime+((def_time - current_minute)+start_min)*60#算到下一个开机时间
-    #         pass
-    #     else:
-
-    #         pass
-
-
-    #     #格式化时间戳,得到下一次闹钟的时间
-    #     next_time = utime.localtime(next_off_mktime)
-    #     print("12下一次开机时间的准确时间:", next_time)
-    #     #将时间转换为rtc的格式
-    #     data_l = [2021, 7, 9, 5, 12, 30, 0, 0]
-    #     #给rtc时间赋值
-    #     data_l[0] = next_time[0] #year
-    #     data_l[1] = next_time[1] #month                    
-    #     data_l[2] = next_time[2] #day                     
-    #     data_l[4] = next_time[3] #hour               
-    #     data_l[5] = next_time[4] #minute               
-    #     #转换为元组       
-    #     data_e=tuple(data_l)
-    #     print("13将该时间转换为RTC元组:", data_e)
-       
-    #     #设置rtc闹钟时间
-    #     self.rtc.register_callback(self._rtc_callback)
-
-    #     FLAG = self.rtc.set_alarm(data_e)
-    #     if FLAG == 0:
-    #         print("成功设置rtc的到期时间:", data_e)
-    #     else:
-    #         print("设置rtc的到期时间失败:", data_e)
-        
-    #     self.rtc.enable_alarm(1)
-
-    # def get_boot_off_time(self, event, msg):
-    #     return self.off_msg
+    def get_boot_off_time(self, event, msg):
+        return self.off_msg
 
     
\ No newline at end of file
index 241a15f..0b30f58 100644 (file)
@@ -577,7 +577,9 @@ class REMIND_ProtoCol(ProtoCol):
         msg_tmp = msg.decode('ascii')
         msg_tmp = msg_tmp.split('REMIND,')
         msg_tmp = msg_tmp[1]
-        num = 0
+        alarm_data  = EventMesh.publish("get_check_alarm_list")
+        num = len(alarm_data)
+        print("num:%d"%(num))
         j=0
         for j in range(0,3):
             self.alarm_day = []
@@ -607,8 +609,7 @@ class REMIND_ProtoCol(ProtoCol):
                 with open("/ext/static/storage_file/alarm_msg.json", 'w',encoding='utf-8') as fd:
                     ujson.dump(self.alarm_list,fd) 
                 num+=1
-                if num >= 2:
-                    num = 2
+        EventMesh.publish("set_check_alarm_list", self.alarm_list)
         EventMesh.publish("push_update_alarm_show")
         EventMesh.publish(constants.PROTOCOL.REMIND_SEND)
 
@@ -958,8 +959,6 @@ class bootoff_ProtoCol(ProtoCol):
         @param msg: 接收到的下行数据
         """
         # b'[SZKW*867387060319166*000A*SOS_SEND]'
-        read_data = {}
-        read_data = EventMesh.publish("get_storage_data")
         msg = msg[1:-1]
         msg_tmp = msg.decode('ascii')
         msg_tmp = msg_tmp.split(',')
@@ -968,14 +967,9 @@ class bootoff_ProtoCol(ProtoCol):
         on_end = msg_tmp[3]
         print("BOOTOFF:send data:{} {} {}".format(on_bt,on_start,on_end))
         #b'[SZKW*860132060006970*0015*BOOTOFF,1,06:00,23:59]'
-
-        read_data["off_on"] = on_bt
-        read_data["off_start"] = on_start
-        read_data["off_end"] = on_end
-        EventMesh.publish("set_storage_data",read_data)
         EventMesh.publish("set_boot_off_time",[on_bt,on_start,on_end])
-        with open("/ext/static/storage_file/config.json","w",encoding="utf-8") as fd:
-            ujson.dump(read_data,fd)
+        EventMesh.publish("add_alarm", [on_bt,on_start,on_end])
+        EventMesh.publish("set_rtc_alarm")
         EventMesh.publish(constants.PROTOCOL.BOOTOFF_SEND)  
 
 
index 589d80e..4659323 100644 (file)
@@ -1432,6 +1432,7 @@ class HeartrateScreen(Screen):
             self.timer.stop()
             self.point = 0
             EventMesh.publish("set_hr_state",0)#0代表关闭测试
+            print("stop debug9")
             EventMesh.publish(constants.EVENT.STOP_HEART)
 
     def Close(self):
@@ -1440,6 +1441,7 @@ class HeartrateScreen(Screen):
         get_spo2_state = EventMesh.publish("get_spo2_state")
         if get_hr_state == 1 or get_spo2_state == 1:
             EventMesh.publish("set_hr_state",0)#0代表关闭测试
+            print("stop debug10")
             EventMesh.publish(constants.EVENT.STOP_HEART)
 
     def done_return(self):
index 4bc6803..7a25d80 100644 (file)
@@ -1355,6 +1355,8 @@ class BrightnessScreen(Screen):
         self.level = EventMesh.publish("get_brightness_level")
         self.time = EventMesh.publish("get_brightness_time")
         print("self.time:{}".format(self.time))
+        if self.time == None:
+            self.time = 5
         brightness_label_time_text.set_text("{}秒".format(self.time))
         self.show_bar()
     def add_level(self, e):
index b75a3b2..b17b3e0 100644 (file)
Binary files a/2.sdk/project/K5/sdk/system/platform/ASR_1606/boards/EG810MCN_GA_ALIPAY/images/firmware_base_release_pack.zip and b/2.sdk/project/K5/sdk/system/platform/ASR_1606/boards/EG810MCN_GA_ALIPAY/images/firmware_base_release_pack.zip differ
index 43b4a16..37631a0 100644 (file)
@@ -136,7 +136,7 @@ if __name__ == '__main__':
     import mgr as mgr
     print("init7:{}".format(utime.localtime()))
     
-    from mgr import ConfigStoreManager, LocationManager, SockManager,getVolumSizeManager,gethistoryDataManager,getUpLoadDataManager, getplayAudiodStateManager,\
+    from mgr import ConfigStoreManager,getBootOffManager, LocationManager, SockManager,getVolumSizeManager,gethistoryDataManager,getUpLoadDataManager, getplayAudiodStateManager,\
     NetManager,AddrBookManager,MsgdetailManager,PhoneCallingManager,getStorageDataManager,getBrightnessManager,getHrTimeManager,getTempTimeManager,getLowBatManager
     print("init8:{}".format(utime.localtime()))
     
@@ -183,6 +183,7 @@ if __name__ == '__main__':
     app.append_manager(getTempTimeManager())
     app.append_manager(getplayAudiodStateManager())
     app.append_manager(getLowBatManager())
+    app.append_manager(getBootOffManager())
 
     print("init21:{}".format(utime.localtime()))