Index: output/eeprom.dat
===================================================================
--- /YC1308AF/branch/mouse/YDN_Project/YDN_mouse_public_pair_1M_version/output/eeprom.dat	(revision 4438)
+++ /YC1308AF/branch/mouse/YDN_Project/YDN_mouse_public_pair_1M_version/output/eeprom.dat	(working copy)
@@ -67,7 +67,7 @@
 c0
 67
 83
-1d
+22
 c0
 68
 04
@@ -691,7 +691,7 @@
 20
 40
 03
-1e
+23
 20
 40
 47
@@ -2775,7 +2775,7 @@
 20
 20
 03
-1e
+23
 20
 40
 02
@@ -3163,11 +3163,11 @@
 20
 40
 03
-1d
+22
 20
 40
 03
-4b
+4e
 20
 20
 46
@@ -3183,6 +3183,26 @@
 1f
 e6
 7c
+04
+20
+42
+fe
+d1
+20
+20
+03
+14
+6f
+e0
+c9
+97
+1f
+e0
+fe
+01
+1f
+e6
+7c
 05
 20
 42
@@ -3195,7 +3215,7 @@
 20
 40
 03
-23
+28
 6f
 e0
 c9
@@ -3203,15 +3223,15 @@
 c0
 06
 03
-3b
+3e
 c0
 01
 83
-3b
+3e
 c0
 06
 83
-27
+2c
 20
 20
 40
@@ -3239,39 +3259,31 @@
 c0
 00
 03
-2b
+30
 c0
 00
 83
-2e
+32
 c0
 01
 03
-31
+34
 6f
 e0
 cc
 90
-1f
-e2
-22
-00
 20
 20
 03
-33
+35
 6f
 e0
 cc
 91
-1f
-e2
-22
-00
 20
 20
 03
-33
+35
 6f
 e0
 cc
@@ -3319,23 +3331,23 @@
 c0
 00
 03
-43
+46
 c0
 00
 83
-41
+44
 c0
 01
 03
-45
+48
 c0
 01
 83
-47
+4a
 c0
 02
 03
-49
+4c
 6f
 e0
 cc
@@ -3391,11 +3403,11 @@
 c0
 06
 03
-55
+58
 c0
 01
 83
-55
+58
 6f
 e0
 c9
@@ -3403,15 +3415,15 @@
 c0
 00
 03
-5e
+60
 c0
 00
 83
-60
+62
 c0
 01
 03
-5c
+5e
 20
 60
 00
@@ -3423,23 +3435,19 @@
 c0
 00
 03
-5e
+60
 c0
 00
 83
-60
+62
 c0
 01
 03
-62
+64
 c0
 01
 83
-64
-c0
-02
-03
-5c
+5e
 20
 60
 00
@@ -3472,14 +3480,6 @@
 00
 00
 04
-20
-20
-03
-65
-58
-00
-00
-05
 67
 e0
 cd
@@ -4823,7 +4823,7 @@
 20
 40
 03
-1e
+23
 20
 40
 3f
@@ -5168,8 +5168,8 @@
 20
 61
 2c
-4e
-7d
+11
+34
 aa
 55
 40
@@ -5312,7 +5312,7 @@
 04
 09
 0a
-01
+00
 00
 00
 02
@@ -5344,7 +5344,7 @@
 0e
 0f
 0d
-03
+ff
 ff
 ff
 05
@@ -5526,8 +5526,8 @@
 00
 64
 00
-70
-17
+50
+46
 aa
 55
 02
@@ -6497,10 +6497,10 @@
 aa
 aa
 55
-4e
-92
-4b
-52
+58
+93
+38
+b9
 ff
 ff
 ff
Index: output/program.lis
===================================================================
--- /YC1308AF/branch/mouse/YDN_Project/YDN_mouse_public_pair_1M_version/output/program.lis	(revision 4438)
+++ /YC1308AF/branch/mouse/YDN_Project/YDN_mouse_public_pair_1M_version/output/program.lis	(working copy)
@@ -15,7 +15,7 @@
 000c c06581e3 beq patch19_3 ,p_mouse_adc_read_start 
 000d c06684ae beq patch19_5 ,p_mouse_motion 
 000e c067030c beq patch19_6 ,p_mouse_dpi_process 
-000f c067831d beq patch19_7 ,p_mouse_seting_dpi 
+000f c0678322 beq patch19_7 ,p_mouse_seting_dpi 
 0010 c06804d5 beq patch1a_0 ,p_mouse_check_key_gpio 
 0011 c0690292 beq patch1a_2 ,p_mouse_init_sunt 
 0012 c06982ae beq patch1a_3 ,p_mouse_sensor_poweron 
@@ -219,7 +219,7 @@
 00a8 2455bf60 ncall mouse_gpio_init ,wake 
 00a9 204041e7 call mouse_init_sunt 
 00aa 20758000 rtn wake 
-00ab 2040031e call p_mouse_seting_sensor_type 
+00ab 20400323 call p_mouse_seting_sensor_type 
 00ac 20404766 call mouse_drawing_optima_init 
 00ad 2040010d call p_mouse_cb_fuction 
 00ae 204002b8 call p_mouse_sensor_powerdown 
@@ -948,7 +948,7 @@
 
 p_mouse_sensor_poweron_end:
 02b3 2040426b call mouse_sensor_wr_seq 
-02b4 2020031e branch p_mouse_seting_sensor_type 
+02b4 20200323 branch p_mouse_seting_sensor_type 
 
 p_mouse_ka8g2_sensor_init:
 02b5 204002c8 call p_mouse_ka8g2_sensor_reset 
@@ -1075,138 +1075,138 @@
 030c 204040b2 call mouse_dpi_ghost_check 
 030d 20740000 rtn user 
 030e 6fe0c92c fetch 1 ,mem_config_sensor_type 
-030f c0060318 beq ka5857 ,p_mouse_dpi_process_5_level 
-0310 c0018318 beq p3212 ,p_mouse_dpi_process_5_level 
+030f c0060318 beq ka5857 ,p_mouse_dpi_process_4_level 
+0310 c0018318 beq p3212 ,p_mouse_dpi_process_4_level 
 0311 6fe0c997 fetch 1 ,mem_mouse_dpi 
 0312 1fe0fe01 increase 1 ,pdata 
 0313 1fe17e03 and pdata ,0x03 ,pdata 
 
 p_mouse_dpi_store:
 0314 67e0c997 store 1 ,mem_mouse_dpi 
-0315 2040031d call p_mouse_seting_dpi 
-0316 2040034b call p_mouse_dpi_led_blink_init 
+0315 20400322 call p_mouse_seting_dpi 
+0316 2040034e call p_mouse_dpi_led_blink_init 
 0317 20204683 branch mouse_store_eerpom_dpi 
 
-p_mouse_dpi_process_5_level:
+p_mouse_dpi_process_4_level:
 0318 6fe0c997 fetch 1 ,mem_mouse_dpi 
 0319 1fe0fe01 increase 1 ,pdata 
-031a 1fe67c05 sub pdata ,5 ,null 
+031a 1fe67c04 sub pdata ,4 ,null 
 031b 2042fed1 call set_pdata_0 ,zero 
 031c 20200314 branch p_mouse_dpi_store 
 
+p_mouse_dpi_process_5_level:
+031d 6fe0c997 fetch 1 ,mem_mouse_dpi 
+031e 1fe0fe01 increase 1 ,pdata 
+031f 1fe67c05 sub pdata ,5 ,null 
+0320 2042fed1 call set_pdata_0 ,zero 
+0321 20200314 branch p_mouse_dpi_store 
+
 p_mouse_seting_dpi:
-031d 20400323 call p_mouse_setting_dpi_4_level 
+0322 20400328 call p_mouse_setting_dpi_4_level 
 
 p_mouse_seting_sensor_type:
-031e 6fe0c92c fetch 1 ,mem_config_sensor_type 
-031f c006033b beq ka5857 ,p_mouse_seting_3212_dpi 
-0320 c001833b beq p3212 ,p_mouse_seting_3212_dpi 
-0321 c0068327 beq s201x ,p_mouse_seting_s201_dpi 
-0322 202040da branch mouse_seting_sensor_type + 2 
+0323 6fe0c92c fetch 1 ,mem_config_sensor_type 
+0324 c006033e beq ka5857 ,p_mouse_seting_3212_dpi 
+0325 c001833e beq p3212 ,p_mouse_seting_3212_dpi 
+0326 c006832c beq s201x ,p_mouse_seting_s201_dpi 
+0327 202040da branch mouse_seting_sensor_type + 2 
 
 p_mouse_setting_dpi_4_level:
-0323 6fe0c92c fetch 1 ,mem_config_sensor_type 
-0324 c1060000 rtneq ka5857 
-0325 c1018000 rtneq p3212 
-0326 202040cf branch mouse_setting_dpi_4_level 
+0328 6fe0c92c fetch 1 ,mem_config_sensor_type 
+0329 c1060000 rtneq ka5857 
+032a c1018000 rtneq p3212 
+032b 202040cf branch mouse_setting_dpi_4_level 
 
 p_mouse_seting_s201_dpi:
-0327 6fe0c997 fetch 1 ,mem_mouse_dpi 
-0328 c000032b beq mouse_dpi_level1 ,p_mouse_set_s201_dpi_0 
-0329 c000832e beq mouse_dpi_level2 ,p_mouse_set_s201_dpi_1 
-032a c0010331 beq mouse_dpi_level3 ,p_mouse_set_s201_dpi_4 
+032c 6fe0c997 fetch 1 ,mem_mouse_dpi 
+032d c0000330 beq mouse_dpi_level1 ,p_mouse_set_s201_dpi_0 
+032e c0008332 beq mouse_dpi_level2 ,p_mouse_set_s201_dpi_1 
+032f c0010334 beq mouse_dpi_level3 ,p_mouse_set_s201_dpi_4 
 
 p_mouse_set_s201_dpi_0:
-032b 6fe0cc90 fetch 1 ,mem_sensor_s201_dpi_0 
-032c 1fe22200 copy pdata ,rega 
-032d 20200333 branch p_mouse_dpi_s201_store 
+0330 6fe0cc90 fetch 1 ,mem_sensor_s201_dpi_0 
+0331 20200335 branch p_mouse_dpi_s201_store 
 
 p_mouse_set_s201_dpi_1:
-032e 6fe0cc91 fetch 1 ,mem_sensor_s201_dpi_1 
-032f 1fe22200 copy pdata ,rega 
-0330 20200333 branch p_mouse_dpi_s201_store 
+0332 6fe0cc91 fetch 1 ,mem_sensor_s201_dpi_1 
+0333 20200335 branch p_mouse_dpi_s201_store 
 
 p_mouse_set_s201_dpi_4:
-0331 6fe0cc94 fetch 1 ,mem_sensor_s201_dpi_4 
-0332 1fe22200 copy pdata ,rega 
+0334 6fe0cc94 fetch 1 ,mem_sensor_s201_dpi_4 
 
 p_mouse_dpi_s201_store:
-0333 5800c309 setarg 0xc309 
-0334 20405d5e call twspi_write 
-0335 1a227e00 copy rega ,pdata 
-0336 1fed7e00 lshift8 pdata ,pdata 
-0337 1fe0fe23 add pdata ,0x23 ,pdata 
-0338 20405d5e call twspi_write 
-0339 58000009 setarg 0x0009 
-033a 20205d5e branch twspi_write 
+0335 1fe22200 copy pdata ,rega 
+0336 5800c309 setarg 0xc309 
+0337 20405d5e call twspi_write 
+0338 1a227e00 copy rega ,pdata 
+0339 1fed7e00 lshift8 pdata ,pdata 
+033a 1fe0fe23 add pdata ,0x23 ,pdata 
+033b 20405d5e call twspi_write 
+033c 58000009 setarg 0x0009 
+033d 20205d5e branch twspi_write 
 
 p_mouse_seting_3212_dpi:
-033b 6fe0c997 fetch 1 ,mem_mouse_dpi 
-033c c0000343 beq mouse_dpi_level1 ,p_mouse_set_p3212_cpi0 
-033d c0008341 beq mouse_dpi_level2 ,p_mouse_set_p3212_cpi1 
-033e c0010345 beq mouse_dpi_level3 ,p_mouse_set_p3212_cpi2 
-033f c0018347 beq mouse_dpi_level4 ,p_mouse_set_p3212_cpi3 
-0340 c0020349 beq mouse_dpi_level5 ,p_mouse_set_p3212_cpi4 
+033e 6fe0c997 fetch 1 ,mem_mouse_dpi 
+033f c0000346 beq mouse_dpi_level1 ,p_mouse_set_p3212_cpi0 
+0340 c0008344 beq mouse_dpi_level2 ,p_mouse_set_p3212_cpi1 
+0341 c0010348 beq mouse_dpi_level3 ,p_mouse_set_p3212_cpi2 
+0342 c001834a beq mouse_dpi_level4 ,p_mouse_set_p3212_cpi3 
+0343 c002034c beq mouse_dpi_level5 ,p_mouse_set_p3212_cpi4 
 
 p_mouse_set_p3212_cpi1:
-0341 6fe0cc8b fetch 1 ,mem_3212_dpi_1_new 
-0342 20204107 branch mouse_p3212_dpi 
+0344 6fe0cc8b fetch 1 ,mem_3212_dpi_1_new 
+0345 20204107 branch mouse_p3212_dpi 
 
 p_mouse_set_p3212_cpi0:
-0343 6fe0cc8a fetch 1 ,mem_3212_dpi_0_new 
-0344 20204107 branch mouse_p3212_dpi 
+0346 6fe0cc8a fetch 1 ,mem_3212_dpi_0_new 
+0347 20204107 branch mouse_p3212_dpi 
 
 p_mouse_set_p3212_cpi2:
-0345 6fe0cc8c fetch 1 ,mem_3212_dpi_2_new 
-0346 20204107 branch mouse_p3212_dpi 
+0348 6fe0cc8c fetch 1 ,mem_3212_dpi_2_new 
+0349 20204107 branch mouse_p3212_dpi 
 
 p_mouse_set_p3212_cpi3:
-0347 6fe0cc8d fetch 1 ,mem_3212_dpi_3_new 
-0348 20204107 branch mouse_p3212_dpi 
+034a 6fe0cc8d fetch 1 ,mem_3212_dpi_3_new 
+034b 20204107 branch mouse_p3212_dpi 
 
 p_mouse_set_p3212_cpi4:
-0349 6fe0cc8e fetch 1 ,mem_3212_dpi_4_new 
-034a 20204107 branch mouse_p3212_dpi 
+034c 6fe0cc8e fetch 1 ,mem_3212_dpi_4_new 
+034d 20204107 branch mouse_p3212_dpi 
 
 p_mouse_dpi_led_blink_init:
-034b 6fe0cda3 fetch 1 ,mem_mouse_pair_success 
-034c 207a0000 rtn blank 
-034d 6fe0c92c fetch 1 ,mem_config_sensor_type 
-034e c0060355 beq ka5857 ,p_mouse_dpi_level_set_5 
-034f c0018355 beq p3212 ,p_mouse_dpi_level_set_5 
-0350 6fe0c997 fetch 1 ,mem_mouse_dpi 
-0351 c000035e beq mouse_dpi_level1 ,p_mouse_dpi_level_2 
-0352 c0008360 beq mouse_dpi_level2 ,p_mouse_dpi_level_3 
-0353 c001035c beq mouse_dpi_level3 ,p_mouse_dpi_level_1 
-0354 20600000 rtn 
-
-p_mouse_dpi_level_set_5:
-0355 6fe0c997 fetch 1 ,mem_mouse_dpi 
-0356 c000035e beq mouse_dpi_level1 ,p_mouse_dpi_level_2 
-0357 c0008360 beq mouse_dpi_level2 ,p_mouse_dpi_level_3 
-0358 c0010362 beq mouse_dpi_level3 ,p_mouse_dpi_level_4 
-0359 c0018364 beq mouse_dpi_level4 ,p_mouse_dpi_level_5 
-035a c002035c beq mouse_dpi_level5 ,p_mouse_dpi_level_1 
-035b 20600000 rtn 
+034e 6fe0cda3 fetch 1 ,mem_mouse_pair_success 
+034f 207a0000 rtn blank 
+0350 6fe0c92c fetch 1 ,mem_config_sensor_type 
+0351 c0060358 beq ka5857 ,p_mouse_dpi_level_set_4 
+0352 c0018358 beq p3212 ,p_mouse_dpi_level_set_4 
+0353 6fe0c997 fetch 1 ,mem_mouse_dpi 
+0354 c0000360 beq mouse_dpi_level1 ,p_mouse_dpi_level_2 
+0355 c0008362 beq mouse_dpi_level2 ,p_mouse_dpi_level_3 
+0356 c001035e beq mouse_dpi_level3 ,p_mouse_dpi_level_1 
+0357 20600000 rtn 
+
+p_mouse_dpi_level_set_4:
+0358 6fe0c997 fetch 1 ,mem_mouse_dpi 
+0359 c0000360 beq mouse_dpi_level1 ,p_mouse_dpi_level_2 
+035a c0008362 beq mouse_dpi_level2 ,p_mouse_dpi_level_3 
+035b c0010364 beq mouse_dpi_level3 ,p_mouse_dpi_level_4 
+035c c001835e beq mouse_dpi_level4 ,p_mouse_dpi_level_1 
+035d 20600000 rtn 
 
 p_mouse_dpi_level_1:
-035c 58000001 setarg 1 
-035d 20200365 branch p_mouse_dpi_blink_count_init 
-
-p_mouse_dpi_level_2:
-035e 58000002 setarg 2 
+035e 58000001 setarg 1 
 035f 20200365 branch p_mouse_dpi_blink_count_init 
 
-p_mouse_dpi_level_3:
-0360 58000003 setarg 3 
+p_mouse_dpi_level_2:
+0360 58000002 setarg 2 
 0361 20200365 branch p_mouse_dpi_blink_count_init 
 
-p_mouse_dpi_level_4:
-0362 58000004 setarg 4 
+p_mouse_dpi_level_3:
+0362 58000003 setarg 3 
 0363 20200365 branch p_mouse_dpi_blink_count_init 
 
-p_mouse_dpi_level_5:
-0364 58000005 setarg 5 
+p_mouse_dpi_level_4:
+0364 58000004 setarg 4 
 
 p_mouse_dpi_blink_count_init:
 0365 67e0cda5 store 1 ,mem_mouse_dpi_blink_count 
@@ -1652,7 +1652,7 @@
 04b1 204004be call p_mouse_check_sensor_data 
 04b2 58000089 setarg 0x0089 
 04b3 20405d5e call twspi_write 
-04b4 2040031e call p_mouse_seting_sensor_type 
+04b4 20400323 call p_mouse_seting_sensor_type 
 04b5 20403fbe call mouse_zwheel 
 04b6 20403fc3 call mouse_t_zwheel 
 04b7 204004d3 call p_mouse_key 
Index: program/patch.prog
===================================================================
--- /YC1308AF/branch/mouse/YDN_Project/YDN_mouse_public_pair_1M_version/program/patch.prog	(revision 4438)
+++ /YC1308AF/branch/mouse/YDN_Project/YDN_mouse_public_pair_1M_version/program/patch.prog	(working copy)
@@ -1269,8 +1269,8 @@
 	call mouse_dpi_ghost_check
 	rtn user
 	fetch 1,mem_config_sensor_type
-	beq KA5857,p_mouse_dpi_process_5_level
-	beq P3212,p_mouse_dpi_process_5_level
+	beq KA5857,p_mouse_dpi_process_4_level
+	beq P3212,p_mouse_dpi_process_4_level
 	fetch 1,mem_mouse_dpi
 	increase 1,pdata
 	and pdata,0x03,pdata
@@ -1280,6 +1280,13 @@
 	call p_mouse_dpi_led_blink_init
 	branch mouse_store_eerpom_dpi
 
+p_mouse_dpi_process_4_level:
+	fetch 1,mem_mouse_dpi
+	increase 1,pdata
+	sub pdata,4,null
+	call set_pdata_0,zero
+	branch p_mouse_dpi_store
+
 p_mouse_dpi_process_5_level:
 	fetch 1,mem_mouse_dpi
 	increase 1,pdata
@@ -1308,19 +1315,16 @@
 	beq MOUSE_DPI_LEVEL1,p_mouse_set_S201_dpi_0	//1200
 	beq MOUSE_DPI_LEVEL2,p_mouse_set_S201_dpi_1	//1600
 	beq MOUSE_DPI_LEVEL3,p_mouse_set_S201_dpi_4	//800
-
 p_mouse_set_S201_dpi_0:	//1200
 	fetch 1,mem_sensor_s201_dpi_0
-	copy pdata,rega
 	branch p_mouse_dpi_S201_store
 p_mouse_set_S201_dpi_1:	//1600
 	fetch 1,mem_sensor_s201_dpi_1
-	copy pdata,rega
 	branch p_mouse_dpi_s201_store
 p_mouse_set_S201_dpi_4:	//800	
 	fetch 1,mem_sensor_s201_dpi_4
-	copy pdata,rega
 p_mouse_dpi_s201_store:
+	copy pdata,rega
 	setarg 0xc309
 	call twspi_write
 	copy rega,pdata
@@ -1369,21 +1373,20 @@
 	fetch 1,mem_mouse_pair_success
 	rtn blank
 	fetch 1,mem_config_sensor_type
-	beq KA5857,p_mouse_dpi_level_set_5
-	beq P3212,p_mouse_dpi_level_set_5
+	beq KA5857,p_mouse_dpi_level_set_4
+	beq P3212,p_mouse_dpi_level_set_4
 	fetch 1,mem_mouse_dpi
 	beq MOUSE_DPI_LEVEL1,p_mouse_dpi_level_2
 	beq MOUSE_DPI_LEVEL2,p_mouse_dpi_level_3
 	beq MOUSE_DPI_LEVEL3,p_mouse_dpi_level_1
 	rtn
 
-p_mouse_dpi_level_set_5:
+p_mouse_dpi_level_set_4:
 	fetch 1,mem_mouse_dpi
 	beq MOUSE_DPI_LEVEL1,p_mouse_dpi_level_2
 	beq MOUSE_DPI_LEVEL2,p_mouse_dpi_level_3
 	beq MOUSE_DPI_LEVEL3,p_mouse_dpi_level_4
-	beq MOUSE_DPI_LEVEL4,p_mouse_dpi_level_5
-	beq MOUSE_DPI_LEVEL5,p_mouse_dpi_level_1
+	beq MOUSE_DPI_LEVEL4,p_mouse_dpi_level_1
 	rtn
 
 p_mouse_dpi_level_1:
@@ -1398,10 +1401,6 @@
 
 p_mouse_dpi_level_4:
 	setarg 4
-	branch p_mouse_dpi_blink_count_init
-
-p_mouse_dpi_level_5:
-	setarg 5
 p_mouse_dpi_blink_count_init:
 	store 1,mem_mouse_dpi_blink_count
 	jam 1,mem_mouse_dpi_led_blink_enable
Index: sched/mouse.dat
===================================================================
--- /YC1308AF/branch/mouse/YDN_Project/YDN_mouse_public_pair_1M_version/sched/mouse.dat	(revision 4438)
+++ /YC1308AF/branch/mouse/YDN_Project/YDN_mouse_public_pair_1M_version/sched/mouse.dat	(working copy)
@@ -51,7 +51,7 @@
 #bit5 MOUSE_ENABLE_USB_250
 #bit6 MOUSE_ENABLE_USB_500
 #bit7 MOUSE_ENABLE_USB_1000
-01
+00
 
 #mouse flag byte5
 #bit0 MOUSE_ENABLE_POWER_ON_LED
@@ -111,7 +111,7 @@
 mem_bk_button_gpio:0e
 mem_fw_button_gpio:0f
 mem_dpi_button_gpio:0d
-mem_matrix_public_gpio:03
+mem_matrix_public_gpio:ff
 mem_sensor_motion_gpio:ff
 mem_customer_key_gpio:ff
 mem_whee_a_data_gpio:05
@@ -181,7 +181,7 @@
 mem_mouse_fast_page_to:60 06	# 1600*0.625ms = 1s
 mem_mouse_24g_power_on_fast_conn_timer:0a 00 #1s
 mem_mouse_24g_search_dongle_time_init: 64 00
-mem_mouse_no_data_timeout:70 17 #10min
+mem_mouse_no_data_timeout:50 46 #30min
 
 #bit0:mouse_key_l    bit1:mouse_key_r  bit2:mouse_key_m
 mem_mouse_commbination_key_bt:07
