Index: output/eeprom.dat
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/Only_LE_M-B12/output/eeprom.dat	(revision 4961)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/Only_LE_M-B12/output/eeprom.dat	(working copy)
@@ -2,8 +2,8 @@
 02
 aa
 55
-e2
-17
+06
+18
 c2
 84
 00
@@ -79,7 +79,7 @@
 c0
 67
 85
-c2
+cb
 c0
 68
 03
@@ -87,7 +87,7 @@
 c0
 68
 85
-59
+61
 c0
 69
 83
@@ -95,7 +95,7 @@
 c0
 6a
 05
-41
+49
 c0
 6b
 02
@@ -115,7 +115,7 @@
 c0
 6f
 05
-a5
+ae
 c0
 6f
 80
@@ -203,7 +203,7 @@
 c0
 76
 85
-ca
+d3
 20
 20
 13
@@ -951,7 +951,7 @@
 20
 20
 05
-50
+58
 6f
 e0
 cc
@@ -1299,7 +1299,7 @@
 20
 40
 05
-50
+58
 20
 20
 3b
@@ -1791,7 +1791,7 @@
 20
 20
 05
-50
+58
 6f
 e0
 c8
@@ -2055,7 +2055,7 @@
 20
 40
 05
-ef
+f8
 20
 40
 27
@@ -2195,11 +2195,11 @@
 20
 40
 05
-4b
+53
 20
 40
 05
-50
+58
 20
 20
 3e
@@ -2243,7 +2243,7 @@
 20
 40
 05
-8c
+95
 d8
 40
 00
@@ -2431,7 +2431,7 @@
 20
 40
 05
-8c
+95
 20
 20
 3e
@@ -2907,7 +2907,7 @@
 20
 40
 05
-50
+58
 20
 20
 02
@@ -3571,7 +3571,7 @@
 20
 20
 05
-46
+4e
 58
 00
 00
@@ -4655,7 +4655,7 @@
 20
 40
 05
-59
+61
 1f
 e1
 7e
@@ -5247,7 +5247,7 @@
 20
 40
 05
-2c
+34
 58
 00
 00
@@ -5271,7 +5271,19 @@
 20
 40
 05
-57
+5f
+6f
+e0
+ca
+c1
+1f
+e6
+7c
+ff
+20
+22
+85
+2b
 6f
 e0
 c8
@@ -5287,11 +5299,11 @@
 24
 34
 05
-3b
+43
 20
 40
 05
-3d
+45
 20
 40
 01
@@ -5302,6 +5314,26 @@
 44
 6f
 e0
+ca
+c1
+c1
+ff
+80
+00
+6f
+e0
+c9
+1b
+c1
+7f
+80
+00
+20
+20
+46
+5d
+6f
+e0
 c4
 ac
 c1
@@ -5315,7 +5347,7 @@
 c0
 05
 85
-31
+39
 20
 20
 42
@@ -5395,7 +5427,7 @@
 c0
 05
 85
-48
+50
 20
 40
 42
@@ -5415,7 +5447,7 @@
 20
 40
 05
-4e
+56
 da
 60
 4b
@@ -5423,7 +5455,7 @@
 20
 20
 05
-46
+4e
 6f
 e0
 c9
@@ -5431,7 +5463,7 @@
 c0
 05
 85
-4e
+56
 20
 20
 42
@@ -5459,7 +5491,7 @@
 c0
 05
 85
-55
+5d
 20
 20
 42
@@ -5475,7 +5507,7 @@
 20
 40
 05
-59
+61
 20
 20
 40
@@ -5495,27 +5527,31 @@
 20
 40
 05
-63
+6c
 20
 40
 05
-68
+71
 20
 40
 05
-6d
+76
 20
 40
 05
-72
+7b
 20
 40
 05
-7f
+88
 20
 40
 05
-92
+9b
+20
+40
+05
+2f
 20
 20
 41
@@ -5527,7 +5563,7 @@
 20
 40
 05
-8c
+95
 20
 40
 41
@@ -5547,7 +5583,7 @@
 20
 40
 05
-8c
+95
 20
 40
 41
@@ -5567,7 +5603,7 @@
 20
 40
 05
-8c
+95
 20
 40
 41
@@ -5611,7 +5647,7 @@
 c0
 7f
 85
-7b
+84
 20
 20
 41
@@ -5623,7 +5659,7 @@
 20
 40
 05
-8f
+98
 68
 48
 c9
@@ -5663,7 +5699,7 @@
 c0
 7f
 85
-88
+91
 20
 20
 41
@@ -5675,7 +5711,7 @@
 20
 40
 05
-8f
+98
 68
 48
 c9
@@ -5759,7 +5795,7 @@
 20
 40
 05
-8f
+98
 68
 48
 c9
@@ -5791,11 +5827,11 @@
 20
 40
 05
-b0
+b9
 20
 40
 05
-a9
+b2
 20
 20
 46
@@ -5807,11 +5843,11 @@
 c2
 94
 85
-ad
+b6
 c2
 9b
 85
-ad
+b6
 20
 60
 00
@@ -5851,7 +5887,7 @@
 20
 40
 05
-b7
+c0
 20
 20
 40
@@ -5879,7 +5915,7 @@
 c0
 7f
 85
-be
+c7
 20
 20
 40
@@ -5891,7 +5927,7 @@
 20
 40
 05
-8f
+98
 68
 48
 c9
@@ -5967,7 +6003,7 @@
 c5
 13
 05
-d4
+dd
 6f
 e0
 c8
@@ -5979,7 +6015,7 @@
 24
 21
 05
-ee
+f7
 6f
 e0
 c8
@@ -5991,7 +6027,7 @@
 24
 21
 05
-dc
+e5
 6f
 e0
 c8
@@ -5999,7 +6035,7 @@
 c0
 00
 05
-ef
+f8
 20
 60
 00
@@ -6035,7 +6071,7 @@
 c5
 13
 05
-e5
+ee
 6f
 e0
 c8
@@ -6067,7 +6103,7 @@
 c0
 01
 05
-f6
+ff
 c0
 00
 a7
@@ -6087,7 +6123,7 @@
 c0
 01
 85
-f5
+fe
 1f
 e0
 fe
@@ -6103,11 +6139,11 @@
 c0
 01
 05
-f6
+ff
 20
 20
 05
-f6
+ff
 70
 41
 e8
@@ -6116,8 +6152,8 @@
 60
 00
 00
-bb
-ca
+b1
+f6
 aa
 55
 40
@@ -7501,44 +7537,8 @@
 55
 19
 a4
-81
-b2
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+a3
+a0
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-b6
-dc
+9b
+19
Index: output/program.lis
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/Only_LE_M-B12/output/program.lis	(revision 4961)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/Only_LE_M-B12/output/program.lis	(working copy)
@@ -18,16 +18,16 @@
 000f c0650258 beq patch19_2 ,p_mouse_lpm_before_common 
 0010 c06600cb beq patch19_4 ,p_mouse_adc_read_start 
 0011 c067051b beq patch19_6 ,p_mouse_motion 
-0012 c06785c2 beq patch19_7 ,p_mouse_dpi_process 
+0012 c06785cb beq patch19_7 ,p_mouse_dpi_process 
 0013 c0680352 beq patch1a_0 ,p_mouse_seting_dpi 
-0014 c0688559 beq patch1a_1 ,p_mouse_check_key_gpio 
+0014 c0688561 beq patch1a_1 ,p_mouse_check_key_gpio 
 0015 c0698369 beq patch1a_3 ,p_mouse_init_sunt 
-0016 c06a0541 beq patch1a_4 ,p_mouse_sensor_poweron 
+0016 c06a0549 beq patch1a_4 ,p_mouse_sensor_poweron 
 0017 c06b027b beq patch1a_6 ,p_mouse_priority_bb_event 
 0018 c06c8397 beq patch1b_1 ,p_mouse_bb_event_timer 
 0019 c06d04a3 beq patch1b_2 ,p_mouse_start_discovery 
 001a c06d84ad beq patch1b_3 ,p_mouse_stop_discovery 
-001b c06f05a5 beq patch1b_6 ,p_mouse_idle 
+001b c06f05ae beq patch1b_6 ,p_mouse_idle 
 001c c06f8060 beq patch1b_7 ,p_mouse_ready_reconnection_by_button 
 001d c0708059 beq patch1c_1 ,p_mouse_led_off 
 001e c0710056 beq patch1c_2 ,p_mouse_led_on 
@@ -51,7 +51,7 @@
 002e c07501ca beq patch3d_2 ,p_g24_transmit_no_interrupt 
 002f c07581f7 beq patch3d_3 ,p_g24_transmit_hop_process 
 0030 c076050e beq patch3d_4 ,p_g24_lpm_wait 
-0031 c07685ca beq patch3d_5 ,p_power_ctrl_start 
+0031 c07685d3 beq patch3d_5 ,p_power_ctrl_start 
 0032 2020137c branch loop 
 
 p_lpm_dispatch:
@@ -300,7 +300,7 @@
 00e9 704cc80a jam 10 ,mem_mouse_low_led_blink_count 
 00ea 704cc702 jam 2 ,mem_mouse_low_flag 
 00eb 704c4f00 jam 0 ,mem_adc_low_volatage_led_timer_count_new 
-00ec 20200550 branch p_mouse_sensor_powerdown 
+00ec 20200558 branch p_mouse_sensor_powerdown 
 
 p_mouse_adc_no_low_voltage:
 00ed 6fe0cc40 fetch 1 ,mem_mouse_led_new_interface_config 
@@ -415,7 +415,7 @@
 0140 20403d8a call mouse_usb_check_enable 
 0141 20404728 call mouse_drawing_optima_init 
 0142 20400178 call p_mouse_cb_fuction 
-0143 20400550 call p_mouse_sensor_powerdown 
+0143 20400558 call p_mouse_sensor_powerdown 
 0144 20203bc9 branch mouse_init + 8 
 
 p_mouse_customer_key_connect_vin:
@@ -570,7 +570,7 @@
 01bb 67e0cba4 store 1 ,mem_mouse_search_dongle_action 
 01bc 6fe14bbc fetch 2 ,mem_mouse_24g_search_dongle_time_init 
 01bd 67e14ab2 store 2 ,mem_mouse_no_data_timer 
-01be 20200550 branch p_mouse_sensor_powerdown 
+01be 20200558 branch p_mouse_sensor_powerdown 
 
 p_mouse_24g_search_dongle_success:
 01bf 6fe0c8a7 fetch 1 ,mem_24g_abort_pac 
@@ -658,7 +658,7 @@
 01fd 684a488d fetcht 4 ,mem_24g_fast_conn_addr 
 01fe 98467c00 isub temp ,null 
 01ff 2022a2cb branch g24_ch ,zero 
-0200 204005ef call p_power_ctrl_txpower_incrs 
+0200 204005f8 call p_power_ctrl_txpower_incrs 
 0201 20402724 call power_ctrl_pac_succ_decrs 
 0202 202022cb branch g24_ch 
 
@@ -709,8 +709,8 @@
 0220 58000006 setarg pan_reg_config 
 0221 20405b0d call twspi_read 
 0222 c281be23 bbit1 3 ,mouse_app_enter_hibernate + 3 
-0223 2040054b call p_mouse_sensor_reset 
-0224 20400550 call p_mouse_sensor_powerdown 
+0223 20400553 call p_mouse_sensor_reset 
+0224 20400558 call p_mouse_sensor_powerdown 
 0225 20203e23 branch mouse_app_enter_hibernate + 3 
 
 p_mouse_setgpio_hibernate:
@@ -723,7 +723,7 @@
 022c 6848c910 fetcht 1 ,mem_matrix_public_gpio 
 022d 20406042 call gpio_clr_wake 
 022e 6fe0c920 fetch 1 ,mem_mouse_sensor_sdio_gpio 
-022f 2040058c call p_mouse_gpio_config_output_high 
+022f 20400595 call p_mouse_gpio_config_output_high 
 0230 d8400003 arg 3 ,temp 
 0231 20403f56 call mouse_gpio_config_input_pu 
 0232 20400258 call p_mouse_lpm_before_common 
@@ -788,7 +788,7 @@
 025b 20406050 call gpio_config_input 
 025c 20403f88 call mouse_wheel_check 
 025d 6fe0c91f fetch 1 ,mem_mouse_sensor_sclk_gpio 
-025e 2040058c call p_mouse_gpio_config_output_high 
+025e 20400595 call p_mouse_gpio_config_output_high 
 025f 20203e44 branch mouse_lpm_before_common + 4 
 
 p_g24_nodata_transmit:
@@ -949,7 +949,7 @@
 02d2 58000000 setarg 0 
 02d3 67e3c8d0 store 7 ,mem_mouse_key 
 02d4 704be101 jam 1 ,mem_sensor_shutdown_flag 
-02d5 20400550 call p_mouse_sensor_powerdown 
+02d5 20400558 call p_mouse_sensor_powerdown 
 02d6 20200265 branch p_g24_long_sleep 
 
 p_g24_pair_dispatch:
@@ -1177,7 +1177,7 @@
 0378 20404232 call mouse_sensor_reset 
 0379 20407d12 call delay_10ms 
 037a da604ca7 arg mem_sensor_8650_init_new ,regc 
-037b 20200546 branch p_mouse_sensor_end 
+037b 2020054e branch p_mouse_sensor_end 
 
 p_mouse_3205_3t_init_param:
 037c 58000049 setarg 0x49 
@@ -1588,7 +1588,7 @@
 
 p_mouse_commbination_key_start:
 0489 6048cb9d storet 1 ,mem_mouse_commbination_key 
-048a 20400559 call p_mouse_check_key_gpio 
+048a 20400561 call p_mouse_check_key_gpio 
 048b 1fe17e07 and pdata ,0x07 ,pdata 
 048c 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
 048d 98467c00 isub temp ,null 
@@ -1786,312 +1786,327 @@
 051b 78547c00 disable user 
 051c 58000000 setarg 0 
 051d 67e348d1 store 6 ,mem_mouse_x 
-051e 2040052c call p_mouse_check_sensor_data 
+051e 20400534 call p_mouse_check_sensor_data 
 051f 58000089 setarg 0x0089 
 0520 20405b0c call twspi_write 
 0521 20400354 call p_mouse_seting_sensor_type 
 0522 20403f7e call mouse_zwheel 
 0523 20403f83 call mouse_t_zwheel 
-0524 20400557 call p_mouse_key 
-0525 6fe0c8d0 fetch 1 ,mem_mouse_key 
-0526 1fe17e1f and_into 0x1f ,pdata 
-0527 67e0c8d0 store 1 ,mem_mouse_key 
-0528 2434053b nbranch p_mouse_motion_nodata ,user 
-0529 2040053d call p_mouse_drawing_optima 
-052a 20400112 call p_mouse_low_led_blink_init 
-052b 20204544 branch mouse_no_data_timer_init 
+0524 2040055f call p_mouse_key 
+0525 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+0526 1fe67cff sub pdata ,0xff ,null 
+0527 2022852b branch p_mouse_motion_end ,zero 
+0528 6fe0c8d0 fetch 1 ,mem_mouse_key 
+0529 1fe17e1f and_into 0x1f ,pdata 
+052a 67e0c8d0 store 1 ,mem_mouse_key 
+
+p_mouse_motion_end:
+052b 24340543 nbranch p_mouse_motion_nodata ,user 
+052c 20400545 call p_mouse_drawing_optima 
+052d 20400112 call p_mouse_low_led_blink_init 
+052e 20204544 branch mouse_no_data_timer_init 
+
+p_mouse_fast_conn_test:
+052f 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+0530 c1ff8000 rtnne 0xff 
+
+p_mouse_select_device_by_pb_button_fast_conn:
+0531 6fe0c91b fetch 1 ,mem_config_select_device_button_gpio 
+0532 c17f8000 rtneq gpio_disable 
+0533 2020465d branch mouse_select_device_by_pb_button + 3 
 
 p_mouse_check_sensor_data:
-052c 6fe0c4ac fetch 1 ,mem_spi_write_flash_sm 
-052d c1800000 rtnne flash_sm_no_buys 
-052e 6fe0c927 fetch 1 ,mem_config_sensor_type 
-052f c0058531 beq ka8g2 ,p_mouse_ka8g2_sensor_motion 
-0530 20204243 branch mouse_check_sensor_data + 3 
+0534 6fe0c4ac fetch 1 ,mem_spi_write_flash_sm 
+0535 c1800000 rtnne flash_sm_no_buys 
+0536 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0537 c0058539 beq ka8g2 ,p_mouse_ka8g2_sensor_motion 
+0538 20204243 branch mouse_check_sensor_data + 3 
 
 p_mouse_ka8g2_sensor_motion:
-0531 204042c4 call mouse_clear_sensor_data 
-0532 6fe0c911 fetch 1 ,mem_sensor_motion_gpio 
-0533 c07fc294 beq gpio_disable ,mouse_pka8g2_sensor_motion_1 
-0534 6848c911 fetcht 1 ,mem_sensor_motion_gpio 
-0535 20406059 call gpio_get_bit 
-0536 24608000 nrtn true 
+0539 204042c4 call mouse_clear_sensor_data 
+053a 6fe0c911 fetch 1 ,mem_sensor_motion_gpio 
+053b c07fc294 beq gpio_disable ,mouse_pka8g2_sensor_motion_1 
+053c 6848c911 fetcht 1 ,mem_sensor_motion_gpio 
+053d 20406059 call gpio_get_bit 
+053e 24608000 nrtn true 
 
 p_mouse_pka8g2_sensor_motion_1:
-0537 58000000 setarg pan_reg_pid_l 
-0538 20405b0d call twspi_read 
-0539 c0ac41b2 bne pka8g2_id1 ,mouse_twspi_reset 
-053a 20204279 branch mouse_p3212_sensor_motion_2 
+053f 58000000 setarg pan_reg_pid_l 
+0540 20405b0d call twspi_read 
+0541 c0ac41b2 bne pka8g2_id1 ,mouse_twspi_reset 
+0542 20204279 branch mouse_p3212_sensor_motion_2 
 
 p_mouse_motion_nodata:
-053b 20404728 call mouse_drawing_optima_init 
-053c 20600000 rtn 
+0543 20404728 call mouse_drawing_optima_init 
+0544 20600000 rtn 
 
 p_mouse_drawing_optima:
-053d 6fe0c927 fetch 1 ,mem_config_sensor_type 
-053e c1018000 rtneq p3212 
-053f c1058000 rtneq ka8g2 
-0540 2020471a branch mouse_drawing_optima 
+0545 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0546 c1018000 rtneq p3212 
+0547 c1058000 rtneq ka8g2 
+0548 2020471a branch mouse_drawing_optima 
 
 p_mouse_sensor_poweron:
-0541 20403f65 call mouse_sensor_spi_init 
-0542 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0543 c0058548 beq ka8g2 ,p_mouse_ka8g2_sensor_init 
-0544 20404232 call mouse_sensor_reset 
-0545 da604aa3 arg mem_sensor_poweron_init ,regc 
+0549 20403f65 call mouse_sensor_spi_init 
+054a 6fe0c927 fetch 1 ,mem_config_sensor_type 
+054b c0058550 beq ka8g2 ,p_mouse_ka8g2_sensor_init 
+054c 20404232 call mouse_sensor_reset 
+054d da604aa3 arg mem_sensor_poweron_init ,regc 
 
 p_mouse_sensor_end:
-0546 2040422b call mouse_sensor_wr_seq 
-0547 20200354 branch p_mouse_seting_sensor_type 
+054e 2040422b call mouse_sensor_wr_seq 
+054f 20200354 branch p_mouse_seting_sensor_type 
 
 p_mouse_ka8g2_sensor_init:
-0548 2040054e call p_mouse_ka8g2_sensor_reset 
-0549 da604be3 arg mem_ka8g2_sensor_poweron_init ,regc 
-054a 20200546 branch p_mouse_sensor_end 
+0550 20400556 call p_mouse_ka8g2_sensor_reset 
+0551 da604be3 arg mem_ka8g2_sensor_poweron_init ,regc 
+0552 2020054e branch p_mouse_sensor_end 
 
 p_mouse_sensor_reset:
-054b 6fe0c927 fetch 1 ,mem_config_sensor_type 
-054c c005854e beq ka8g2 ,p_mouse_ka8g2_sensor_reset 
-054d 20204232 branch mouse_sensor_reset 
+0553 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0554 c0058556 beq ka8g2 ,p_mouse_ka8g2_sensor_reset 
+0555 20204232 branch mouse_sensor_reset 
 
 p_mouse_ka8g2_sensor_reset:
-054e 58009706 setarg 0x9706 
-054f 20204233 branch mouse_sensor_reset_end 
+0556 58009706 setarg 0x9706 
+0557 20204233 branch mouse_sensor_reset_end 
 
 p_mouse_sensor_powerdown:
-0550 204041a7 call mouse_init_sunt 
-0551 20403f65 call mouse_sensor_spi_init 
-0552 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0553 c0058555 beq ka8g2 ,p_mouse_ka8g2_sensor_powerdown 
-0554 2020423e branch mouse_sensor_powerdown_end 
+0558 204041a7 call mouse_init_sunt 
+0559 20403f65 call mouse_sensor_spi_init 
+055a 6fe0c927 fetch 1 ,mem_config_sensor_type 
+055b c005855d beq ka8g2 ,p_mouse_ka8g2_sensor_powerdown 
+055c 2020423e branch mouse_sensor_powerdown_end 
 
 p_mouse_ka8g2_sensor_powerdown:
-0555 58001f06 setarg 0x1f06 
-0556 20205b0c branch twspi_write 
+055d 58001f06 setarg 0x1f06 
+055e 20205b0c branch twspi_write 
 
 p_mouse_key:
-0557 20400559 call p_mouse_check_key_gpio 
-0558 202040dd branch mouse_key + 1 
+055f 20400561 call p_mouse_check_key_gpio 
+0560 202040dd branch mouse_key + 1 
 
 p_mouse_check_key_gpio:
-0559 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
-055a 245a4121 ncall mouse_check_key_gpio_once ,blank 
-055b da200000 arg 0 ,rega 
-055c 20400563 call p_mouse_check_lkey_gpio 
-055d 20400568 call p_mouse_check_rkey_gpio 
-055e 2040056d call p_mouse_check_mkey_gpio 
-055f 20400572 call p_mouse_check_bkkey_gpio 
-0560 2040057f call p_mouse_check_fwkey_gpio 
-0561 20400592 call p_mouse_check_customerkey_gpio 
-0562 2020411f branch mouse_check_key_gpio_next + 1 
+0561 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+0562 245a4121 ncall mouse_check_key_gpio_once ,blank 
+0563 da200000 arg 0 ,rega 
+0564 2040056c call p_mouse_check_lkey_gpio 
+0565 20400571 call p_mouse_check_rkey_gpio 
+0566 20400576 call p_mouse_check_mkey_gpio 
+0567 2040057b call p_mouse_check_bkkey_gpio 
+0568 20400588 call p_mouse_check_fwkey_gpio 
+0569 2040059b call p_mouse_check_customerkey_gpio 
+056a 2040052f call p_mouse_fast_conn_test 
+056b 2020411f branch mouse_check_key_gpio_next + 1 
 
 p_mouse_check_lkey_gpio:
-0563 6fe0c918 fetch 1 ,mem_lbutton_gpio 
-0564 2040058c call p_mouse_gpio_config_output_high 
-0565 20404124 call mouse_check_lkey_gpio 
-0566 6848c918 fetcht 1 ,mem_lbutton_gpio 
-0567 20203f56 branch mouse_gpio_config_input_pu 
+056c 6fe0c918 fetch 1 ,mem_lbutton_gpio 
+056d 20400595 call p_mouse_gpio_config_output_high 
+056e 20404124 call mouse_check_lkey_gpio 
+056f 6848c918 fetcht 1 ,mem_lbutton_gpio 
+0570 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_rkey_gpio:
-0568 6fe0c919 fetch 1 ,mem_rbutton_gpio 
-0569 2040058c call p_mouse_gpio_config_output_high 
-056a 2040412a call mouse_check_rkey_gpio 
-056b 6848c919 fetcht 1 ,mem_rbutton_gpio 
-056c 20203f56 branch mouse_gpio_config_input_pu 
+0571 6fe0c919 fetch 1 ,mem_rbutton_gpio 
+0572 20400595 call p_mouse_gpio_config_output_high 
+0573 2040412a call mouse_check_rkey_gpio 
+0574 6848c919 fetcht 1 ,mem_rbutton_gpio 
+0575 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_mkey_gpio:
-056d 6fe0c91a fetch 1 ,mem_mbutton_gpio 
-056e 2040058c call p_mouse_gpio_config_output_high 
-056f 20404130 call mouse_check_mkey_gpio 
-0570 6848c91a fetcht 1 ,mem_mbutton_gpio 
-0571 20203f56 branch mouse_gpio_config_input_pu 
+0576 6fe0c91a fetch 1 ,mem_mbutton_gpio 
+0577 20400595 call p_mouse_gpio_config_output_high 
+0578 20404130 call mouse_check_mkey_gpio 
+0579 6848c91a fetcht 1 ,mem_mbutton_gpio 
+057a 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_bkkey_gpio:
-0572 6fe0c90d fetch 1 ,mem_bk_button_gpio 
-0573 c17f8000 rtneq gpio_disable 
-0574 704b9603 jam mouse_bk_key ,mem_mouse_key_temp 
-0575 6fe0cb91 fetch 1 ,mem_mouse_bkkey_press_status 
-0576 1fe22600 copy pdata ,regc 
-0577 6848c90d fetcht 1 ,mem_bk_button_gpio 
-0578 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-0579 c07f857b beq gpio_disable ,p_mouse_3io6key_bk_check 
-057a 2020413e branch mouse_check_bkkey_gpio_next 
+057b 6fe0c90d fetch 1 ,mem_bk_button_gpio 
+057c c17f8000 rtneq gpio_disable 
+057d 704b9603 jam mouse_bk_key ,mem_mouse_key_temp 
+057e 6fe0cb91 fetch 1 ,mem_mouse_bkkey_press_status 
+057f 1fe22600 copy pdata ,regc 
+0580 6848c90d fetcht 1 ,mem_bk_button_gpio 
+0581 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+0582 c07f8584 beq gpio_disable ,p_mouse_3io6key_bk_check 
+0583 2020413e branch mouse_check_bkkey_gpio_next 
 
 p_mouse_3io6key_bk_check:
-057b 6fe0c90d fetch 1 ,mem_bk_button_gpio 
-057c 2040058f call p_mouse_gpio_config_output_low 
-057d 6848c90d fetcht 1 ,mem_bk_button_gpio 
-057e 2020414b branch mouse_3io6key_bk_check 
+0584 6fe0c90d fetch 1 ,mem_bk_button_gpio 
+0585 20400598 call p_mouse_gpio_config_output_low 
+0586 6848c90d fetcht 1 ,mem_bk_button_gpio 
+0587 2020414b branch mouse_3io6key_bk_check 
 
 p_mouse_check_fwkey_gpio:
-057f 6fe0c90e fetch 1 ,mem_fw_button_gpio 
-0580 c17f8000 rtneq gpio_disable 
-0581 704b9604 jam mouse_fw_key ,mem_mouse_key_temp 
-0582 6fe0cb92 fetch 1 ,mem_mouse_fwkey_press_status 
-0583 1fe22600 copy pdata ,regc 
-0584 6848c90e fetcht 1 ,mem_fw_button_gpio 
-0585 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-0586 c07f8588 beq gpio_disable ,p_mouse_3io6key_fw_check 
-0587 20204157 branch mouse_check_fwkey_gpio_next 
+0588 6fe0c90e fetch 1 ,mem_fw_button_gpio 
+0589 c17f8000 rtneq gpio_disable 
+058a 704b9604 jam mouse_fw_key ,mem_mouse_key_temp 
+058b 6fe0cb92 fetch 1 ,mem_mouse_fwkey_press_status 
+058c 1fe22600 copy pdata ,regc 
+058d 6848c90e fetcht 1 ,mem_fw_button_gpio 
+058e 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+058f c07f8591 beq gpio_disable ,p_mouse_3io6key_fw_check 
+0590 20204157 branch mouse_check_fwkey_gpio_next 
 
 p_mouse_3io6key_fw_check:
-0588 6fe0c90e fetch 1 ,mem_fw_button_gpio 
-0589 2040058f call p_mouse_gpio_config_output_low 
-058a 6848c90e fetcht 1 ,mem_fw_button_gpio 
-058b 20204164 branch mouse_3io6key_fw_check 
+0591 6fe0c90e fetch 1 ,mem_fw_button_gpio 
+0592 20400598 call p_mouse_gpio_config_output_low 
+0593 6848c90e fetcht 1 ,mem_fw_button_gpio 
+0594 20204164 branch mouse_3io6key_fw_check 
 
 p_mouse_gpio_config_output_high:
-058c c17f8000 rtneq gpio_disable 
-058d d840003f arg gpcfg_output_high ,temp 
-058e 20206093 branch gpio_config_function_int 
+0595 c17f8000 rtneq gpio_disable 
+0596 d840003f arg gpcfg_output_high ,temp 
+0597 20206093 branch gpio_config_function_int 
 
 p_mouse_gpio_config_output_low:
-058f c17f8000 rtneq gpio_disable 
-0590 d840003e arg gpcfg_output_low ,temp 
-0591 20206093 branch gpio_config_function_int 
+0598 c17f8000 rtneq gpio_disable 
+0599 d840003e arg gpcfg_output_low ,temp 
+059a 20206093 branch gpio_config_function_int 
 
 p_mouse_check_customerkey_gpio:
-0592 6fe0ccc6 fetch 1 ,mem_mouse_customer_key_connect_vin_flag 
-0593 203a416a branch mouse_check_customerkey_gpio ,blank 
-0594 704b8b00 jam 0 ,mem_customer_key 
-0595 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0596 c40a8000 rtnbit0 mouse_enable_keyboard 
-0597 6fe0c912 fetch 1 ,mem_customer_key_gpio 
-0598 793ffe07 set0 gpio_active_bit ,pdata 
-0599 67e0c912 store 1 ,mem_customer_key_gpio 
-059a 704b9607 jam mouse_customer_key ,mem_mouse_key_temp 
-059b 6fe0cb95 fetch 1 ,mem_mouse_customerkey_press_status 
-059c 1fe22600 copy pdata ,regc 
+059b 6fe0ccc6 fetch 1 ,mem_mouse_customer_key_connect_vin_flag 
+059c 203a416a branch mouse_check_customerkey_gpio ,blank 
+059d 704b8b00 jam 0 ,mem_customer_key 
+059e 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+059f c40a8000 rtnbit0 mouse_enable_keyboard 
+05a0 6fe0c912 fetch 1 ,mem_customer_key_gpio 
+05a1 793ffe07 set0 gpio_active_bit ,pdata 
+05a2 67e0c912 store 1 ,mem_customer_key_gpio 
+05a3 704b9607 jam mouse_customer_key ,mem_mouse_key_temp 
+05a4 6fe0cb95 fetch 1 ,mem_mouse_customerkey_press_status 
+05a5 1fe22600 copy pdata ,regc 
 
 p_mouse_3io6key_customerkey_check:
-059d 6fe0c912 fetch 1 ,mem_customer_key_gpio 
-059e 2040058f call p_mouse_gpio_config_output_low 
-059f 6848c912 fetcht 1 ,mem_customer_key_gpio 
-05a0 20404195 call mouse_3io6key_check 
-05a1 67e0cb95 store 1 ,mem_mouse_customerkey_press_status 
-05a2 20404174 call mouse_check_customerkey_state 
-05a3 6848c912 fetcht 1 ,mem_customer_key_gpio 
-05a4 20203f56 branch mouse_gpio_config_input_pu 
+05a6 6fe0c912 fetch 1 ,mem_customer_key_gpio 
+05a7 20400598 call p_mouse_gpio_config_output_low 
+05a8 6848c912 fetcht 1 ,mem_customer_key_gpio 
+05a9 20404195 call mouse_3io6key_check 
+05aa 67e0cb95 store 1 ,mem_mouse_customerkey_press_status 
+05ab 20404174 call mouse_check_customerkey_state 
+05ac 6848c912 fetcht 1 ,mem_customer_key_gpio 
+05ad 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_idle:
-05a5 20407936 call ui_check_paring_button 
-05a6 204005b0 call p_mouse_dpi_check 
-05a7 204005a9 call p_mouse_select_device_check 
-05a8 20204650 branch mouse_idle + 5 
+05ae 20407936 call ui_check_paring_button 
+05af 204005b9 call p_mouse_dpi_check 
+05b0 204005b2 call p_mouse_select_device_check 
+05b1 20204650 branch mouse_idle + 5 
 
 p_mouse_select_device_check:
-05a9 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-05aa c29485ad bbit1 mouse_enable_select_device_by_pb_button ,p_mouse_select_device_by_pb_button_check_judge 
-05ab c29b85ad bbit1 mouse_enable_pb_button_long_press_disconvery ,p_mouse_select_device_by_pb_button_check_judge 
-05ac 20600000 rtn 
+05b2 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+05b3 c29485b6 bbit1 mouse_enable_select_device_by_pb_button ,p_mouse_select_device_by_pb_button_check_judge 
+05b4 c29b85b6 bbit1 mouse_enable_pb_button_long_press_disconvery ,p_mouse_select_device_by_pb_button_check_judge 
+05b5 20600000 rtn 
 
 p_mouse_select_device_by_pb_button_check_judge:
-05ad 6fe1478c fetch 2 ,mem_ui_state_map 
-05ae c2830203 bbit1 ui_state_bt_discovery ,p_mouse_select_device_by_pb_button_check_once 
-05af 2020465a branch mouse_select_device_by_pb_button 
+05b6 6fe1478c fetch 2 ,mem_ui_state_map 
+05b7 c2830203 bbit1 ui_state_bt_discovery ,p_mouse_select_device_by_pb_button_check_once 
+05b8 2020465a branch mouse_select_device_by_pb_button 
 
 p_mouse_dpi_check:
-05b0 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
-05b1 c17f8000 rtneq gpio_disable 
-05b2 da200000 arg 0 ,rega 
-05b3 704b9605 jam mouse_dpi_key ,mem_mouse_key_temp 
-05b4 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-05b5 204005b7 call p_mouse_dpi_key_check 
-05b6 2020402f branch mouse_dpi_check_next 
+05b9 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
+05ba c17f8000 rtneq gpio_disable 
+05bb da200000 arg 0 ,rega 
+05bc 704b9605 jam mouse_dpi_key ,mem_mouse_key_temp 
+05bd 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+05be 204005c0 call p_mouse_dpi_key_check 
+05bf 2020402f branch mouse_dpi_check_next 
 
 p_mouse_dpi_key_check:
-05b7 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-05b8 c2964048 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
-05b9 6fe0cb93 fetch 1 ,mem_mouse_dpikey_press_status 
-05ba 1fe22600 copy pdata ,regc 
-05bb 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-05bc c07f85be beq gpio_disable ,p_mouse_3io6key_dpi_check 
-05bd 2020403f branch mouse_dpi_key_check_next 
+05c0 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+05c1 c2964048 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
+05c2 6fe0cb93 fetch 1 ,mem_mouse_dpikey_press_status 
+05c3 1fe22600 copy pdata ,regc 
+05c4 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+05c5 c07f85c7 beq gpio_disable ,p_mouse_3io6key_dpi_check 
+05c6 2020403f branch mouse_dpi_key_check_next 
 
 p_mouse_3io6key_dpi_check:
-05be 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
-05bf 2040058f call p_mouse_gpio_config_output_low 
-05c0 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-05c1 20204195 branch mouse_3io6key_check 
+05c7 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
+05c8 20400598 call p_mouse_gpio_config_output_low 
+05c9 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+05ca 20204195 branch mouse_3io6key_check 
 
 p_mouse_dpi_process:
-05c2 20404072 call mouse_dpi_ghost_check 
-05c3 20740000 rtn user 
+05cb 20404072 call mouse_dpi_ghost_check 
+05cc 20740000 rtn user 
 
 p_mouse_dpi_process_next:
-05c4 6fe0c992 fetch 1 ,mem_mouse_dpi 
-05c5 1fe0fe01 increase 1 ,pdata 
-05c6 1fe17e03 and pdata ,0x03 ,pdata 
+05cd 6fe0c992 fetch 1 ,mem_mouse_dpi 
+05ce 1fe0fe01 increase 1 ,pdata 
+05cf 1fe17e03 and pdata ,0x03 ,pdata 
 
 p_mouse_dpi_store:
-05c7 67e0c992 store 1 ,mem_mouse_dpi 
-05c8 20400352 call p_mouse_seting_dpi 
-05c9 20204643 branch mouse_store_eerpom_dpi 
+05d0 67e0c992 store 1 ,mem_mouse_dpi 
+05d1 20400352 call p_mouse_seting_dpi 
+05d2 20204643 branch mouse_store_eerpom_dpi 
 
 p_power_ctrl_start:
-05ca 6fe1478c fetch 2 ,mem_ui_state_map 
-05cb c3858000 rtnbit1 ui_state_ble_adv 
-05cc c3838000 rtnbit1 ui_state_bt_reconnect 
-05cd c3830000 rtnbit1 ui_state_bt_discovery 
-05ce 6a214899 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
-05cf 204025cb call rssi_average 
-05d0 6048c8c7 storet 1 ,mem_rssi_avg_received 
-05d1 6fe0c8cc fetch 1 ,mem_rssi_dis_max_24g 
-05d2 c51305d4 bmark1 mark_24g ,p_power_ctrl_start_next 
-05d3 6fe0c8cf fetch 1 ,mem_rssi_dis_max_ble 
+05d3 6fe1478c fetch 2 ,mem_ui_state_map 
+05d4 c3858000 rtnbit1 ui_state_ble_adv 
+05d5 c3838000 rtnbit1 ui_state_bt_reconnect 
+05d6 c3830000 rtnbit1 ui_state_bt_discovery 
+05d7 6a214899 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
+05d8 204025cb call rssi_average 
+05d9 6048c8c7 storet 1 ,mem_rssi_avg_received 
+05da 6fe0c8cc fetch 1 ,mem_rssi_dis_max_24g 
+05db c51305dd bmark1 mark_24g ,p_power_ctrl_start_next 
+05dc 6fe0c8cf fetch 1 ,mem_rssi_dis_max_ble 
 
 p_power_ctrl_start_next:
-05d4 98467c00 isub temp ,null 
-05d5 242105ee nbranch p_power_ctrl_txpower_incrs_force ,positive 
-05d6 6fe0c8c9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-05d7 1fe67c02 sub pdata ,2 ,null 
-05d8 242105dc nbranch p_power_ctrl_txpower_decrs_check ,positive 
-05d9 6fe0c8c9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-05da c00005ef beq 0 ,p_power_ctrl_txpower_incrs 
-05db 20600000 rtn 
+05dd 98467c00 isub temp ,null 
+05de 242105f7 nbranch p_power_ctrl_txpower_incrs_force ,positive 
+05df 6fe0c8c9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+05e0 1fe67c02 sub pdata ,2 ,null 
+05e1 242105e5 nbranch p_power_ctrl_txpower_decrs_check ,positive 
+05e2 6fe0c8c9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+05e3 c00005f8 beq 0 ,p_power_ctrl_txpower_incrs 
+05e4 20600000 rtn 
 
 p_power_ctrl_txpower_decrs_check:
-05dc 6fe0c8c9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-05dd 6848c8ca fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
-05de 98467c00 isub temp ,null 
-05df 24628000 nrtn zero 
-05e0 7048c900 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+05e5 6fe0c8c9 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+05e6 6848c8ca fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
+05e7 98467c00 isub temp ,null 
+05e8 24628000 nrtn zero 
+05e9 7048c900 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 p_power_ctrl_txpower_decrs:
-05e1 6848c8c7 fetcht 1 ,mem_rssi_avg_received 
-05e2 6fe0c8cb fetch 1 ,mem_rssi_dis_min_24g 
-05e3 c51305e5 bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
-05e4 6fe0c8ce fetch 1 ,mem_rssi_dis_min_ble 
+05ea 6848c8c7 fetcht 1 ,mem_rssi_avg_received 
+05eb 6fe0c8cb fetch 1 ,mem_rssi_dis_min_24g 
+05ec c51305ee bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
+05ed 6fe0c8ce fetch 1 ,mem_rssi_dis_min_ble 
 
 p_power_ctrl_txpower_decrs_next:
-05e5 98467c00 isub temp ,null 
-05e6 24610000 nrtn positive 
-05e7 6fe0c8c8 fetch 1 ,mem_power_ctrl_level 
-05e8 c000271b beq 0 ,power_ctrl_decrs_level0 
-05e9 1fe0ffff increase -1 ,pdata 
-05ea 67e0c8c8 store 1 ,mem_power_ctrl_level 
-05eb c00105f6 beq 2 ,p_power_ctrl_decrs_level2 
-05ec c000a711 beq 1 ,power_ctrl_decrs_level1 
-05ed 2020271b branch power_ctrl_decrs_level0 
+05ee 98467c00 isub temp ,null 
+05ef 24610000 nrtn positive 
+05f0 6fe0c8c8 fetch 1 ,mem_power_ctrl_level 
+05f1 c000271b beq 0 ,power_ctrl_decrs_level0 
+05f2 1fe0ffff increase -1 ,pdata 
+05f3 67e0c8c8 store 1 ,mem_power_ctrl_level 
+05f4 c00105ff beq 2 ,p_power_ctrl_decrs_level2 
+05f5 c000a711 beq 1 ,power_ctrl_decrs_level1 
+05f6 2020271b branch power_ctrl_decrs_level0 
 
 p_power_ctrl_txpower_incrs_force:
-05ee 7048c900 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+05f7 7048c900 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 p_power_ctrl_txpower_incrs:
-05ef 6fe0c8c8 fetch 1 ,mem_power_ctrl_level 
-05f0 c00185f5 beq 3 ,p_power_ctrl_incrs_level3 
-05f1 1fe0fe01 increase 1 ,pdata 
-05f2 67e0c8c8 store 1 ,mem_power_ctrl_level 
-05f3 c000a711 beq 1 ,power_ctrl_incrs_level1 
-05f4 c00105f6 beq 2 ,p_power_ctrl_incrs_level2 
+05f8 6fe0c8c8 fetch 1 ,mem_power_ctrl_level 
+05f9 c00185fe beq 3 ,p_power_ctrl_incrs_level3 
+05fa 1fe0fe01 increase 1 ,pdata 
+05fb 67e0c8c8 store 1 ,mem_power_ctrl_level 
+05fc c000a711 beq 1 ,power_ctrl_incrs_level1 
+05fd c00105ff beq 2 ,p_power_ctrl_incrs_level2 
 
 p_power_ctrl_incrs_level3:
-05f5 202005f6 branch p_power_ctrl_incrs_level2 
+05fe 202005ff branch p_power_ctrl_incrs_level2 
 
 p_power_ctrl_decrs_level2:
 
 p_power_ctrl_incrs_level2:
-05f6 7041e803 jam tx_power_3db ,mem_tx_power 
-05f7 20600000 rtn 
+05ff 7041e803 jam tx_power_3db ,mem_tx_power 
+0600 20600000 rtn 
               org 0x3bc1
 
 mouse_init:
Index: program/patch.prog
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/Only_LE_M-B12/program/patch.prog	(revision 4961)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/Only_LE_M-B12/program/patch.prog	(working copy)
@@ -2201,9 +2201,13 @@
 	call mouse_zwheel
 	call mouse_t_zwheel
 	call p_mouse_key
+	fetch 1,mem_mouse_bluetooth_fast_conn_flag
+	sub pdata,0xff,null
+	branch p_mouse_motion_end,zero
 	fetch 1,mem_mouse_key
 	and_into 0x1f,pdata
 	store 1,mem_mouse_key
+p_mouse_motion_end:
 	nbranch p_mouse_motion_nodata,user
 	call p_mouse_drawing_optima
 ifdef RGB_LED
@@ -2212,6 +2216,14 @@
 	call p_mouse_low_led_blink_init
 	branch mouse_no_data_timer_init
 
+p_mouse_fast_conn_test:
+	fetch 1,mem_mouse_bluetooth_fast_conn_flag
+	rtnne 0xff
+p_mouse_select_device_by_pb_button_fast_conn:
+	fetch 1,mem_config_select_device_button_gpio
+	rtneq GPIO_DISABLE
+	branch mouse_select_device_by_pb_button+3
+
 p_mouse_check_sensor_data:
 	fetch 1,mem_spi_write_flash_sm
 	rtnne FLASH_SM_NO_BUYS
@@ -2334,6 +2346,7 @@
 	call p_mouse_check_firekey_gpio
 endif
 	call p_mouse_check_customerkey_gpio
+	call p_mouse_fast_conn_test
 	branch mouse_check_key_gpio_next+1
 
 p_mouse_check_lkey_gpio:
