Index: output/eeprom.dat
===================================================================
--- /YC1308AC/branch/mouse_project/public_3mode/output/eeprom.dat	(revision 457)
+++ /YC1308AC/branch/mouse_project/public_3mode/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-96
+d6
 04
 c2
 84
@@ -39,11 +39,11 @@
 c0
 64
 80
-78
+7b
 c0
 65
 00
-83
+86
 c0
 66
 00
@@ -51,19 +51,19 @@
 c0
 68
 00
-a5
+b5
 c0
 6b
 00
-8c
+8f
 c0
 6c
 80
-b6
+c6
 c0
 6d
-00
-f8
+01
+08
 20
 20
 13
@@ -78,20 +78,20 @@
 39
 c0
 43
-80
-ff
+81
+0f
 c0
 50
 81
-03
+13
 c0
 60
 01
-0d
+1d
 c0
 76
 01
-22
+32
 20
 20
 13
@@ -480,10 +480,22 @@
 20
 3b
 c5
+58
+00
+00
+06
+20
+40
+5b
+0d
+c2
+81
+be
+23
 20
 20
 3e
-23
+21
 20
 40
 42
@@ -571,19 +583,23 @@
 c0
 1e
 00
-a0
+b0
 c0
 02
 00
-99
+a9
 c0
 09
 80
-99
+a9
 c0
 19
 00
-92
+96
+c0
+22
+00
+9d
 20
 20
 43
@@ -595,7 +611,7 @@
 c0
 00
 80
-96
+9a
 70
 4b
 76
@@ -618,6 +634,54 @@
 73
 6f
 e0
+82
+c1
+1f
+e6
+7c
+0c
+24
+21
+43
+84
+67
+e1
+43
+72
+67
+e1
+43
+74
+6f
+e0
+82
+c3
+68
+48
+cb
+8a
+98
+46
+7c
+00
+20
+21
+43
+9a
+6f
+e0
+82
+c3
+67
+e0
+cb
+8a
+20
+20
+43
+86
+6f
+e0
 ca
 c1
 c0
@@ -671,7 +735,7 @@
 20
 40
 00
-a8
+b8
 20
 20
 40
@@ -723,7 +787,7 @@
 20
 3a
 00
-c6
+d6
 67
 e0
 cb
@@ -759,7 +823,7 @@
 20
 40
 00
-c3
+d3
 20
 40
 40
@@ -771,7 +835,7 @@
 20
 40
 00
-e3
+f3
 20
 40
 44
@@ -779,7 +843,7 @@
 20
 40
 00
-db
+eb
 20
 20
 44
@@ -791,7 +855,7 @@
 da
 40
 00
-c6
+d6
 20
 20
 31
@@ -847,11 +911,11 @@
 20
 41
 00
-d5
+e5
 24
 41
 00
-d9
+e9
 20
 20
 48
@@ -887,7 +951,7 @@
 da
 40
 00
-de
+ee
 20
 20
 45
@@ -919,7 +983,7 @@
 c0
 00
 00
-e9
+f9
 6f
 e4
 4b
@@ -935,7 +999,7 @@
 20
 20
 00
-ec
+fc
 6f
 e4
 4b
@@ -970,8 +1034,8 @@
 00
 20
 22
-80
-f3
+81
+03
 20
 20
 44
@@ -1087,7 +1151,7 @@
 c0
 02
 01
-10
+20
 20
 20
 19
@@ -1103,7 +1167,7 @@
 c0
 09
 01
-14
+24
 20
 20
 1c
@@ -1176,8 +1240,8 @@
 20
 26
 bc
-db
-46
+4e
+51
 aa
 55
 40
@@ -2344,72 +2408,8 @@
 55
 13
 5a
-c6
-14
-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
-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
+6d
+a6
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-a0
-4e
+7b
+be
Index: output/flash.dat
===================================================================
--- /YC1308AC/branch/mouse_project/public_3mode/output/flash.dat	(revision 457)
+++ /YC1308AC/branch/mouse_project/public_3mode/output/flash.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-96
+d6
 04
 c2
 84
@@ -39,11 +39,11 @@
 c0
 64
 80
-78
+7b
 c0
 65
 00
-83
+86
 c0
 66
 00
@@ -51,19 +51,19 @@
 c0
 68
 00
-a5
+b5
 c0
 6b
 00
-8c
+8f
 c0
 6c
 80
-b6
+c6
 c0
 6d
-00
-f8
+01
+08
 20
 20
 13
@@ -78,20 +78,20 @@
 39
 c0
 43
-80
-ff
+81
+0f
 c0
 50
 81
-03
+13
 c0
 60
 01
-0d
+1d
 c0
 76
 01
-22
+32
 20
 20
 13
@@ -480,10 +480,22 @@
 20
 3b
 c5
+58
+00
+00
+06
+20
+40
+5b
+0d
+c2
+81
+be
+23
 20
 20
 3e
-23
+21
 20
 40
 42
@@ -571,19 +583,23 @@
 c0
 1e
 00
-a0
+b0
 c0
 02
 00
-99
+a9
 c0
 09
 80
-99
+a9
 c0
 19
 00
-92
+96
+c0
+22
+00
+9d
 20
 20
 43
@@ -595,7 +611,7 @@
 c0
 00
 80
-96
+9a
 70
 4b
 76
@@ -618,6 +634,54 @@
 73
 6f
 e0
+82
+c1
+1f
+e6
+7c
+0c
+24
+21
+43
+84
+67
+e1
+43
+72
+67
+e1
+43
+74
+6f
+e0
+82
+c3
+68
+48
+cb
+8a
+98
+46
+7c
+00
+20
+21
+43
+9a
+6f
+e0
+82
+c3
+67
+e0
+cb
+8a
+20
+20
+43
+86
+6f
+e0
 ca
 c1
 c0
@@ -671,7 +735,7 @@
 20
 40
 00
-a8
+b8
 20
 20
 40
@@ -723,7 +787,7 @@
 20
 3a
 00
-c6
+d6
 67
 e0
 cb
@@ -759,7 +823,7 @@
 20
 40
 00
-c3
+d3
 20
 40
 40
@@ -771,7 +835,7 @@
 20
 40
 00
-e3
+f3
 20
 40
 44
@@ -779,7 +843,7 @@
 20
 40
 00
-db
+eb
 20
 20
 44
@@ -791,7 +855,7 @@
 da
 40
 00
-c6
+d6
 20
 20
 31
@@ -847,11 +911,11 @@
 20
 41
 00
-d5
+e5
 24
 41
 00
-d9
+e9
 20
 20
 48
@@ -887,7 +951,7 @@
 da
 40
 00
-de
+ee
 20
 20
 45
@@ -919,7 +983,7 @@
 c0
 00
 00
-e9
+f9
 6f
 e4
 4b
@@ -935,7 +999,7 @@
 20
 20
 00
-ec
+fc
 6f
 e4
 4b
@@ -970,8 +1034,8 @@
 00
 20
 22
-80
-f3
+81
+03
 20
 20
 44
@@ -1087,7 +1151,7 @@
 c0
 02
 01
-10
+20
 20
 20
 19
@@ -1103,7 +1167,7 @@
 c0
 09
 01
-14
+24
 20
 20
 1c
@@ -1176,8 +1240,8 @@
 20
 26
 bc
-db
-46
+4e
+51
 aa
 55
 40
@@ -2344,72 +2408,8 @@
 55
 13
 5a
-c6
-14
-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
-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
+6d
+a6
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-a0
-4e
+7b
+be
Index: output/program.lis
===================================================================
--- /YC1308AC/branch/mouse_project/public_3mode/output/program.lis	(revision 457)
+++ /YC1308AC/branch/mouse_project/public_3mode/output/program.lis	(working copy)
@@ -8,22 +8,22 @@
 0005 c0570071 beq patch15_6 ,p_app_init 
 0006 c0580058 beq patch16_0 ,p_app_evt_100ms_loop 
 0007 c0638077 beq patch18_7 ,p_mouse_app_enter_hibernate 
-0008 c0648078 beq patch19_1 ,p_mouse_setgpio_hibernate 
-0009 c0650083 beq patch19_2 ,p_mouse_lpm_before_common 
+0008 c064807b beq patch19_1 ,p_mouse_setgpio_hibernate 
+0009 c0650086 beq patch19_2 ,p_mouse_lpm_before_common 
 000a c0660054 beq patch19_4 ,p_mouse_adc_read_start 
-000b c06800a5 beq patch1a_0 ,p_mouse_seting_dpi 
-000c c06b008c beq patch1a_6 ,p_mouse_priority_bb_event 
-000d c06c80b6 beq patch1b_1 ,p_mouse_bb_event_timer 
-000e c06d00f8 beq patch1b_2 ,p_mouse_start_discovery 
+000b c06800b5 beq patch1a_0 ,p_mouse_seting_dpi 
+000c c06b008f beq patch1a_6 ,p_mouse_priority_bb_event 
+000d c06c80c6 beq patch1b_1 ,p_mouse_bb_event_timer 
+000e c06d0108 beq patch1b_2 ,p_mouse_start_discovery 
 000f 2020137c branch loop 
 
 pf_patch_ext:
 0010 c0198034 beq patch26_3 ,p_adc_init_data 
 0011 c01a0039 beq patch26_4 ,p_enable_adc 
-0012 c04380ff beq patch30_7 ,p_ui_timer_check 
-0013 c0508103 beq patch34_1 ,p_le_slave_match 
-0014 c060010d beq patch38_0 ,p_le_parse_l2cap 
-0015 c0760122 beq patch3d_4 ,p_g24_lpm_wait 
+0012 c043810f beq patch30_7 ,p_ui_timer_check 
+0013 c0508113 beq patch34_1 ,p_le_slave_match 
+0014 c060011d beq patch38_0 ,p_le_parse_l2cap 
+0015 c0760132 beq patch3d_4 ,p_g24_lpm_wait 
 0016 2020137c branch loop 
 
 p_soft_reset:
@@ -147,234 +147,252 @@
 0076 20203bc5 branch mouse_init + 4 
 
 p_mouse_app_enter_hibernate:
-0077 20203e23 branch mouse_app_enter_hibernate + 3 
+0077 58000006 setarg pan_reg_config 
+0078 20405b0d call twspi_read 
+0079 c281be23 bbit1 3 ,mouse_app_enter_hibernate + 3 
+007a 20203e21 branch mouse_app_enter_hibernate + 1 
 
 p_mouse_setgpio_hibernate:
-0078 204042e9 call mouse_set_sdio_high 
-0079 20407fdc call clear_wake 
-007a 20404015 call mouse_before_hibernate_wheel_gpio_set 
-007b 6848c910 fetcht 1 ,mem_matrix_public_gpio 
-007c 20406069 call gpio_out_active 
-007d 6848c910 fetcht 1 ,mem_matrix_public_gpio 
-007e 20406042 call gpio_clr_wake 
-007f 6fe0c920 fetch 1 ,mem_mouse_sensor_sdio_gpio 
-0080 d840003f arg gpcfg_output_high ,temp 
-0081 20406093 call gpio_config_function_int 
-0082 20203e36 branch mouse_setgpio_hibernate + 3 
+007b 204042e9 call mouse_set_sdio_high 
+007c 20407fdc call clear_wake 
+007d 20404015 call mouse_before_hibernate_wheel_gpio_set 
+007e 6848c910 fetcht 1 ,mem_matrix_public_gpio 
+007f 20406069 call gpio_out_active 
+0080 6848c910 fetcht 1 ,mem_matrix_public_gpio 
+0081 20406042 call gpio_clr_wake 
+0082 6fe0c920 fetch 1 ,mem_mouse_sensor_sdio_gpio 
+0083 d840003f arg gpcfg_output_high ,temp 
+0084 20406093 call gpio_config_function_int 
+0085 20203e36 branch mouse_setgpio_hibernate + 3 
 
 p_mouse_lpm_before_common:
-0083 6848c913 fetcht 1 ,mem_whee_a_data_gpio 
-0084 20406050 call gpio_config_input 
-0085 6848c914 fetcht 1 ,mem_whee_b_data_gpio 
-0086 20406050 call gpio_config_input 
-0087 20403f88 call mouse_wheel_check 
-0088 6fe0c91f fetch 1 ,mem_mouse_sensor_sclk_gpio 
-0089 d840003f arg gpcfg_output_high ,temp 
-008a 20406093 call gpio_config_function_int 
-008b 20203e44 branch mouse_lpm_before_common_next 
+0086 6848c913 fetcht 1 ,mem_whee_a_data_gpio 
+0087 20406050 call gpio_config_input 
+0088 6848c914 fetcht 1 ,mem_whee_b_data_gpio 
+0089 20406050 call gpio_config_input 
+008a 20403f88 call mouse_wheel_check 
+008b 6fe0c91f fetch 1 ,mem_mouse_sensor_sclk_gpio 
+008c d840003f arg gpcfg_output_high ,temp 
+008d 20406093 call gpio_config_function_int 
+008e 20203e44 branch mouse_lpm_before_common_next 
 
 p_mouse_priority_bb_event:
-008c 1a627e00 copy regc ,pdata 
-008d c01e00a0 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-008e c0020099 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
-008f c0098099 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_failed 
-0090 c0190092 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-0091 20204336 branch mouse_priority_bb_event + 2 
+008f 1a627e00 copy regc ,pdata 
+0090 c01e00b0 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0091 c00200a9 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
+0092 c00980a9 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_failed 
+0093 c0190096 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+0094 c022009d beq bt_evt_le_parse_conn_param_accepted ,p_mouse_le_parse_conn_param_accepted 
+0095 20204336 branch mouse_priority_bb_event + 2 
 
 p_mouse_le_ll_start_encryt:
-0092 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
-0093 c0008096 beq 1 ,p_mouse_le_ll_reconn_start_encryt 
-0094 704b7614 jam 20 ,mem_le_start_encrypt_timer 
-0095 20204373 branch mouse_le_ll_enable_start_enc_flag 
+0096 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
+0097 c000809a beq 1 ,p_mouse_le_ll_reconn_start_encryt 
+0098 704b7614 jam 20 ,mem_le_start_encrypt_timer 
+0099 20204373 branch mouse_le_ll_enable_start_enc_flag 
 
 p_mouse_le_ll_reconn_start_encryt:
-0096 2040436c call mouse_updata_le_param 
-0097 704b7605 jam 5 ,mem_le_start_encrypt_timer 
-0098 20204373 branch mouse_le_ll_enable_start_enc_flag 
+009a 2040436c call mouse_updata_le_param 
+009b 704b7605 jam 5 ,mem_le_start_encrypt_timer 
+009c 20204373 branch mouse_le_ll_enable_start_enc_flag 
+
+p_mouse_le_parse_conn_param_accepted:
+009d 6fe082c1 fetch 1 ,mem_le_new_conninterval 
+009e 1fe67c0c sub pdata ,le_interval_15ms ,null 
+009f 24214384 nbranch mouse_le_conn_param_lpm_disable ,positive 
+00a0 67e14372 store 2 ,mem_le_interval_min 
+00a1 67e14374 store 2 ,mem_le_interval_min + 2 
+00a2 6fe082c3 fetch 1 ,mem_le_new_connslavelatency 
+00a3 6848cb8a fetcht 1 ,mem_lpm_mult_init 
+00a4 98467c00 isub temp ,null 
+00a5 2021439a branch mouse_le_lpm_mult_reinit ,positive 
+00a6 6fe082c3 fetch 1 ,mem_le_new_connslavelatency 
+00a7 67e0cb8a store 1 ,mem_lpm_mult_init 
+00a8 20204386 branch mouse_le_conn_param_lpm_enable 
 
 p_mouse_bb_event_reconn_failed:
-0099 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-009a c07fc2f8 beq 0xff ,mouse_buletooth_fast_conn_end 
-009b 6fe1478c fetch 2 ,mem_ui_state_map 
-009c c3860000 rtnbit1 ui_state_btn_down 
-009d c3830000 rtnbit1 ui_state_bt_discovery 
-009e c3858000 rtnbit1 ui_state_ble_adv 
-009f 20203e20 branch mouse_app_enter_hibernate 
+00a9 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+00aa c07fc2f8 beq 0xff ,mouse_buletooth_fast_conn_end 
+00ab 6fe1478c fetch 2 ,mem_ui_state_map 
+00ac c3860000 rtnbit1 ui_state_btn_down 
+00ad c3830000 rtnbit1 ui_state_bt_discovery 
+00ae c3858000 rtnbit1 ui_state_ble_adv 
+00af 20203e20 branch mouse_app_enter_hibernate 
 
 p_mouse_24g_attempt_success:
-00a0 6fe2483c fetch 4 ,mem_24g_addr 
-00a1 67e24891 store 4 ,mem_24g_receiver_addr 
-00a2 67e24993 store 4 ,mem_mouse_24g_addr 
-00a3 204048c6 call mouse_device_poweron_timer_init 
-00a4 2020484e branch mouse_24g_attempt_success 
+00b0 6fe2483c fetch 4 ,mem_24g_addr 
+00b1 67e24891 store 4 ,mem_24g_receiver_addr 
+00b2 67e24993 store 4 ,mem_mouse_24g_addr 
+00b3 204048c6 call mouse_device_poweron_timer_init 
+00b4 2020484e branch mouse_24g_attempt_success 
 
 p_mouse_seting_dpi:
-00a5 2040408f call mouse_setting_dpi_4_level 
-00a6 204000a8 call p_mouse_dpi_led_blink_delay 
-00a7 20204098 branch mouse_seting_sensor_type 
+00b5 2040408f call mouse_setting_dpi_4_level 
+00b6 204000b8 call p_mouse_dpi_led_blink_delay 
+00b7 20204098 branch mouse_seting_sensor_type 
 
 p_mouse_dpi_led_blink_delay:
-00a8 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
-00a9 c17f8000 rtneq gpio_disable 
-00aa 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
-00ab 247a0000 nrtn blank 
-00ac 6fe14883 fetch 2 ,mem_24g_pair_timeout 
-00ad 247a0000 nrtn blank 
-00ae 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
-00af 247a0000 nrtn blank 
-00b0 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
-00b1 247a0000 nrtn blank 
-00b2 6fe0cbc1 fetch 1 ,mem_mouse_dpi_led_delay_count_init 
-00b3 203a00c6 branch p_mouse_dpi_led_blink_init ,blank 
-00b4 67e0cba8 store 1 ,mem_mouse_dpi_led_delay_count 
-00b5 20600000 rtn 
+00b8 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
+00b9 c17f8000 rtneq gpio_disable 
+00ba 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
+00bb 247a0000 nrtn blank 
+00bc 6fe14883 fetch 2 ,mem_24g_pair_timeout 
+00bd 247a0000 nrtn blank 
+00be 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
+00bf 247a0000 nrtn blank 
+00c0 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
+00c1 247a0000 nrtn blank 
+00c2 6fe0cbc1 fetch 1 ,mem_mouse_dpi_led_delay_count_init 
+00c3 203a00d6 branch p_mouse_dpi_led_blink_init ,blank 
+00c4 67e0cba8 store 1 ,mem_mouse_dpi_led_delay_count 
+00c5 20600000 rtn 
 
 p_mouse_bb_event_timer:
-00b6 20403e9b call mouse_adc_read 
-00b7 20404956 call mouse_low_voltage_led_timer 
-00b8 2040232b call g24_pair_timeout_timer 
-00b9 20402556 call g24_reconn_timeout_timer 
-00ba 204047cd call mouse_24g_long_sleep_param_update_timer 
-00bb 204048be call mouse_device_poweron_timer 
-00bc 204000c3 call p_mouse_dpi_led_blink_delay_timer 
-00bd 2040407c call mouse_dpi_key_check_long_press 
-00be 204044cc call mouse_bt_discovery_check 
-00bf 204000e3 call p_mouse_commbination_key_process 
-00c0 204044ff call mouse_check_discovery_timeout_timer 
-00c1 204000db call p_mouse_check_direct_timeout_timer 
-00c2 202044c2 branch mouse_bb_event_timer + 13 
+00c6 20403e9b call mouse_adc_read 
+00c7 20404956 call mouse_low_voltage_led_timer 
+00c8 2040232b call g24_pair_timeout_timer 
+00c9 20402556 call g24_reconn_timeout_timer 
+00ca 204047cd call mouse_24g_long_sleep_param_update_timer 
+00cb 204048be call mouse_device_poweron_timer 
+00cc 204000d3 call p_mouse_dpi_led_blink_delay_timer 
+00cd 2040407c call mouse_dpi_key_check_long_press 
+00ce 204044cc call mouse_bt_discovery_check 
+00cf 204000f3 call p_mouse_commbination_key_process 
+00d0 204044ff call mouse_check_discovery_timeout_timer 
+00d1 204000eb call p_mouse_check_direct_timeout_timer 
+00d2 202044c2 branch mouse_bb_event_timer + 13 
 
 p_mouse_dpi_led_blink_delay_timer:
-00c3 da604ba8 arg mem_mouse_dpi_led_delay_count ,regc 
-00c4 da4000c6 arg p_mouse_dpi_led_blink_init ,regb 
-00c5 2020318a branch timer_single_step 
+00d3 da604ba8 arg mem_mouse_dpi_led_delay_count ,regc 
+00d4 da4000d6 arg p_mouse_dpi_led_blink_init ,regb 
+00d5 2020318a branch timer_single_step 
 
 p_mouse_dpi_led_blink_init:
-00c6 6fe0c927 fetch 1 ,mem_config_sensor_type 
-00c7 c001c8f2 beq p3212 ,mouse_dpi_led_blink_init 
-00c8 c005c8f2 beq ka8g2 ,mouse_dpi_led_blink_init 
-00c9 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
-00ca 67e0c92f store 1 ,mem_mouse_struct_led_gpio 
-00cb 6fe14bc2 fetch 2 ,mem_mouse_dpi_led_blink_time 
-00cc 67e14930 store 2 ,mem_mouse_on_time 
-00cd 67e14932 store 2 ,mem_mouse_off_time 
-00ce da200000 arg 0 ,rega 
-00cf 6848c992 fetcht 1 ,mem_mouse_dpi 
-00d0 18408402 increase 2 ,temp 
-00d1 18467c03 sub temp ,3 ,null 
-00d2 204100d5 call p_mouse_dpi_led_blink_init_level_4 ,positive 
-00d3 244100d9 ncall p_mouse_dpi_led_blink_count_clean ,positive 
-00d4 202048ff branch mouse_dpi_led_blink_init_end 
+00d6 6fe0c927 fetch 1 ,mem_config_sensor_type 
+00d7 c001c8f2 beq p3212 ,mouse_dpi_led_blink_init 
+00d8 c005c8f2 beq ka8g2 ,mouse_dpi_led_blink_init 
+00d9 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
+00da 67e0c92f store 1 ,mem_mouse_struct_led_gpio 
+00db 6fe14bc2 fetch 2 ,mem_mouse_dpi_led_blink_time 
+00dc 67e14930 store 2 ,mem_mouse_on_time 
+00dd 67e14932 store 2 ,mem_mouse_off_time 
+00de da200000 arg 0 ,rega 
+00df 6848c992 fetcht 1 ,mem_mouse_dpi 
+00e0 18408402 increase 2 ,temp 
+00e1 18467c03 sub temp ,3 ,null 
+00e2 204100e5 call p_mouse_dpi_led_blink_init_level_4 ,positive 
+00e3 244100e9 ncall p_mouse_dpi_led_blink_count_clean ,positive 
+00e4 202048ff branch mouse_dpi_led_blink_init_end 
 
 p_mouse_dpi_led_blink_init_level_4:
-00d5 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-00d6 c40e0000 rtnbit0 mouse_enable_dpi_level_4 
-00d7 18408401 increase 1 ,temp 
-00d8 20600000 rtn 
+00e5 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+00e6 c40e0000 rtnbit0 mouse_enable_dpi_level_4 
+00e7 18408401 increase 1 ,temp 
+00e8 20600000 rtn 
 
 p_mouse_dpi_led_blink_count_clean:
-00d9 184085fd increase -3 ,temp 
-00da 20600000 rtn 
+00e9 184085fd increase -3 ,temp 
+00ea 20600000 rtn 
 
 p_mouse_check_direct_timeout_timer:
-00db da604b77 arg mem_mouse_direct_timer ,regc 
-00dc da4000de arg p_mouse_check_direct_timeout ,regb 
-00dd 20204506 branch mouse_check_direct_timeout_timer + 2 
+00eb da604b77 arg mem_mouse_direct_timer ,regc 
+00ec da4000ee arg p_mouse_check_direct_timeout ,regb 
+00ed 20204506 branch mouse_check_direct_timeout_timer + 2 
 
 p_mouse_check_direct_timeout:
-00de 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-00df c07fc2f8 beq 0xff ,mouse_buletooth_fast_conn_end 
-00e0 6fe0cab0 fetch 1 ,mem_reconn_times 
-00e1 243a470e nbranch mouse_polling_device ,blank 
-00e2 20203e20 branch mouse_app_enter_hibernate 
+00ee 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+00ef c07fc2f8 beq 0xff ,mouse_buletooth_fast_conn_end 
+00f0 6fe0cab0 fetch 1 ,mem_reconn_times 
+00f1 243a470e nbranch mouse_polling_device ,blank 
+00f2 20203e20 branch mouse_app_enter_hibernate 
 
 p_mouse_commbination_key_process:
-00e3 6fe0c938 fetch 1 ,mem_device_flag 
-00e4 c00000e9 beq mode_24g_device ,p_mouse_24g_commbination_key_process 
-00e5 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-00e6 c41a8000 rtnbit0 mouse_enable_commbination_key_by_bt_discovery 
-00e7 6848cbca fetcht 1 ,mem_mouse_commbination_key_bt 
-00e8 202000ec branch p_mouse_commbination_key_start 
+00f3 6fe0c938 fetch 1 ,mem_device_flag 
+00f4 c00000f9 beq mode_24g_device ,p_mouse_24g_commbination_key_process 
+00f5 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+00f6 c41a8000 rtnbit0 mouse_enable_commbination_key_by_bt_discovery 
+00f7 6848cbca fetcht 1 ,mem_mouse_commbination_key_bt 
+00f8 202000fc branch p_mouse_commbination_key_start 
 
 p_mouse_24g_commbination_key_process:
-00e9 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-00ea c4190000 rtnbit0 mouse_enable_commbination_key_by_24g_pairing 
-00eb 6848cbcb fetcht 1 ,mem_mouse_commbination_key_24g 
+00f9 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+00fa c4190000 rtnbit0 mouse_enable_commbination_key_by_24g_pairing 
+00fb 6848cbcb fetcht 1 ,mem_mouse_commbination_key_24g 
 
 p_mouse_commbination_key_start:
-00ec 6048cb9d storet 1 ,mem_mouse_commbination_key 
-00ed 20404115 call mouse_check_key_gpio 
-00ee 1fe17e07 and pdata ,0x07 ,pdata 
-00ef 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
-00f0 98467c00 isub temp ,null 
-00f1 202280f3 branch p_mouse_commbination_key_down ,zero 
-00f2 202044eb branch mouse_commbination_key_up 
+00fc 6048cb9d storet 1 ,mem_mouse_commbination_key 
+00fd 20404115 call mouse_check_key_gpio 
+00fe 1fe17e07 and pdata ,0x07 ,pdata 
+00ff 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
+0100 98467c00 isub temp ,null 
+0101 20228103 branch p_mouse_commbination_key_down ,zero 
+0102 202044eb branch mouse_commbination_key_up 
 
 p_mouse_commbination_key_down:
-00f3 204044f6 call mouse_combination_ui_timer 
-00f4 6fe0cb9f fetch 1 ,mem_commbination_key_statue 
-00f5 c1008000 rtneq commbination_key_state_down 
-00f6 704b9f01 jam commbination_key_state_down ,mem_commbination_key_statue 
-00f7 20600000 rtn 
+0103 204044f6 call mouse_combination_ui_timer 
+0104 6fe0cb9f fetch 1 ,mem_commbination_key_statue 
+0105 c1008000 rtneq commbination_key_state_down 
+0106 704b9f01 jam commbination_key_state_down ,mem_commbination_key_statue 
+0107 20600000 rtn 
 
 p_mouse_start_discovery:
-00f8 6fe1478c fetch 2 ,mem_ui_state_map 
-00f9 2feffe0b isolate1 ui_state_ble_adv ,pdata 
-00fa 2040c581 call mouse_stop_le_adv ,true 
-00fb 6fe1478c fetch 2 ,mem_ui_state_map 
-00fc 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
-00fd 2040c322 call mouse_cancel_reconnect ,true 
-00fe 20204554 branch mouse_start_discovery + 1 
+0108 6fe1478c fetch 2 ,mem_ui_state_map 
+0109 2feffe0b isolate1 ui_state_ble_adv ,pdata 
+010a 2040c581 call mouse_stop_le_adv ,true 
+010b 6fe1478c fetch 2 ,mem_ui_state_map 
+010c 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
+010d 2040c322 call mouse_cancel_reconnect ,true 
+010e 20204554 branch mouse_start_discovery + 1 
 
 p_ui_timer_check:
-00ff 6fe0cbe2 fetch 1 ,mem_power_on_flag 
-0100 245a7861 ncall ui_timer_init ,blank 
-0101 704be200 jam 0 ,mem_power_on_flag 
-0102 20207851 branch ui_timer_check + 1 
+010f 6fe0cbe2 fetch 1 ,mem_power_on_flag 
+0110 245a7861 ncall ui_timer_init ,blank 
+0111 704be200 jam 0 ,mem_power_on_flag 
+0112 20207851 branch ui_timer_check + 1 
 
 p_le_slave_match:
-0103 6fe0c3dd fetch 1 ,mem_le_md_count 
-0104 1fe0fe01 pincrease 1 
-0105 67e0c3dd store 1 ,mem_le_md_count 
-0106 c006165a beq le_md_max_count ,le_slave_cont 
-0107 2040191b call le_acknowledge 
-0108 2040196a call le_prepare_tx 
-0109 6fe082bd fetch 1 ,mem_le_tx_phy 
-010a 2040168b call le_enable_phy_by_pdata 
-010b 20401838 call le_transmit 
-010c 20201655 branch le_slave_match + 10 
+0113 6fe0c3dd fetch 1 ,mem_le_md_count 
+0114 1fe0fe01 pincrease 1 
+0115 67e0c3dd store 1 ,mem_le_md_count 
+0116 c006165a beq le_md_max_count ,le_slave_cont 
+0117 2040191b call le_acknowledge 
+0118 2040196a call le_prepare_tx 
+0119 6fe082bd fetch 1 ,mem_le_tx_phy 
+011a 2040168b call le_enable_phy_by_pdata 
+011b 20401838 call le_transmit 
+011c 20201655 branch le_slave_match + 10 
 
 p_le_parse_l2cap:
-010d efe10006 ifetch 2 ,contr 
-010e c0020110 beq le_l2cap_cid_att ,p_le_parse_att 
-010f 202019e4 branch le_parse_l2cap + 10 
+011d efe10006 ifetch 2 ,contr 
+011e c0020120 beq le_l2cap_cid_att ,p_le_parse_att 
+011f 202019e4 branch le_parse_l2cap + 10 
 
 p_le_parse_att:
-0110 efe18006 ifetch 3 ,contr 
-0111 67e1c436 store 3 ,mem_le_att_opcode 
-0112 c0090114 beq attop_write_request ,p_le_parse_att_write_request 
-0113 20201cd3 branch le_parse_att + 2 
+0120 efe18006 ifetch 3 ,contr 
+0121 67e1c436 store 3 ,mem_le_att_opcode 
+0122 c0090124 beq attop_write_request ,p_le_parse_att_write_request 
+0123 20201cd3 branch le_parse_att + 2 
 
 p_le_parse_att_write_request:
-0114 18c22200 copy contr ,rega 
-0115 6fe143d4 fetch 2 ,mem_le_l2cap_size 
-0116 1fe0a5fd add pdata ,-3 ,regb 
-0117 20401a25 call le_writeatt_cb 
-0118 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
-0119 203a1e73 branch le_send_att_write_response_check_auth ,blank 
-011a 6fe0cb75 fetch 1 ,mem_le_connect_status_flag 
-011b c2809e73 bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
-011c 5800001a setarg 0x001a 
-011d 68494437 fetcht 2 ,mem_le_att_handle 
-011e 98467c00 isub temp ,null 
-011f 24229e73 nbranch le_send_att_write_response_check_auth ,zero 
-0120 7002d805 jam att_err_insufficient_authentication ,mem_le_err_code 
-0121 20201ec9 branch le_send_att_error_response 
+0124 18c22200 copy contr ,rega 
+0125 6fe143d4 fetch 2 ,mem_le_l2cap_size 
+0126 1fe0a5fd add pdata ,-3 ,regb 
+0127 20401a25 call le_writeatt_cb 
+0128 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
+0129 203a1e73 branch le_send_att_write_response_check_auth ,blank 
+012a 6fe0cb75 fetch 1 ,mem_le_connect_status_flag 
+012b c2809e73 bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
+012c 5800001a setarg 0x001a 
+012d 68494437 fetcht 2 ,mem_le_att_handle 
+012e 98467c00 isub temp ,null 
+012f 24229e73 nbranch le_send_att_write_response_check_auth ,zero 
+0130 7002d805 jam att_err_insufficient_authentication ,mem_le_err_code 
+0131 20201ec9 branch le_send_att_error_response 
 
 p_g24_lpm_wait:
-0122 6fe0cbaa fetch 1 ,mem_24g_device_led_status 
-0123 245a26e1 ncall g24_transmit_by_interrupt_enable ,blank 
-0124 202026bc branch g24_lpm_wait + 1 
+0132 6fe0cbaa fetch 1 ,mem_24g_device_led_status 
+0133 245a26e1 ncall g24_transmit_by_interrupt_enable ,blank 
+0134 202026bc branch g24_lpm_wait + 1 
               org 0x800
 
 start:
Index: program/patch.prog
===================================================================
--- /YC1308AC/branch/mouse_project/public_3mode/program/patch.prog	(revision 457)
+++ /YC1308AC/branch/mouse_project/public_3mode/program/patch.prog	(working copy)
@@ -9,6 +9,7 @@
 	beq patch13_7,p_init_param
 	beq patch15_6,p_app_init
 	beq patch16_0,p_app_evt_100ms_loop
+
 	beq patch18_7,p_mouse_app_enter_hibernate
 	beq patch19_1,p_mouse_setgpio_hibernate
 	beq patch19_2,p_mouse_lpm_before_common
@@ -178,10 +179,10 @@
 	branch mouse_init+4
 	
 p_mouse_app_enter_hibernate:	// 1.3mA hibernate after sensroe reset
-	branch mouse_app_enter_hibernate+3
-
-
-
+	setarg PAN_REG_CONFIG
+	call twspi_read
+	bbit1 3,mouse_app_enter_hibernate+3
+	branch mouse_app_enter_hibernate+1
 
 p_mouse_setgpio_hibernate:
 	call mouse_set_sdio_high
@@ -216,6 +217,7 @@
 	beq BT_EVT_RECONN_FAILED,p_mouse_bb_event_reconn_failed
 	beq BT_EVT_RECONN_PAGE_TIMEOUT,p_mouse_bb_event_reconn_failed
 	beq BT_EVT_LE_START_ENC,p_mouse_le_ll_start_encryt
+	beq BT_EVT_LE_PARSE_CONN_PARAM_ACCEPTED,p_mouse_le_parse_conn_param_accepted
 	branch mouse_priority_bb_event+2
 
 p_mouse_le_ll_start_encryt:
@@ -228,6 +230,20 @@
 	jam 5,mem_le_start_encrypt_timer
 	branch mouse_le_ll_enable_start_enc_flag
 
+p_mouse_le_parse_conn_param_accepted:
+	fetch 1,mem_le_new_conninterval
+	sub pdata,LE_INTERVAL_15MS,null
+	nbranch mouse_le_conn_param_lpm_disable,positive
+	store 2,mem_le_interval_min
+	store 2,mem_le_interval_min+2
+	fetch 1,mem_le_new_connslavelatency
+	fetcht 1,mem_lpm_mult_init
+	isub temp,null
+	branch mouse_le_lpm_mult_reinit,positive
+	fetch 1,mem_le_new_connslavelatency
+	store 1,mem_lpm_mult_init						// mouse_le_lpm_mult_reinit function will reinit mem_lpm_mult
+	branch mouse_le_conn_param_lpm_enable
+
 p_mouse_bb_event_reconn_failed:
 	fetch 1,mem_mouse_bluetooth_fast_conn_flag
 	beq 0xff,mouse_buletooth_fast_conn_end
