Index: output/flash.dat
===================================================================
--- /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/output/flash.dat	(revision 3869)
+++ /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/output/flash.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-22
+66
 1e
 20
 20
@@ -23,7 +23,7 @@
 20
 40
 07
-15
+26
 68
 00
 c6
@@ -67,7 +67,7 @@
 20
 20
 07
-67
+78
 58
 00
 03
@@ -87,7 +87,7 @@
 58
 00
 06
-4b
+5c
 60
 01
 41
@@ -275,23 +275,23 @@
 c0
 42
 87
-65
+76
 c0
 44
 87
-38
+49
 c0
 28
 86
-81
+92
 c0
 53
 86
-86
+97
 c0
 56
 86
-9e
+af
 c0
 65
 b3
@@ -299,7 +299,7 @@
 c0
 74
 86
-af
+c0
 c0
 50
 80
@@ -379,23 +379,23 @@
 c0
 35
 06
-37
+48
 c0
 3b
 86
-41
+52
 c0
 46
 06
-4d
+5e
 c0
 46
 86
-59
+6a
 c0
 7d
 06
-b3
+c4
 20
 20
 2a
@@ -635,7 +635,7 @@
 20
 40
 06
-6f
+80
 68
 00
 cb
@@ -671,7 +671,7 @@
 20
 20
 07
-67
+78
 70
 11
 c5
@@ -679,7 +679,7 @@
 20
 20
 07
-67
+78
 20
 40
 02
@@ -1011,7 +1011,7 @@
 20
 40
 07
-18
+29
 70
 4b
 52
@@ -1531,7 +1531,7 @@
 20
 40
 07
-2f
+40
 20
 40
 05
@@ -1699,11 +1699,11 @@
 20
 20
 07
-67
+78
 20
 40
 07
-15
+26
 70
 11
 c5
@@ -1711,7 +1711,7 @@
 20
 20
 07
-67
+78
 79
 3f
 80
@@ -2799,7 +2799,7 @@
 20
 20
 07
-67
+78
 da
 20
 43
@@ -2863,7 +2863,7 @@
 20
 20
 07
-67
+78
 20
 40
 03
@@ -3415,7 +3415,7 @@
 20
 40
 07
-08
+19
 70
 11
 c5
@@ -3423,7 +3423,7 @@
 20
 20
 07
-67
+78
 70
 11
 c5
@@ -3431,7 +3431,7 @@
 20
 20
 07
-67
+78
 20
 40
 7f
@@ -4275,7 +4275,7 @@
 20
 40
 07
-05
+16
 20
 20
 3d
@@ -4363,7 +4363,7 @@
 20
 20
 07
-67
+78
 20
 40
 04
@@ -4375,7 +4375,7 @@
 20
 20
 07
-67
+78
 70
 0a
 99
@@ -4391,7 +4391,7 @@
 20
 20
 07
-67
+78
 70
 11
 c5
@@ -4399,7 +4399,7 @@
 20
 20
 07
-67
+78
 70
 11
 c5
@@ -4407,7 +4407,7 @@
 20
 20
 07
-67
+78
 70
 11
 c5
@@ -4415,7 +4415,7 @@
 20
 20
 07
-67
+78
 70
 11
 c5
@@ -4423,7 +4423,7 @@
 20
 20
 07
-67
+78
 70
 4b
 b9
@@ -4451,7 +4451,7 @@
 20
 20
 07
-67
+78
 70
 11
 c5
@@ -4459,7 +4459,7 @@
 20
 20
 07
-67
+78
 70
 4b
 b9
@@ -4475,7 +4475,7 @@
 20
 20
 07
-67
+78
 70
 4b
 b9
@@ -4487,7 +4487,7 @@
 20
 40
 07
-05
+16
 20
 40
 04
@@ -4499,7 +4499,7 @@
 20
 20
 07
-67
+78
 70
 4b
 b9
@@ -4523,7 +4523,7 @@
 20
 20
 07
-67
+78
 68
 00
 cb
@@ -4607,7 +4607,7 @@
 20
 20
 06
-cb
+dc
 da
 60
 48
@@ -5015,7 +5015,7 @@
 20
 20
 07
-05
+16
 68
 01
 4b
@@ -5138,8 +5138,8 @@
 00
 20
 20
-06
-f9
+07
+0a
 d8
 40
 00
@@ -5291,11 +5291,11 @@
 20
 21
 06
-eb
+fc
 20
 20
-06
-f9
+07
+0a
 70
 46
 cf
@@ -5727,7 +5727,7 @@
 20
 20
 07
-67
+78
 70
 11
 c5
@@ -5735,7 +5735,7 @@
 20
 20
 07
-67
+78
 d8
 a0
 43
@@ -5754,8 +5754,8 @@
 b8
 20
 40
-06
-f3
+07
+04
 58
 00
 00
@@ -5803,7 +5803,7 @@
 20
 40
 06
-6f
+80
 20
 20
 53
@@ -5851,7 +5851,7 @@
 20
 20
 07
-67
+78
 70
 11
 c5
@@ -5859,7 +5859,7 @@
 20
 20
 07
-67
+78
 68
 00
 84
@@ -5871,7 +5871,7 @@
 20
 40
 07
-18
+29
 68
 00
 c7
@@ -5999,7 +5999,7 @@
 24
 41
 07
-1c
+2d
 68
 00
 cd
@@ -6151,7 +6151,7 @@
 c0
 03
 06
-2f
+40
 20
 20
 56
@@ -6275,7 +6275,11 @@
 c0
 05
 06
-21
+22
+c0
+09
+06
+30
 20
 20
 58
@@ -6291,7 +6295,7 @@
 c2
 81
 86
-28
+29
 68
 01
 04
@@ -6319,7 +6323,7 @@
 24
 22
 86
-24
+25
 20
 40
 5a
@@ -6327,7 +6331,71 @@
 24
 34
 06
+25
+70
+04
+7a
+05
+20
+20
+5a
+77
+18
+c2
+22
+00
+68
+01
+44
+fc
+1f
+e0
+a5
+fd
+20
+40
+56
+e2
+68
+00
+cb
+b3
+c0
+7f
+da
+33
+68
+00
+c7
+a1
+20
+3a
+5a
+33
+68
+00
+c6
+c5
+c2
+80
+da
+33
+58
+00
+00
+1a
+68
+09
+04
+78
+98
+46
+7c
+00
 24
+22
+da
+33
 70
 04
 7a
@@ -6343,11 +6411,11 @@
 c0
 00
 86
-33
+44
 c0
 02
 86
-35
+46
 20
 20
 5a
@@ -6367,7 +6435,7 @@
 20
 20
 07
-67
+78
 68
 00
 80
@@ -6415,7 +6483,7 @@
 20
 37
 06
-44
+55
 24
 36
 d8
@@ -6455,7 +6523,7 @@
 20
 20
 07
-67
+78
 68
 10
 80
@@ -6495,7 +6563,7 @@
 20
 40
 06
-5a
+6b
 60
 18
 80
@@ -6571,7 +6639,7 @@
 20
 40
 86
-6b
+7c
 20
 20
 24
@@ -6591,7 +6659,7 @@
 24
 40
 87
-18
+29
 68
 01
 46
@@ -6627,7 +6695,7 @@
 c5
 13
 06
-79
+8a
 58
 00
 00
@@ -6639,7 +6707,7 @@
 24
 21
 07
-2e
+3f
 68
 00
 cd
@@ -6651,7 +6719,7 @@
 24
 21
 07
-1e
+2f
 68
 00
 cd
@@ -6659,7 +6727,7 @@
 c0
 00
 07
-2f
+40
 20
 60
 00
@@ -6723,7 +6791,7 @@
 20
 3a
 06
-92
+a3
 68
 00
 c5
@@ -6831,7 +6899,7 @@
 20
 5a
 06
-ac
+bd
 20
 20
 2b
@@ -6863,7 +6931,7 @@
 20
 20
 07
-67
+78
 20
 40
 62
@@ -6883,15 +6951,15 @@
 c0
 0f
 86
-be
+cf
 c0
 10
 06
-c1
+d2
 c0
 09
 06
-bb
+cc
 20
 20
 7d
@@ -6919,7 +6987,7 @@
 20
 20
 06
-c3
+d4
 70
 01
 85
@@ -6975,11 +7043,11 @@
 c0
 00
 06
-d1
+e2
 c0
 00
 86
-db
+ec
 20
 60
 00
@@ -6987,7 +7055,7 @@
 20
 40
 06
-eb
+fc
 68
 00
 cb
@@ -7011,7 +7079,7 @@
 20
 42
 86
-d9
+ea
 20
 60
 00
@@ -7022,8 +7090,8 @@
 00
 20
 20
-06
-f9
+07
+0a
 68
 00
 cb
@@ -7055,15 +7123,15 @@
 20
 3a
 06
-e7
+f8
 68
 00
 cb
 2e
 20
 3a
-06
-f7
+07
+08
 1f
 e0
 ff
@@ -7078,12 +7146,12 @@
 29
 c0
 00
-86
-f9
+87
+0a
 c0
 00
 06
-eb
+fc
 20
 60
 00
@@ -7098,16 +7166,16 @@
 20
 c0
 00
-86
-f1
+87
+02
 c0
 01
-06
-f0
+07
+01
 20
 20
-06
-f2
+07
+03
 20
 20
 44
@@ -7150,8 +7218,8 @@
 2e
 24
 3a
-06
-fd
+07
+0e
 70
 4b
 27
@@ -7203,7 +7271,7 @@
 20
 20
 07
-11
+22
 70
 4b
 31
@@ -7315,7 +7383,7 @@
 c5
 13
 07
-25
+36
 58
 00
 00
@@ -7335,7 +7403,7 @@
 c0
 00
 07
-36
+47
 1f
 e0
 ff
@@ -7347,7 +7415,7 @@
 c0
 00
 07
-36
+47
 70
 41
 de
@@ -7367,7 +7435,7 @@
 c0
 01
 07
-34
+45
 1f
 e0
 fe
@@ -7379,7 +7447,7 @@
 c0
 00
 87
-2c
+3d
 70
 41
 de
@@ -7463,19 +7531,19 @@
 c0
 01
 07
-50
+61
 c0
 02
 07
-58
+69
 c0
 10
 07
-62
+73
 20
 40
 07
-5d
+6e
 70
 89
 55
@@ -7527,7 +7595,7 @@
 20
 40
 07
-5d
+6e
 70
 89
 55
@@ -7603,7 +7671,7 @@
 20
 22
 87
-86
+97
 60
 08
 cb
@@ -7679,7 +7747,7 @@
 24
 22
 87
-77
+88
 20
 40
 03
@@ -7716,8 +7784,8 @@
 20
 00
 01
-dc
-19
+6f
+2a
 aa
 55
 08
@@ -8141,9 +8209,9 @@
 00
 96
 44
-07
+06
 00
-07
+06
 00
 20
 00
@@ -8651,7 +8719,7 @@
 00
 b4
 4b
-01
+02
 00
 aa
 55
@@ -8795,9 +8863,15 @@
 00
 57
 4b
-66
+b0
 30
 00
+55
+aa
+aa
+55
+45
+1b
 ff
 20
 20
@@ -9418,7 +9492,7 @@
 20
 40
 07
-05
+16
 70
 4b
 01
@@ -9777,8 +9851,8 @@
 bd
 20
 40
-06
-f7
+07
+08
 20
 40
 03
@@ -10998,7 +11072,7 @@
 20
 20
 07
-0d
+1e
 70
 47
 a1
@@ -11114,11 +11188,11 @@
 c0
 20
 80
-17
+19
 c0
 21
 00
-24
+26
 20
 60
 00
@@ -11167,6 +11241,14 @@
 21
 00
 0b
+60
+01
+44
+96
+60
+01
+44
+98
 68
 00
 c3
@@ -11189,8 +11271,8 @@
 d8
 60
 00
-c1
-72
+c7
+c7
 20
 20
 00
@@ -11206,7 +11288,7 @@
 20
 40
 00
-1c
+1e
 24
 74
 00
@@ -11351,14 +11433,6 @@
 00
 00
 00
-00
-00
-00
-00
-00
-00
-00
-00
 20
 20
 00
@@ -11646,7 +11720,7 @@
 20
 40
 07
-08
+19
 70
 47
 a1
@@ -12387,5 +12461,5 @@
 55
 00
 00
-b7
-4e
+4b
+9c
Index: output/program.lis
===================================================================
--- /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/output/program.lis	(revision 3869)
+++ /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/output/program.lis	(working copy)
@@ -10,7 +10,7 @@
 0001 20400390 call p_mouse_data_init 
 0002 6800c1de fetch 1 ,mem_tx_power 
 0003 6000ccf8 store 1 ,mem_tx_power_temp 
-0004 20400715 call power_ctrl_pac_succ_cnt_init 
+0004 20400726 call power_ctrl_pac_succ_cnt_init 
 0005 6800c685 fetch 1 ,mem_ui_button_timeout 
 0006 6000cb47 store 1 ,mem_select_ui_button_count 
 0007 6800cb33 fetch 1 ,mem_bt_ui_button_timeout 
@@ -23,14 +23,14 @@
 
 p_mouse_setting_config:
 000e 7011c580 jam zcode_80 ,mem_zcode_temp_param0 
-000f 20200767 branch p_zcode_entrance 
+000f 20200778 branch p_zcode_entrance 
 
 p_mouse_cb_fuction:
 0010 58000360 setarg p_mouse_g24_package_data 
 0011 60014d72 store 2 ,mem_cb_24g_data 
 0012 5800037a setarg p_mouse_le 
 0013 600141ef store 2 ,mem_cb_le_process 
-0014 5800064b setarg p_le_mouse_bb_event_connect_complete 
+0014 5800065c setarg p_le_mouse_bb_event_connect_complete 
 0015 600141f9 store 2 ,mem_cb_att_write 
 0016 580003ab setarg p_mouse_bt 
 0017 600141f1 store 2 ,mem_cb_bt_process 
@@ -85,13 +85,13 @@
 0040 c2840055 bbit1 8 ,pf_patch_ext 
 0041 c000806f beq patch00_1 ,p_soft_reset_1 
 0042 c0010079 beq patch00_2 ,p_soft_reset_2 
-0043 c0428765 beq patch10_5 ,p_shutdown_radio 
-0044 c0448738 beq patch11_1 ,p_set_freq_tx 
-0045 c0288681 beq patch0a_1 ,p_slave_conn_recv_packet 
-0046 c0538686 beq patch14_7 ,p_lpm_dispatch 
-0047 c056869e beq patch15_5 ,p_lpm_set_mult 
+0043 c0428776 beq patch10_5 ,p_shutdown_radio 
+0044 c0448749 beq patch11_1 ,p_set_freq_tx 
+0045 c0288692 beq patch0a_1 ,p_slave_conn_recv_packet 
+0046 c0538697 beq patch14_7 ,p_lpm_dispatch 
+0047 c05686af beq patch15_5 ,p_lpm_set_mult 
 0048 c065b3e4 beq patch19_3 ,app_bt_start_reconnect + 3 
-0049 c07486af beq patch1d_1 ,p_mouse_bb_disconnected 
+0049 c07486c0 beq patch1d_1 ,p_mouse_bb_disconnected 
 004a c0508082 beq patch14_1 ,p_init_param 
 004b c0588087 beq patch16_1 ,p_lpm_check_wake_lock 
 004c c0590091 beq patch16_2 ,p_g24_dispatch 
@@ -113,11 +113,11 @@
 005a c03185b8 beq patch2c_3 ,p_le_prepare_tx 
 005b c03305e7 beq patch2c_6 ,p_le_parse 
 005c c03385fe beq patch2c_7 ,p_le_parse_l2cap 
-005d c0350637 beq patch2d_2 ,p_le_adv_not_match 
-005e c03b8641 beq patch2e_7 ,p_le_lpm_setmult 
-005f c046064d beq patch31_4 ,p_twspi_reset 
-0060 c0468659 beq patch31_5 ,p_spid_init 
-0061 c07d06b3 beq patch3f_2 ,p_check_51cmd_once_continue 
+005d c0350648 beq patch2d_2 ,p_le_adv_not_match 
+005e c03b8652 beq patch2e_7 ,p_le_lpm_setmult 
+005f c046065e beq patch31_4 ,p_twspi_reset 
+0060 c046866a beq patch31_5 ,p_spid_init 
+0061 c07d06c4 beq patch3f_2 ,p_check_51cmd_once_continue 
 0062 20202a8e branch loop 
 
 p_mouse_select_device_button_wakeup_check:
@@ -197,7 +197,7 @@
 009a 204000f3 call p_g24_transmit_packet 
 009b 6800cc51 fetch 1 ,mem_24g_pairing_sm 
 009c c1ff8000 rtnne state_24g_pairing_success 
-009d 2040066f call power_ctrl_start 
+009d 20400680 call power_ctrl_start 
 009e 6800cb29 fetch 1 ,mem_mouse_multi_led_state 
 009f c0008363 beq on ,p_g24_transmit_by_interrupt_enable 
 
@@ -212,11 +212,11 @@
 
 p_g24_pair_dispatch:
 00a5 7011c5c0 jam zcode_c0 ,mem_zcode_temp_param0 
-00a6 20200767 branch p_zcode_entrance 
+00a6 20200778 branch p_zcode_entrance 
 
 p_g24_reconn_dispatch:
 00a7 7011c570 jam zcode_70 ,mem_zcode_temp_param0 
-00a8 20200767 branch p_zcode_entrance 
+00a8 20200778 branch p_zcode_entrance 
 
 p_g24_transmit_by_interrupt:
 00a9 20400241 call p_g24_timer_check 
@@ -335,7 +335,7 @@
 00f8 2437816d nbranch p_g24_retransmit ,user3 
 00f9 2040015f call p_g24_txbuf_clear 
 00fa 2040018a call p_g24_ackpayload_parse 
-00fb 20400718 call power_ctrl_pac_succ_incrs 
+00fb 20400729 call power_ctrl_pac_succ_incrs 
 
 p_g24_transmit_next_packet:
 00fc 704b5200 jam 0 ,mem_retry_count 
@@ -511,7 +511,7 @@
 017c 20202dd4 branch g24_stop_24g_mode 
 
 p_g24_tx_fast_hop:
-017d 2040072f call power_ctrl_txpower_incrs 
+017d 20400740 call power_ctrl_txpower_incrs 
 017e 204005d8 call power_ctrl_pac_succ_decrs 
 017f 2020012b branch p_g24_ch 
 
@@ -571,14 +571,14 @@
 
 p_g24_pairing_sm:
 01a6 7011c590 jam zcode_90 ,mem_zcode_temp_param0 
-01a7 20200767 branch p_zcode_entrance 
+01a7 20200778 branch p_zcode_entrance 
 
 p_g24_paring_mode_start:
-01a8 20400715 call power_ctrl_pac_succ_cnt_init 
+01a8 20400726 call power_ctrl_pac_succ_cnt_init 
 
 p_g24_paring_mode:
 01a9 7011c591 jam zcode_91 ,mem_zcode_temp_param0 
-01aa 20200767 branch p_zcode_entrance 
+01aa 20200778 branch p_zcode_entrance 
 
 p_g24_check_51cmd_stop_24g:
 01ab 793f8026 set0 mark_24g ,mark 
@@ -914,7 +914,7 @@
 
 p_mouse4_0_check_reconn_target:
 02b9 7011c523 jam zcode_23 ,mem_zcode_temp_param0 
-02ba 20200767 branch p_zcode_entrance 
+02ba 20200778 branch p_zcode_entrance 
 
 p_le_check_adv_flag:
 02bb da204370 arg mem_le_adv_data ,rega 
@@ -940,7 +940,7 @@
 
 p_mouse_24g_pairing_button:
 02c9 7011c562 jam zcode_62 ,mem_zcode_temp_param0 
-02ca 20200767 branch p_zcode_entrance 
+02ca 20200778 branch p_zcode_entrance 
 
 p_mouse_init_sunt:
 02cb 20400310 call p_mouse_spi_init 
@@ -1130,15 +1130,15 @@
 
 p_mouse_start_24g_mode:
 0353 70472001 jam 1 ,mem_device_flag 
-0354 20400708 call p_mouse_mode_24g_device_multi_led_on 
+0354 20400719 call p_mouse_mode_24g_device_multi_led_on 
 
 p_g24_start_24g_mode:
 0355 7011c560 jam zcode_60 ,mem_zcode_temp_param0 
-0356 20200767 branch p_zcode_entrance 
+0356 20200778 branch p_zcode_entrance 
 
 p_g24_auto_pair_start:
 0357 7011c561 jam zcode_61 ,mem_zcode_temp_param0 
-0358 20200767 branch p_zcode_entrance 
+0358 20200778 branch p_zcode_entrance 
 
 p_pdata_0xff_check:
 0359 20407fe7 call enable_user 
@@ -1423,7 +1423,7 @@
 0428 6000c77a store 1 ,mem_mouse_dpi 
 0429 1fe0fe02 increase 2 ,pdata 
 042a 6000cb2e store 1 ,mem_mouse_multi_led_blink_count 
-042b 20400705 call p_mouse_dpi_multi_led_blink 
+042b 20400716 call p_mouse_dpi_multi_led_blink 
 042c 20203d7e branch mouse_seting_dpi 
 
 p_mouse_dpi_up:
@@ -1451,12 +1451,12 @@
 
 p_mouse_le_bb_event_connected:
 0440 7011c5d0 jam zcode_d0 ,mem_zcode_temp_param0 
-0441 20200767 branch p_zcode_entrance 
+0441 20200778 branch p_zcode_entrance 
 
 p_mouse_le_bb_disconnected:
 0442 2040046a call p_mouse_sensor_powerdown_check 
 0443 7011c5a2 jam zcode_a2 ,mem_zcode_temp_param0 
-0444 20200767 branch p_zcode_entrance 
+0444 20200778 branch p_zcode_entrance 
 
 p_mouse_le_enc_info:
 
@@ -1466,25 +1466,25 @@
 
 p_mouse_le_ll_start_encryt:
 0447 7011c5b3 jam zcode_b3 ,mem_zcode_temp_param0 
-0448 20200767 branch p_zcode_entrance 
+0448 20200778 branch p_zcode_entrance 
 
 p_mouse_le_conn_param_update_rsp_recieved:
 0449 7011c5a1 jam zcode_a1 ,mem_zcode_temp_param0 
-044a 20200767 branch p_zcode_entrance 
+044a 20200778 branch p_zcode_entrance 
 
 p_mouse_bb_event_reconn_timeout:
 
 p_mouse_bb_event_reconn_failed:
 044b 7011c5a3 jam zcode_a3 ,mem_zcode_temp_param0 
-044c 20200767 branch p_zcode_entrance 
+044c 20200778 branch p_zcode_entrance 
 
 p_mouse_irtual_cable_unplug:
 044d 7011c571 jam zcode_71 ,mem_zcode_temp_param0 
-044e 20200767 branch p_zcode_entrance 
+044e 20200778 branch p_zcode_entrance 
 
 p_mouse_sniff_not_accept:
 044f 7011c5b1 jam zcode_b1 ,mem_zcode_temp_param0 
-0450 20200767 branch p_zcode_entrance 
+0450 20200778 branch p_zcode_entrance 
 
 p_mouse_bb_event_connected:
 0451 704bb900 jam 0 ,mem_mouse_connected_state 
@@ -1495,25 +1495,25 @@
 p_mouse_bb_event_disconnected:
 0455 2040046a call p_mouse_sensor_powerdown_check 
 0456 7011c5b4 jam zcode_b4 ,mem_zcode_temp_param0 
-0457 20200767 branch p_zcode_entrance 
+0457 20200778 branch p_zcode_entrance 
 
 p_mouse_enter_sniff_check:
 0458 7011c5b2 jam zcode_b2 ,mem_zcode_temp_param0 
-0459 20200767 branch p_zcode_entrance 
+0459 20200778 branch p_zcode_entrance 
 
 p_mouse_24g_pairing_complete:
 045a 704bb900 jam 0 ,mem_mouse_connected_state 
 045b 204002d3 call p_mouse_init_sensor_reset 
 045c 7011c592 jam zcode_92 ,mem_zcode_temp_param0 
-045d 20200767 branch p_zcode_entrance 
+045d 20200778 branch p_zcode_entrance 
 
 p_mouse_24g_attempt_fail:
 045e 704bb901 jam 1 ,mem_mouse_connected_state 
 045f 704b2e0a jam 10 ,mem_mouse_multi_led_blink_count 
-0460 20400705 call p_mouse_dpi_multi_led_blink 
+0460 20400716 call p_mouse_dpi_multi_led_blink 
 0461 2040046a call p_mouse_sensor_powerdown_check 
 0462 7011c5a0 jam zcode_a0 ,mem_zcode_temp_param0 
-0463 20200767 branch p_zcode_entrance 
+0463 20200778 branch p_zcode_entrance 
 
 p_mouse_24g_attempt_success:
 0464 704bb900 jam 0 ,mem_mouse_connected_state 
@@ -1525,7 +1525,7 @@
 p_mouse_before_hibernate:
 0467 2040046a call p_mouse_sensor_powerdown_check 
 0468 7011c5a4 jam zcode_a4 ,mem_zcode_temp_param0 
-0469 20200767 branch p_zcode_entrance 
+0469 20200778 branch p_zcode_entrance 
 
 p_mouse_sensor_powerdown_check:
 046a 6800cb00 fetch 1 ,mem_mouse_init_sensor_reset_flag 
@@ -1552,7 +1552,7 @@
 047b 2040047f call p_mouse_send_switch_req_timer 
 047c 20404231 call mouse_check_hid_handshake_timer 
 047d 20400482 call p_mouse_bt_check_sniff_req_timeout_timer 
-047e 202006cb branch p_mouse_multi_led_blink_timer 
+047e 202006dc branch p_mouse_multi_led_blink_timer 
 
 p_mouse_send_switch_req_timer:
 047f da60480b arg mem_mouse_send_switch_req_timer ,regc 
@@ -1702,7 +1702,7 @@
 p_mouse_le_bb_disconnected_led_blink_set:
 04e2 704bb901 jam 1 ,mem_mouse_connected_state 
 04e3 704b2e0a jam 10 ,mem_mouse_multi_led_blink_count 
-04e4 20200705 branch p_mouse_dpi_multi_led_blink 
+04e4 20200716 branch p_mouse_dpi_multi_led_blink 
 
 p_mouse_adc_read:
 04e5 68014b2e fetch 2 ,mem_mouse_multi_led_blink_count 
@@ -1737,7 +1737,7 @@
 0500 6800caff fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
 0501 207a0000 rtn blank 
 0502 704aff00 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
-0503 202006f9 branch p_mouse_multi_led_off 
+0503 2020070a branch p_mouse_multi_led_off 
 
 p_mouse_vdd_decrease:
 0504 d8400005 arg 0x05 ,temp 
@@ -1787,8 +1787,8 @@
 0526 1fe67c1e sub pdata ,30 ,null 
 0527 2441052b ncall p_mouse_adc_low_volatage_led_timer_count_clean ,positive 
 0528 1fe67c0a sub pdata ,10 ,null 
-0529 202106eb branch p_mouse_multi_led_on ,positive 
-052a 202006f9 branch p_mouse_multi_led_off 
+0529 202106fc branch p_mouse_multi_led_on ,positive 
+052a 2020070a branch p_mouse_multi_led_off 
 
 p_mouse_adc_low_volatage_led_timer_count_clean:
 052b 7046cf01 jam 1 ,mem_adc_low_volatage_led_timer_count 
@@ -1954,11 +1954,11 @@
 
 p_le_addr_random_config:
 0595 7011c581 jam zcode_81 ,mem_zcode_temp_param0 
-0596 20200767 branch p_zcode_entrance 
+0596 20200778 branch p_zcode_entrance 
 
 p_mouse_start_discovery:
 0597 7011c550 jam zcode_50 ,mem_zcode_temp_param0 
-0598 20200767 branch p_zcode_entrance 
+0598 20200778 branch p_zcode_entrance 
 
 p_le_adv_data_update:
 0599 d8a0437b arg mem_le_adv_data + 11 ,contw 
@@ -1967,7 +1967,7 @@
 059c 202057b8 branch le_modified_name_adv 
 
 p_mouse_stop_discovery:
-059d 204006f3 call p_mouse_discovey_led_blink_off 
+059d 20400704 call p_mouse_discovey_led_blink_off 
 059e 58000000 setarg 0 
 059f 600146ac store 2 ,mem_mouse_discovery_timer 
 05a0 6000c714 store 1 ,mem_mouse_blink_count 
@@ -1981,7 +1981,7 @@
 05a6 c0065395 beq le_md_max_count ,le_slave_cont 
 05a7 204055aa call le_acknowledge 
 05a8 2040561e call le_prepare_tx 
-05a9 2040066f call power_ctrl_start 
+05a9 20400680 call power_ctrl_start 
 05aa 2020538f branch le_slave_match + 7 
 
 p_le_next_adv_channel:
@@ -1999,16 +1999,16 @@
 
 p_le_update_param:
 05b4 7011c540 jam zcode_40 ,mem_zcode_temp_param0 
-05b5 20200767 branch p_zcode_entrance 
+05b5 20200778 branch p_zcode_entrance 
 
 p_le_update_channel_map:
 05b6 7011c541 jam zcode_41 ,mem_zcode_temp_param0 
-05b7 20200767 branch p_zcode_entrance 
+05b7 20200778 branch p_zcode_entrance 
 
 p_le_prepare_tx:
 05b8 68008456 fetch 1 ,mem_le_arq 
 05b9 c28285d7 bbit1 wak ,p_le_prepare_tx_wak 
-05ba 20400718 call power_ctrl_pac_succ_incrs 
+05ba 20400729 call power_ctrl_pac_succ_incrs 
 05bb 6800c78e fetch 1 ,mem_empty_count 
 05bc 243a05c2 nbranch p_le_send_empyt ,blank 
 05bd 6800843f fetch 1 ,mem_le_state 
@@ -2054,7 +2054,7 @@
 power_ctrl_pac_succ_decrs:
 05d8 6800cd7a fetch 1 ,mem_power_ctrl_pac_succ_cnt 
 05d9 1fe67c02 sub pdata ,2 ,null 
-05da 2441071c ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+05da 2441072d ncall power_ctrl_pac_succ_cnt_reinit ,positive 
 05db 6800cd7a fetch 1 ,mem_power_ctrl_pac_succ_cnt 
 05dc c1000000 rtneq 0 
 05dd 1fe0ffff increase -1 ,pdata 
@@ -2102,7 +2102,7 @@
 p_le_parse_l2cap:
 05fe e8c10000 ifetch 2 ,contr 
 05ff c0020602 beq le_l2cap_cid_att ,p_le_parse_att 
-0600 c003062f beq le_l2cap_cid_smp ,p_le_parse_smp 
+0600 c0030640 beq le_l2cap_cid_smp ,p_le_parse_smp 
 0601 20205698 branch le_parse_l2cap + 11 
 
 p_le_parse_att:
@@ -2139,511 +2139,530 @@
 061e 20600000 rtn 
 
 p_le_parse_att1:
-061f c0050621 beq attop_read_request ,p_le_parse_att_read_request 
-0620 202058ad branch le_parse_att + 2 
+061f c0050622 beq attop_read_request ,p_le_parse_att_read_request 
+0620 c0090630 beq attop_write_request ,p_le_parse_att_write_request 
+0621 202058ad branch le_parse_att + 2 
 
 p_le_parse_att_read_request:
-0621 68090478 fetcht 2 ,mem_le_att_handle 
-0622 6800c4e9 fetch 1 ,mem_le_configuration 
-0623 c2818628 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+0622 68090478 fetcht 2 ,mem_le_att_handle 
+0623 6800c4e9 fetch 1 ,mem_le_configuration 
+0624 c2818629 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-0624 68010478 fetch 2 ,mem_le_att_handle 
-0625 c009da76 beq 0x13 ,le_send_att_error_response_notfound 
-0626 68090478 fetcht 2 ,mem_le_att_handle 
-0627 202059bf branch le_send_att_read_response 
+0625 68010478 fetch 2 ,mem_le_att_handle 
+0626 c009da76 beq 0x13 ,le_send_att_error_response_notfound 
+0627 68090478 fetcht 2 ,mem_le_att_handle 
+0628 202059bf branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-0628 680144fa fetch 2 ,mem_le_pairing_handle 
-0629 98467c00 isub temp ,null 
-062a 24228624 nbranch p_le_send_att_read_response ,zero 
-062b 20405a42 call le_check_encrypt_state 
-062c 24340624 nbranch p_le_send_att_read_response ,user 
-062d 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
-062e 20205a77 branch le_send_att_error_response 
+0629 680144fa fetch 2 ,mem_le_pairing_handle 
+062a 98467c00 isub temp ,null 
+062b 24228625 nbranch p_le_send_att_read_response ,zero 
+062c 20405a42 call le_check_encrypt_state 
+062d 24340625 nbranch p_le_send_att_read_response ,user 
+062e 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
+062f 20205a77 branch le_send_att_error_response 
+
+p_le_parse_att_write_request:
+0630 18c22200 copy contr ,rega 
+0631 680144fc fetch 2 ,mem_le_l2cap_size 
+0632 1fe0a5fd add pdata ,-3 ,regb 
+0633 204056e2 call le_writeatt_cb 
+0634 6800cbb3 fetch 1 ,mem_mouse_fast_conn_flag 
+0635 c07fda33 beq 0xff ,le_send_att_write_response_check_auth 
+0636 6800c7a1 fetch 1 ,mem_mouse_le_reconnect_flag 
+0637 203a5a33 branch le_send_att_write_response_check_auth ,blank 
+0638 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0639 c280da33 bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
+063a 5800001a setarg 0x001a 
+063b 68090478 fetcht 2 ,mem_le_att_handle 
+063c 98467c00 isub temp ,null 
+063d 2422da33 nbranch le_send_att_write_response_check_auth ,zero 
+063e 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
+063f 20205a77 branch le_send_att_error_response 
 
 p_le_parse_smp:
-062f e8c08000 ifetch 1 ,contr 
-0630 c0008633 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
-0631 c0028635 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
-0632 20205af6 branch le_parse_smp + 2 
+0640 e8c08000 ifetch 1 ,contr 
+0641 c0008644 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0642 c0028646 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0643 20205af6 branch le_parse_smp + 2 
 
 p_le_parse_smp_pairing_request:
-0633 704b6c01 jam 1 ,mem_le_send_security_request_flag 
-0634 20205b09 branch le_parse_smp_pairing_request 
+0644 704b6c01 jam 1 ,mem_le_send_security_request_flag 
+0645 20205b09 branch le_parse_smp_pairing_request 
 
 p_le_parse_smp_pairing_failed:
-0635 7011c582 jam zcode_82 ,mem_zcode_temp_param0 
-0636 20200767 branch p_zcode_entrance 
+0646 7011c582 jam zcode_82 ,mem_zcode_temp_param0 
+0647 20200778 branch p_zcode_entrance 
 
 p_le_adv_not_match:
-0637 68008016 fetch 1 ,mem_le_ch_mapped 
-0638 c093d6f2 bne 39 ,le_adv_loop 
-0639 180a7e00 random pdata 
-063a d84001ff arg 0x1ff ,temp 
-063b 98417e00 iand temp ,pdata 
-063c 1fe0fefa add pdata ,250 ,pdata 
-063d 20403cbe call delay 
-063e d8e00000 arg le_adv_interval_timer ,queue 
-063f 68014482 fetch 2 ,mem_le_adv_interval 
-0640 20207f08 branch timer_init 
+0648 68008016 fetch 1 ,mem_le_ch_mapped 
+0649 c093d6f2 bne 39 ,le_adv_loop 
+064a 180a7e00 random pdata 
+064b d84001ff arg 0x1ff ,temp 
+064c 98417e00 iand temp ,pdata 
+064d 1fe0fefa add pdata ,250 ,pdata 
+064e 20403cbe call delay 
+064f d8e00000 arg le_adv_interval_timer ,queue 
+0650 68014482 fetch 2 ,mem_le_adv_interval 
+0651 20207f08 branch timer_init 
 
 p_le_lpm_setmult:
-0641 7855fc00 disable wake 
-0642 20370644 branch p_le_lpm_set_mult_attempt ,attempt 
-0643 2436d806 nbranch le_lpm_lost ,match 
+0652 7855fc00 disable wake 
+0653 20370655 branch p_le_lpm_set_mult_attempt ,attempt 
+0654 2436d806 nbranch le_lpm_lost ,match 
 
 p_le_lpm_set_mult_attempt:
-0644 20402bcb call lpm_match 
-0645 680140c1 fetch 2 ,mem_rx_window_sniff 
-0646 6001044d store 2 ,mem_le_receive_window 
-0647 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-0648 2fe00603 compare 3 ,pdata ,3 
-0649 2420abde nbranch lpm_mult_short ,true 
-064a 202057fb branch le_lpm_set_mult_attempt + 3 
+0655 20402bcb call lpm_match 
+0656 680140c1 fetch 2 ,mem_rx_window_sniff 
+0657 6001044d store 2 ,mem_le_receive_window 
+0658 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0659 2fe00603 compare 3 ,pdata ,3 
+065a 2420abde nbranch lpm_mult_short ,true 
+065b 202057fb branch le_lpm_set_mult_attempt + 3 
 
 p_le_mouse_bb_event_connect_complete:
-064b 7011c542 jam zcode_42 ,mem_zcode_temp_param0 
-064c 20200767 branch p_zcode_entrance 
+065c 7011c542 jam zcode_42 ,mem_zcode_temp_param0 
+065d 20200778 branch p_zcode_entrance 
 
 p_twspi_reset:
-064d 68108077 hfetch 1 ,core_gpio_out3 
-064e 1fe17efd and_into 0xfd ,pdata 
-064f 60108077 hstore 1 ,core_gpio_out3 
-0650 68188073 hfetcht 1 ,core_gpio_oe3 
-0651 18418402 or_into 0x2 ,temp 
-0652 60188073 hstoret 1 ,core_gpio_oe3 
-0653 204063ee call twspi_disable 
-0654 184104fd and_into 0xfd ,temp 
-0655 2000000d nop 13 
-0656 2040065a call p_twspi_enable 
-0657 60188073 hstoret 1 ,core_gpio_oe3 
-0658 20600000 rtn 
+065e 68108077 hfetch 1 ,core_gpio_out3 
+065f 1fe17efd and_into 0xfd ,pdata 
+0660 60108077 hstore 1 ,core_gpio_out3 
+0661 68188073 hfetcht 1 ,core_gpio_oe3 
+0662 18418402 or_into 0x2 ,temp 
+0663 60188073 hstoret 1 ,core_gpio_oe3 
+0664 204063ee call twspi_disable 
+0665 184104fd and_into 0xfd ,temp 
+0666 2000000d nop 13 
+0667 2040066b call p_twspi_enable 
+0668 60188073 hstoret 1 ,core_gpio_oe3 
+0669 20600000 rtn 
 
 p_spid_init:
-0659 204064dd call spid_init_common 
+066a 204064dd call spid_init_common 
 
 p_twspi_enable:
-065a 68108081 hfetch 1 ,core_gpio_sel1 
-065b 79207e00 set1 0 ,pdata 
-065c 793ffe01 set0 1 ,pdata 
-065d 793ffe03 set0 3 ,pdata 
-065e 60108081 hstore 1 ,core_gpio_sel1 
-065f 20600000 rtn 
+066b 68108081 hfetch 1 ,core_gpio_sel1 
+066c 79207e00 set1 0 ,pdata 
+066d 793ffe01 set0 1 ,pdata 
+066e 793ffe03 set0 3 ,pdata 
+066f 60108081 hstore 1 ,core_gpio_sel1 
+0670 20600000 rtn 
 
 p_quit_connection_cont:
-0660 204033af call app_disconn_reason_collect_bt 
-0661 204026e9 call sniff_exit 
-0662 700a9902 jam bt_evt_bb_disconnected ,mem_fifo_temp 
-0663 20407d86 call ui_ipc_send_event 
-0664 20405cf7 call init_lmp_work 
-0665 20404d6b call l2cap_init_work 
-0666 2020246e branch quit_connection_cont + 8 
+0671 204033af call app_disconn_reason_collect_bt 
+0672 204026e9 call sniff_exit 
+0673 700a9902 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+0674 20407d86 call ui_ipc_send_event 
+0675 20405cf7 call init_lmp_work 
+0676 20404d6b call l2cap_init_work 
+0677 2020246e branch quit_connection_cont + 8 
 
 p_prepare_tx:
-0667 68008030 fetch 1 ,mem_state 
-0668 2feffe00 isolate1 state_inconn ,pdata 
-0669 2040866b call p_bt_power_ctrl ,true 
-066a 2020248a branch prepare_tx + 1 
+0678 68008030 fetch 1 ,mem_state 
+0679 2feffe00 isolate1 state_inconn ,pdata 
+067a 2040867c call p_bt_power_ctrl ,true 
+067b 2020248a branch prepare_tx + 1 
 
 p_bt_power_ctrl:
-066b 68008047 fetch 1 ,mem_arq 
-066c 2feffe03 isolate1 wack ,pdata 
-066d 204085d8 call power_ctrl_pac_succ_decrs ,true 
-066e 24408718 ncall power_ctrl_pac_succ_incrs ,true 
+067c 68008047 fetch 1 ,mem_arq 
+067d 2feffe03 isolate1 wack ,pdata 
+067e 204085d8 call power_ctrl_pac_succ_decrs ,true 
+067f 24408729 ncall power_ctrl_pac_succ_incrs ,true 
 
 power_ctrl_start:
-066f 68014682 fetch 2 ,mem_ui_state_map 
-0670 c3858000 rtnbit1 ui_state_ble_adv 
-0671 c3838000 rtnbit1 ui_state_bt_reconnect 
-0672 c3830000 rtnbit1 ui_state_bt_discovery 
-0673 da204d03 arg mem_rssi_signal_buf ,rega 
-0674 20400250 call p_rssi_average 
-0675 6008cd7b storet 1 ,mem_rssi_avg_received 
-0676 58000082 setarg rssi_dis_max_24g 
-0677 c5130679 bmark1 mark_24g ,power_ctrl_start_next 
-0678 58000080 setarg rssi_dis_max_ble 
+0680 68014682 fetch 2 ,mem_ui_state_map 
+0681 c3858000 rtnbit1 ui_state_ble_adv 
+0682 c3838000 rtnbit1 ui_state_bt_reconnect 
+0683 c3830000 rtnbit1 ui_state_bt_discovery 
+0684 da204d03 arg mem_rssi_signal_buf ,rega 
+0685 20400250 call p_rssi_average 
+0686 6008cd7b storet 1 ,mem_rssi_avg_received 
+0687 58000082 setarg rssi_dis_max_24g 
+0688 c513068a bmark1 mark_24g ,power_ctrl_start_next 
+0689 58000080 setarg rssi_dis_max_ble 
 
 power_ctrl_start_next:
-0679 98467c00 isub temp ,null 
-067a 2421072e nbranch power_ctrl_txpower_incrs_force ,positive 
-067b 6800cd7a fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-067c 1fe67c02 sub pdata ,2 ,null 
-067d 2421071e nbranch power_ctrl_txpower_decrs_check ,positive 
-067e 6800cd7a fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-067f c000072f beq 0 ,power_ctrl_txpower_incrs 
-0680 20600000 rtn 
+068a 98467c00 isub temp ,null 
+068b 2421073f nbranch power_ctrl_txpower_incrs_force ,positive 
+068c 6800cd7a fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+068d 1fe67c02 sub pdata ,2 ,null 
+068e 2421072f nbranch power_ctrl_txpower_decrs_check ,positive 
+068f 6800cd7a fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0690 c0000740 beq 0 ,power_ctrl_txpower_incrs 
+0691 20600000 rtn 
 
 p_slave_conn_recv_packet:
-0681 204024f0 call slave_receive_master_slot 
-0682 242c28f9 nbranch shutdown_radio ,sync 
-0683 204029bb call save_rssi 
-0684 2040020e call p_rssi_signal 
-0685 20202518 branch slave_conn_recv_packet + 4 
+0692 204024f0 call slave_receive_master_slot 
+0693 242c28f9 nbranch shutdown_radio ,sync 
+0694 204029bb call save_rssi 
+0695 2040020e call p_rssi_signal 
+0696 20202518 branch slave_conn_recv_packet + 4 
 
 p_lpm_dispatch:
-0686 c6130000 rtnmark1 mark_24g 
-0687 20402afa call lpo_calibration 
-0688 6801c16f fetch 3 ,mem_clks_per_lpo 
-0689 207a0000 rtn blank 
-068a 6800c091 fetch 1 ,mem_lpm_mode 
-068b 207a0000 rtn blank 
-068c 6800cb2f fetch 1 ,mem_mouse_multi_led_on_timer 
-068d 247a0000 nrtn blank 
-068e 6800c65a fetch 1 ,mem_ssp_enable 
-068f 203a0692 branch p_lpm_dispatch_next ,blank 
-0690 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
-0691 207a0000 rtn blank 
+0697 c6130000 rtnmark1 mark_24g 
+0698 20402afa call lpo_calibration 
+0699 6801c16f fetch 3 ,mem_clks_per_lpo 
+069a 207a0000 rtn blank 
+069b 6800c091 fetch 1 ,mem_lpm_mode 
+069c 207a0000 rtn blank 
+069d 6800cb2f fetch 1 ,mem_mouse_multi_led_on_timer 
+069e 247a0000 nrtn blank 
+069f 6800c65a fetch 1 ,mem_ssp_enable 
+06a0 203a06a3 branch p_lpm_dispatch_next ,blank 
+06a1 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+06a2 207a0000 rtn blank 
 
 p_lpm_dispatch_next:
-0692 6800c4c0 fetch 1 ,mem_le_sc_calc 
-0693 247a0000 nrtn blank 
-0694 20402c3a call lpm_check_wake_lock 
-0695 247a0000 nrtn blank 
-0696 6800c040 fetch 1 ,mem_context 
-0697 2fe00e03 compare 3 ,pdata ,0x7 
-0698 2420ab9d nbranch lpm_dispatch_unconn ,true 
-0699 68014042 fetch 2 ,mem_context + coffset_tsniff 
-069a d840ffff arg 0xffff ,temp 
-069b 98467c00 isub temp ,null 
-069c 20628000 rtn zero 
-069d 20202b7d branch lpm_dispatch_next + 9 
+06a3 6800c4c0 fetch 1 ,mem_le_sc_calc 
+06a4 247a0000 nrtn blank 
+06a5 20402c3a call lpm_check_wake_lock 
+06a6 247a0000 nrtn blank 
+06a7 6800c040 fetch 1 ,mem_context 
+06a8 2fe00e03 compare 3 ,pdata ,0x7 
+06a9 2420ab9d nbranch lpm_dispatch_unconn ,true 
+06aa 68014042 fetch 2 ,mem_context + coffset_tsniff 
+06ab d840ffff arg 0xffff ,temp 
+06ac 98467c00 isub temp ,null 
+06ad 20628000 rtn zero 
+06ae 20202b7d branch lpm_dispatch_next + 9 
 
 p_lpm_set_mult:
-069e 7855fc00 disable wake 
-069f 68008030 fetch 1 ,mem_state 
-06a0 c4008000 rtnbit0 state_insniff 
-06a1 2436abd0 nbranch lpm_not_match ,match 
-06a2 20402bcb call lpm_match 
-06a3 680140c1 fetch 2 ,mem_rx_window_sniff 
-06a4 6001003e store 2 ,mem_rx_window 
-06a5 68008047 fetch 1 ,mem_arq 
-06a6 c281abde bbit1 wack ,lpm_mult_short 
-06a7 c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
-06a8 20405274 call l2cap_malloc_is_fifo_empty 
-06a9 243a2bde nbranch lpm_mult_short ,blank 
-06aa 205a06ac call p_lpm_set_attemp_timeout ,blank 
-06ab 20202bbe branch lpm_set_mult + 13 
+06af 7855fc00 disable wake 
+06b0 68008030 fetch 1 ,mem_state 
+06b1 c4008000 rtnbit0 state_insniff 
+06b2 2436abd0 nbranch lpm_not_match ,match 
+06b3 20402bcb call lpm_match 
+06b4 680140c1 fetch 2 ,mem_rx_window_sniff 
+06b5 6001003e store 2 ,mem_rx_window 
+06b6 68008047 fetch 1 ,mem_arq 
+06b7 c281abde bbit1 wack ,lpm_mult_short 
+06b8 c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+06b9 20405274 call l2cap_malloc_is_fifo_empty 
+06ba 243a2bde nbranch lpm_mult_short ,blank 
+06bb 205a06bd call p_lpm_set_attemp_timeout ,blank 
+06bc 20202bbe branch lpm_set_mult + 13 
 
 p_lpm_set_attemp_timeout:
-06ac 70008a01 jam 1 ,mem_current_sniff_attempt 
-06ad 70008b00 jam 0 ,mem_current_sniff_timeout 
-06ae 20600000 rtn 
+06bd 70008a01 jam 1 ,mem_current_sniff_attempt 
+06be 70008b00 jam 0 ,mem_current_sniff_timeout 
+06bf 20600000 rtn 
 
 p_mouse_bb_disconnected:
-06af 6800cb2e fetch 1 ,mem_mouse_multi_led_blink_count 
-06b0 247a0000 nrtn blank 
-06b1 7011c510 jam zcode_10 ,mem_zcode_temp_param0 
-06b2 20200767 branch p_zcode_entrance 
+06c0 6800cb2e fetch 1 ,mem_mouse_multi_led_blink_count 
+06c1 247a0000 nrtn blank 
+06c2 7011c510 jam zcode_10 ,mem_zcode_temp_param0 
+06c3 20200778 branch p_zcode_entrance 
 
 p_check_51cmd_once_continue:
-06b3 204062bc call lmo_fifo_check 
-06b4 243a7ddb nbranch check_51cmd_restore ,blank 
-06b5 68008a99 fetch 1 ,mem_fifo_temp 
-06b6 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
-06b7 c00f86be beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
-06b8 c01006c1 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
-06b9 c00906bb beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
-06ba 20207dca branch check_51cmd_once_continue + 2 
+06c4 204062bc call lmo_fifo_check 
+06c5 243a7ddb nbranch check_51cmd_restore ,blank 
+06c6 68008a99 fetch 1 ,mem_fifo_temp 
+06c7 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+06c8 c00f86cf beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
+06c9 c01006d2 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
+06ca c00906cc beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+06cb 20207dca branch check_51cmd_once_continue + 2 
 
 p_check_51cmd_ble_update_connect_param:
-06bb 20405890 call le_fifo_check_full 
-06bc 247a0000 nrtn blank 
-06bd 20205abf branch le_l2cap_tx_update_req 
+06cc 20405890 call le_fifo_check_full 
+06cd 247a0000 nrtn blank 
+06ce 20205abf branch le_l2cap_tx_update_req 
 
 p_flash_store_le_reconn_info:
-06be 70018534 jam rec_4_mode ,mem_record_bt_mode 
-06bf 6803044f fetch 6 ,mem_le_plap 
-06c0 202006c3 branch p_flash_store_reconn_info 
+06cf 70018534 jam rec_4_mode ,mem_record_bt_mode 
+06d0 6803044f fetch 6 ,mem_le_plap 
+06d1 202006d4 branch p_flash_store_reconn_info 
 
 p_flash_store_bd_reconn_info:
-06c1 70018533 jam rec_3_mode ,mem_record_bt_mode 
-06c2 68030040 fetch 6 ,mem_plap 
+06d2 70018533 jam rec_3_mode ,mem_record_bt_mode 
+06d3 68030040 fetch 6 ,mem_plap 
 
 p_flash_store_reconn_info:
-06c3 60030186 store 6 ,mem_temp_lap 
+06d4 60030186 store 6 ,mem_temp_lap 
 
 p_mouse_store_remote_bdaddr:
-06c4 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-06c5 c4038000 rtnbit0 mouse_store_eeprom_flag 
-06c6 d8e00007 arg mouse_store_eeprom_flag ,queue 
-06c7 204043d2 call mouse_disable_function_flag 
-06c8 204042e8 call mouse_check_device_addr 
+06d5 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+06d6 c4038000 rtnbit0 mouse_store_eeprom_flag 
+06d7 d8e00007 arg mouse_store_eeprom_flag ,queue 
+06d8 204043d2 call mouse_disable_function_flag 
+06d9 204042e8 call mouse_check_device_addr 
 
 p_mouse_unplug_clean_bdaddr:
-06c9 204042fb call mouse_before_store_reconn_info 
-06ca 20200301 branch p_mouse_store_flash_device_info 
+06da 204042fb call mouse_before_store_reconn_info 
+06db 20200301 branch p_mouse_store_flash_device_info 
 
 p_mouse_multi_led_blink_timer:
-06cb 6800cb27 fetch 1 ,mem_mouse_multi_led_blink_enable 
-06cc 207a0000 rtn blank 
-06cd 6800cb2a fetch 1 ,mem_mouse_multi_led_type 
-06ce c00006d1 beq multi_led_on ,p_mouse_multi_led_type_on 
-06cf c00086db beq multi_led_blink ,p_mouse_multi_led_type_blink 
-06d0 20600000 rtn 
+06dc 6800cb27 fetch 1 ,mem_mouse_multi_led_blink_enable 
+06dd 207a0000 rtn blank 
+06de 6800cb2a fetch 1 ,mem_mouse_multi_led_type 
+06df c00006e2 beq multi_led_on ,p_mouse_multi_led_type_on 
+06e0 c00086ec beq multi_led_blink ,p_mouse_multi_led_type_blink 
+06e1 20600000 rtn 
 
 p_mouse_multi_led_type_on:
-06d1 204006eb call p_mouse_multi_led_on 
-06d2 6800cb2f fetch 1 ,mem_mouse_multi_led_on_timer 
-06d3 1fe0fe01 increase 1 ,pdata 
-06d4 6000cb2f store 1 ,mem_mouse_multi_led_on_timer 
-06d5 6808cb2b fetcht 1 ,mem_mouse_multi_led_on_timer_init 
-06d6 98467c00 isub temp ,null 
-06d7 204286d9 call p_mouse_multi_led_off_poweron2s ,zero 
-06d8 20600000 rtn 
+06e2 204006fc call p_mouse_multi_led_on 
+06e3 6800cb2f fetch 1 ,mem_mouse_multi_led_on_timer 
+06e4 1fe0fe01 increase 1 ,pdata 
+06e5 6000cb2f store 1 ,mem_mouse_multi_led_on_timer 
+06e6 6808cb2b fetcht 1 ,mem_mouse_multi_led_on_timer_init 
+06e7 98467c00 isub temp ,null 
+06e8 204286ea call p_mouse_multi_led_off_poweron2s ,zero 
+06e9 20600000 rtn 
 
 p_mouse_multi_led_off_poweron2s:
-06d9 704b3100 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
-06da 202006f9 branch p_mouse_multi_led_off 
+06ea 704b3100 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+06eb 2020070a branch p_mouse_multi_led_off 
 
 p_mouse_multi_led_type_blink:
-06db 6800cb2d fetch 1 ,mem_mouse_multi_led_blink_timer 
-06dc 1fe0ffff increase -1 ,pdata 
-06dd 6000cb2d store 1 ,mem_mouse_multi_led_blink_timer 
-06de 247a0000 nrtn blank 
-06df 6800cb2c fetch 1 ,mem_mouse_multi_led_blink_timer_init 
-06e0 6000cb2d store 1 ,mem_mouse_multi_led_blink_timer 
-06e1 6800cb30 fetch 1 ,mem_mouse_multi_led_blink_count_limited 
-06e2 203a06e7 branch p_mouse_multi_led_blink_count_no_limited ,blank 
-06e3 6800cb2e fetch 1 ,mem_mouse_multi_led_blink_count 
-06e4 203a06f7 branch p_mouse_multi_led_blink_off ,blank 
-06e5 1fe0ffff increase -1 ,pdata 
-06e6 6000cb2e store 1 ,mem_mouse_multi_led_blink_count 
+06ec 6800cb2d fetch 1 ,mem_mouse_multi_led_blink_timer 
+06ed 1fe0ffff increase -1 ,pdata 
+06ee 6000cb2d store 1 ,mem_mouse_multi_led_blink_timer 
+06ef 247a0000 nrtn blank 
+06f0 6800cb2c fetch 1 ,mem_mouse_multi_led_blink_timer_init 
+06f1 6000cb2d store 1 ,mem_mouse_multi_led_blink_timer 
+06f2 6800cb30 fetch 1 ,mem_mouse_multi_led_blink_count_limited 
+06f3 203a06f8 branch p_mouse_multi_led_blink_count_no_limited ,blank 
+06f4 6800cb2e fetch 1 ,mem_mouse_multi_led_blink_count 
+06f5 203a0708 branch p_mouse_multi_led_blink_off ,blank 
+06f6 1fe0ffff increase -1 ,pdata 
+06f7 6000cb2e store 1 ,mem_mouse_multi_led_blink_count 
 
 p_mouse_multi_led_blink_count_no_limited:
-06e7 6800cb29 fetch 1 ,mem_mouse_multi_led_state 
-06e8 c00086f9 beq on ,p_mouse_multi_led_off 
-06e9 c00006eb beq off ,p_mouse_multi_led_on 
-06ea 20600000 rtn 
+06f8 6800cb29 fetch 1 ,mem_mouse_multi_led_state 
+06f9 c000870a beq on ,p_mouse_multi_led_off 
+06fa c00006fc beq off ,p_mouse_multi_led_on 
+06fb 20600000 rtn 
 
 p_mouse_multi_led_on:
-06eb 704b2901 jam on ,mem_mouse_multi_led_state 
-06ec 6800c720 fetch 1 ,mem_device_flag 
-06ed c00086f1 beq 1 ,p_mouse_multi_24g_led_on 
-06ee c00106f0 beq 2 ,p_mouse_multi_bt_led_on 
-06ef 202006f2 branch p_mouse_multi_ble_led_on 
+06fc 704b2901 jam on ,mem_mouse_multi_led_state 
+06fd 6800c720 fetch 1 ,mem_device_flag 
+06fe c0008702 beq 1 ,p_mouse_multi_24g_led_on 
+06ff c0010701 beq 2 ,p_mouse_multi_bt_led_on 
+0700 20200703 branch p_mouse_multi_ble_led_on 
 
 p_mouse_multi_bt_led_on:
-06f0 2020448c branch mouse_device2_led_on 
+0701 2020448c branch mouse_device2_led_on 
 
 p_mouse_multi_24g_led_on:
-06f1 20204489 branch mouse_device1_led_on 
+0702 20204489 branch mouse_device1_led_on 
 
 p_mouse_multi_ble_led_on:
-06f2 2020448f branch mouse_device3_led_on 
+0703 2020448f branch mouse_device3_led_on 
 
 p_mouse_discovey_led_blink_off:
-06f3 6800cb2f fetch 1 ,mem_mouse_multi_led_on_timer 
-06f4 247a0000 nrtn blank 
-06f5 6800cb31 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
-06f6 247a0000 nrtn blank 
+0704 6800cb2f fetch 1 ,mem_mouse_multi_led_on_timer 
+0705 247a0000 nrtn blank 
+0706 6800cb31 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0707 247a0000 nrtn blank 
 
 p_mouse_multi_led_blink_off:
-06f7 58000000 setarg 0 
-06f8 6001cb2d store 3 ,mem_mouse_multi_led_blink_timer 
+0708 58000000 setarg 0 
+0709 6001cb2d store 3 ,mem_mouse_multi_led_blink_timer 
 
 p_mouse_multi_led_off:
-06f9 6800cb2e fetch 1 ,mem_mouse_multi_led_blink_count 
-06fa 243a06fd nbranch p_mouse_multi_led_off_wait_blink_over ,blank 
-06fb 704b2700 jam 0 ,mem_mouse_multi_led_blink_enable 
-06fc 704b2a00 jam 0 ,mem_mouse_multi_led_type 
+070a 6800cb2e fetch 1 ,mem_mouse_multi_led_blink_count 
+070b 243a070e nbranch p_mouse_multi_led_off_wait_blink_over ,blank 
+070c 704b2700 jam 0 ,mem_mouse_multi_led_blink_enable 
+070d 704b2a00 jam 0 ,mem_mouse_multi_led_type 
 
 p_mouse_multi_led_off_wait_blink_over:
-06fd 704b2f00 jam 0 ,mem_mouse_multi_led_on_timer 
-06fe 704b2900 jam off ,mem_mouse_multi_led_state 
-06ff 20404483 call mouse_devce_led_off + 1 
-0700 6800cb2e fetch 1 ,mem_mouse_multi_led_blink_count 
-0701 247a0000 nrtn blank 
-0702 6800cbb9 fetch 1 ,mem_mouse_connected_state 
-0703 243a340a nbranch app_enter_hibernate ,blank 
-0704 20600000 rtn 
+070e 704b2f00 jam 0 ,mem_mouse_multi_led_on_timer 
+070f 704b2900 jam off ,mem_mouse_multi_led_state 
+0710 20404483 call mouse_devce_led_off + 1 
+0711 6800cb2e fetch 1 ,mem_mouse_multi_led_blink_count 
+0712 247a0000 nrtn blank 
+0713 6800cbb9 fetch 1 ,mem_mouse_connected_state 
+0714 243a340a nbranch app_enter_hibernate ,blank 
+0715 20600000 rtn 
 
 p_mouse_dpi_multi_led_blink:
-0705 704b2c03 jam 3 ,mem_mouse_multi_led_blink_timer_init 
-0706 704b3001 jam 1 ,mem_mouse_multi_led_blink_count_limited 
-0707 20200711 branch p_mouse_multi_led_blink_enable 
+0716 704b2c03 jam 3 ,mem_mouse_multi_led_blink_timer_init 
+0717 704b3001 jam 1 ,mem_mouse_multi_led_blink_count_limited 
+0718 20200722 branch p_mouse_multi_led_blink_enable 
 
 p_mouse_mode_bt_device_multi_led_on:
 
 p_mouse_mode_24g_device_multi_led_on:
-0708 704b3101 jam 1 ,mem_mouse_multi_led_on_poweron2s_flag 
-0709 704b2701 jam on ,mem_mouse_multi_led_blink_enable 
-070a 704b2a00 jam multi_led_on ,mem_mouse_multi_led_type 
-070b 704b2f00 jam 0 ,mem_mouse_multi_led_on_timer 
-070c 20600000 rtn 
+0719 704b3101 jam 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+071a 704b2701 jam on ,mem_mouse_multi_led_blink_enable 
+071b 704b2a00 jam multi_led_on ,mem_mouse_multi_led_type 
+071c 704b2f00 jam 0 ,mem_mouse_multi_led_on_timer 
+071d 20600000 rtn 
 
 p_mouse_discovery_multi_led_blink:
-070d 704b3100 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
-070e 704b2c03 jam 3 ,mem_mouse_multi_led_blink_timer_init 
-070f 704b3000 jam 0 ,mem_mouse_multi_led_blink_count_limited 
-0710 704b2e01 jam 1 ,mem_mouse_multi_led_blink_count 
+071e 704b3100 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+071f 704b2c03 jam 3 ,mem_mouse_multi_led_blink_timer_init 
+0720 704b3000 jam 0 ,mem_mouse_multi_led_blink_count_limited 
+0721 704b2e01 jam 1 ,mem_mouse_multi_led_blink_count 
 
 p_mouse_multi_led_blink_enable:
-0711 704b2d05 jam 5 ,mem_mouse_multi_led_blink_timer 
-0712 704b2701 jam on ,mem_mouse_multi_led_blink_enable 
-0713 704b2a01 jam multi_led_blink ,mem_mouse_multi_led_type 
-0714 20600000 rtn 
+0722 704b2d05 jam 5 ,mem_mouse_multi_led_blink_timer 
+0723 704b2701 jam on ,mem_mouse_multi_led_blink_enable 
+0724 704b2a01 jam multi_led_blink ,mem_mouse_multi_led_type 
+0725 20600000 rtn 
 
 power_ctrl_pac_succ_cnt_init:
-0715 704d7d01 jam 1 ,mem_power_ctrl_level 
-0716 704d7a00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-0717 20600000 rtn 
+0726 704d7d01 jam 1 ,mem_power_ctrl_level 
+0727 704d7a00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0728 20600000 rtn 
 
 power_ctrl_pac_succ_incrs:
-0718 6800cd7a fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0719 1fe0fe01 increase 1 ,pdata 
-071a 6000cd7a store 1 ,mem_power_ctrl_pac_succ_cnt 
-071b 20600000 rtn 
+0729 6800cd7a fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+072a 1fe0fe01 increase 1 ,pdata 
+072b 6000cd7a store 1 ,mem_power_ctrl_pac_succ_cnt 
+072c 20600000 rtn 
 
 power_ctrl_pac_succ_cnt_reinit:
-071c 704d7a03 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-071d 20600000 rtn 
+072d 704d7a03 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+072e 20600000 rtn 
 
 power_ctrl_txpower_decrs_check:
-071e 6800cd7a fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-071f c1900000 rtnne 32 
-0720 704d7a00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+072f 6800cd7a fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0730 c1900000 rtnne 32 
+0731 704d7a00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_decrs:
-0721 6808cd7b fetcht 1 ,mem_rssi_avg_received 
-0722 58000077 setarg rssi_dis_min_24g 
-0723 c5130725 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-0724 58000075 setarg rssi_dis_min_ble 
+0732 6808cd7b fetcht 1 ,mem_rssi_avg_received 
+0733 58000077 setarg rssi_dis_min_24g 
+0734 c5130736 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0735 58000075 setarg rssi_dis_min_ble 
 
 power_ctrl_txpower_decrs_next:
-0725 98467c00 isub temp ,null 
-0726 24610000 nrtn positive 
-0727 6800cd7d fetch 1 ,mem_power_ctrl_level 
-0728 c0000736 beq 0 ,power_ctrl_decrs_level0 
-0729 1fe0ffff increase -1 ,pdata 
-072a 6000cd7d store 1 ,mem_power_ctrl_level 
-072b c0000736 beq 0 ,power_ctrl_decrs_level0 
+0736 98467c00 isub temp ,null 
+0737 24610000 nrtn positive 
+0738 6800cd7d fetch 1 ,mem_power_ctrl_level 
+0739 c0000747 beq 0 ,power_ctrl_decrs_level0 
+073a 1fe0ffff increase -1 ,pdata 
+073b 6000cd7d store 1 ,mem_power_ctrl_level 
+073c c0000747 beq 0 ,power_ctrl_decrs_level0 
 
 power_ctrl_decrs_level1:
 
 power_ctrl_incrs_level1:
-072c 7041de00 jam tx_power_0db ,mem_tx_power 
-072d 20600000 rtn 
+073d 7041de00 jam tx_power_0db ,mem_tx_power 
+073e 20600000 rtn 
 
 power_ctrl_txpower_incrs_force:
-072e 704d7a00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+073f 704d7a00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_incrs:
-072f 6800cd7d fetch 1 ,mem_power_ctrl_level 
-0730 c0010734 beq 2 ,power_ctrl_incrs_level2 
-0731 1fe0fe01 increase 1 ,pdata 
-0732 6000cd7d store 1 ,mem_power_ctrl_level 
-0733 c000872c beq 1 ,power_ctrl_incrs_level1 
+0740 6800cd7d fetch 1 ,mem_power_ctrl_level 
+0741 c0010745 beq 2 ,power_ctrl_incrs_level2 
+0742 1fe0fe01 increase 1 ,pdata 
+0743 6000cd7d store 1 ,mem_power_ctrl_level 
+0744 c000873d beq 1 ,power_ctrl_incrs_level1 
 
 power_ctrl_incrs_level2:
-0734 7041de02 jam tx_power_5db ,mem_tx_power 
-0735 20600000 rtn 
+0745 7041de02 jam tx_power_5db ,mem_tx_power 
+0746 20600000 rtn 
 
 power_ctrl_decrs_level0:
-0736 7041de04 jam tx_power_f5db ,mem_tx_power 
-0737 20600000 rtn 
+0747 7041de04 jam tx_power_f5db ,mem_tx_power 
+0748 20600000 rtn 
 
 p_set_freq_tx:
-0738 60088017 storet 1 ,mem_last_freq 
-0739 1840a200 add temp ,0 ,rega 
-073a 20402981 call rf_write_freq 
-073b 58000500 setarg param_pll_setup 
-073c 20402a8f call sleep 
+0749 60088017 storet 1 ,mem_last_freq 
+074a 1840a200 add temp ,0 ,rega 
+074b 20402981 call rf_write_freq 
+074c 58000500 setarg param_pll_setup 
+074d 20402a8f call sleep 
 
 p_rf_tx_enable:
-073d 70890601 jam 0x1 ,rfen_adc 
-073e 7089003c jam 0x3c ,rfen_rx 
-073f 708901e0 jam 0xe0 ,rfen_tx 
-0740 2000000a nop 10 
-0741 70890201 jam 0x01 ,rfen_mdm 
-0742 7089023d jam 0x3d ,rfen_mdm 
-0743 2000000a nop 10 
-0744 708903b7 jam 0xb7 ,rfen_sn 
-0745 2000000a nop 10 
-0746 7089027d jam 0x7d ,rfen_mdm 
-0747 6800c1de fetch 1 ,mem_tx_power 
-0748 c0010750 beq tx_power_5db ,p_set_tx_power_5db 
-0749 c0020758 beq tx_power_f5db ,p_set_tx_power_f5db 
-074a c0100762 beq tx_power_pair ,p_set_tx_power_pair 
+074e 70890601 jam 0x1 ,rfen_adc 
+074f 7089003c jam 0x3c ,rfen_rx 
+0750 708901e0 jam 0xe0 ,rfen_tx 
+0751 2000000a nop 10 
+0752 70890201 jam 0x01 ,rfen_mdm 
+0753 7089023d jam 0x3d ,rfen_mdm 
+0754 2000000a nop 10 
+0755 708903b7 jam 0xb7 ,rfen_sn 
+0756 2000000a nop 10 
+0757 7089027d jam 0x7d ,rfen_mdm 
+0758 6800c1de fetch 1 ,mem_tx_power 
+0759 c0010761 beq tx_power_5db ,p_set_tx_power_5db 
+075a c0020769 beq tx_power_f5db ,p_set_tx_power_f5db 
+075b c0100773 beq tx_power_pair ,p_set_tx_power_pair 
 
 p_set_tx_power_0db:
-074b 2040075d call p_rx_low_sens 
-074c 708955d0 jam 0xd0 ,0x8955 
-074d 708956e0 jam 0xe0 ,0x8956 
-074e 7089586c jam 0x6c ,0x8958 
-074f 2020294b branch set_tx_power_0db 
+075c 2040076e call p_rx_low_sens 
+075d 708955d0 jam 0xd0 ,0x8955 
+075e 708956e0 jam 0xe0 ,0x8956 
+075f 7089586c jam 0x6c ,0x8958 
+0760 2020294b branch set_tx_power_0db 
 
 p_set_tx_power_5db:
-0750 70894cfb jam 0xfb ,0x894c 
-0751 70894def jam 0xef ,0x894d 
-0752 70894eec jam 0xec ,0x894e 
-0753 70894f5e jam 0x5e ,0x894f 
-0754 708955d0 jam 0xd0 ,0x8955 
-0755 708956e0 jam 0xe0 ,0x8956 
-0756 7089583c jam 0x3c ,0x8958 
-0757 20202953 branch set_tx_power_5db 
+0761 70894cfb jam 0xfb ,0x894c 
+0762 70894def jam 0xef ,0x894d 
+0763 70894eec jam 0xec ,0x894e 
+0764 70894f5e jam 0x5e ,0x894f 
+0765 708955d0 jam 0xd0 ,0x8955 
+0766 708956e0 jam 0xe0 ,0x8956 
+0767 7089583c jam 0x3c ,0x8958 
+0768 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-0758 2040075d call p_rx_low_sens 
-0759 708955d0 jam 0xd0 ,0x8955 
-075a 708956c0 jam 0xc0 ,0x8956 
-075b 7089586c jam 0x6c ,0x8958 
-075c 2020295b branch set_tx_power_f5db 
+0769 2040076e call p_rx_low_sens 
+076a 708955d0 jam 0xd0 ,0x8955 
+076b 708956c0 jam 0xc0 ,0x8956 
+076c 7089586c jam 0x6c ,0x8958 
+076d 2020295b branch set_tx_power_f5db 
 
 p_rx_low_sens:
-075d 70894c5b jam 0x5b ,0x894c 
-075e 70894d96 jam 0x96 ,0x894d 
-075f 70894e2c jam 0x2c ,0x894e 
-0760 70894f46 jam 0x46 ,0x894f 
-0761 20600000 rtn 
+076e 70894c5b jam 0x5b ,0x894c 
+076f 70894d96 jam 0x96 ,0x894d 
+0770 70894e2c jam 0x2c ,0x894e 
+0771 70894f46 jam 0x46 ,0x894f 
+0772 20600000 rtn 
 
 p_set_tx_power_pair:
-0762 708956c0 jam 0xc0 ,0x8956 
-0763 708955d0 jam 0xd0 ,0x8955 
-0764 20600000 rtn 
+0773 708956c0 jam 0xc0 ,0x8956 
+0774 708955d0 jam 0xd0 ,0x8955 
+0775 20600000 rtn 
 
 p_shutdown_radio:
-0765 18002a08 force 8 ,radio_ctrl 
-0766 202028fa branch shutdown_radio + 1 
+0776 18002a08 force 8 ,radio_ctrl 
+0777 202028fa branch shutdown_radio + 1 
 
 p_zcode_entrance:
-0767 680891c5 fetcht 1 ,mem_zcode_temp_param0 
-0768 18518400 rshift4 temp ,temp 
-0769 6800cb56 fetch 1 ,mem_zcode_current_number 
-076a 98467c00 isub temp ,null 
-076b 20228786 branch p_zcode_run ,zero 
-076c 6008cb56 storet 1 ,mem_zcode_current_number 
-076d 18408401 increase 1 ,temp 
-076e 58000100 setarg zcode_buff_size 
-076f 984f8400 imul32 temp ,temp 
-0770 6801cb57 fetch 3 ,mem_xip_flash_offset 
-0771 98467e00 isub temp ,pdata 
-0772 6809cb5a fetcht 3 ,mem_flash_start_addr 
-0773 9840fe00 iadd temp ,pdata 
-0774 1fe0fffb increase -5 ,pdata 
-0775 6001cb5d store 3 ,mem_flash_address 
-0776 20400345 call p_flash_release_deep_power_down 
+0778 680891c5 fetcht 1 ,mem_zcode_temp_param0 
+0779 18518400 rshift4 temp ,temp 
+077a 6800cb56 fetch 1 ,mem_zcode_current_number 
+077b 98467c00 isub temp ,null 
+077c 20228797 branch p_zcode_run ,zero 
+077d 6008cb56 storet 1 ,mem_zcode_current_number 
+077e 18408401 increase 1 ,temp 
+077f 58000100 setarg zcode_buff_size 
+0780 984f8400 imul32 temp ,temp 
+0781 6801cb57 fetch 3 ,mem_xip_flash_offset 
+0782 98467e00 isub temp ,pdata 
+0783 6809cb5a fetcht 3 ,mem_flash_start_addr 
+0784 9840fe00 iadd temp ,pdata 
+0785 1fe0fffb increase -5 ,pdata 
+0786 6001cb5d store 3 ,mem_flash_address 
+0787 20400345 call p_flash_release_deep_power_down 
 
 p_zcode_read_loop:
-0777 6801cb5d fetch 3 ,mem_flash_address 
-0778 d8400100 arg zcode_buff_size ,temp 
-0779 da201f00 arg mem_zcode_buff ,rega 
-077a 20406562 call spid_read_flash 
-077b 68021f00 fetch 4 ,mem_zcode_buff 
-077c 680a4b60 fetcht 4 ,mem_zcode_head 
-077d 98467c00 isub temp ,null 
-077e 24228777 nbranch p_zcode_read_loop ,zero 
-077f 20400310 call p_mouse_spi_init 
-0780 58001f00 setarg mem_zcode_buff 
-0781 60014199 store 2 ,mem_patch_ptr 
-0782 70419b40 jam zcode_code_size ,mem_patch_len 
-0783 204064ca call load_ucode 
-0784 58000000 setarg 0 
-0785 60024199 store 4 ,mem_patch_ptr 
+0788 6801cb5d fetch 3 ,mem_flash_address 
+0789 d8400100 arg zcode_buff_size ,temp 
+078a da201f00 arg mem_zcode_buff ,rega 
+078b 20406562 call spid_read_flash 
+078c 68021f00 fetch 4 ,mem_zcode_buff 
+078d 680a4b60 fetcht 4 ,mem_zcode_head 
+078e 98467c00 isub temp ,null 
+078f 24228788 nbranch p_zcode_read_loop ,zero 
+0790 20400310 call p_mouse_spi_init 
+0791 58001f00 setarg mem_zcode_buff 
+0792 60014199 store 2 ,mem_patch_ptr 
+0793 70419b40 jam zcode_code_size ,mem_patch_len 
+0794 204064ca call load_ucode 
+0795 58000000 setarg 0 
+0796 60024199 store 4 ,mem_patch_ptr 
 
 p_zcode_run:
-0786 680091c5 fetch 1 ,mem_zcode_temp_param0 
-0787 20200001 branch p_zcode 
+0797 680091c5 fetch 1 ,mem_zcode_temp_param0 
+0798 20200001 branch p_zcode 
               org 0x2000
 
 start:
@@ -35360,7 +35379,7 @@
 
 z_mouse4_0_check_reconn_target:
 30006 704b6c01 jam 1 ,mem_le_send_security_request_flag 
-30007 20400708 call p_mouse_mode_bt_device_multi_led_on 
+30007 20400719 call p_mouse_mode_bt_device_multi_led_on 
 30008 7047a101 jam 1 ,mem_mouse_le_reconnect_flag 
 30009 680146a8 fetch 2 ,mem_mouse_direct_timeout 
 3000a 6808cbb3 fetcht 1 ,mem_mouse_fast_conn_flag 
@@ -35490,8 +35509,8 @@
 
 z_entrance4:
 50001 c0200005 beq zcode_40 ,z_le_update_param 
-50002 c0208017 beq zcode_41 ,z_le_update_channel_map 
-50003 c0210024 beq zcode_42 ,z_le_mouse_bb_event_connect_complete 
+50002 c0208019 beq zcode_41 ,z_le_update_channel_map 
+50003 c0210026 beq zcode_42 ,z_le_mouse_bb_event_connect_complete 
 50004 20600000 rtn 
 
 z_le_update_param:
@@ -35514,48 +35533,50 @@
 5000d 6800c3d6 fetch 1 ,mem_le_new_conninterval 
 5000e 1fe67c0c sub pdata ,le_interval_15ms ,null 
 5000f 2421000b nbranch z_mouse_le_conn_param_lpm_disable ,positive 
-50010 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
-50011 6808c7c7 fetcht 1 ,mem_lpm_mult_init 
-50012 98467c00 isub temp ,null 
-50013 20210007 branch z_mouse_le_lpm_mult_reinit ,positive 
-50014 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
-50015 6000c172 store 1 ,mem_lpm_mult 
-50016 20200009 branch z_mouse_le_conn_param_lpm_enable 
+50010 60014496 store 2 ,mem_le_interval_min 
+50011 60014498 store 2 ,mem_le_interval_min + 2 
+50012 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
+50013 6808c7c7 fetcht 1 ,mem_lpm_mult_init 
+50014 98467c00 isub temp ,null 
+50015 20210007 branch z_mouse_le_lpm_mult_reinit ,positive 
+50016 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
+50017 6000c7c7 store 1 ,mem_lpm_mult_init 
+50018 20200009 branch z_mouse_le_conn_param_lpm_enable 
 
 z_le_update_channel_map:
-50017 6800843f fetch 1 ,mem_le_state 
-50018 c4030000 rtnbit0 lestate_update_map 
-50019 2040001c call z_le_channel_map_overflow_check 
-5001a 24740000 nrtn user 
-5001b 202055a0 branch le_update_channel_map + 3 
+50019 6800843f fetch 1 ,mem_le_state 
+5001a c4030000 rtnbit0 lestate_update_map 
+5001b 2040001e call z_le_channel_map_overflow_check 
+5001c 24740000 nrtn user 
+5001d 202055a0 branch le_update_channel_map + 3 
 
 z_le_channel_map_overflow_check:
-5001c 78347c00 enable user 
-5001d 6800845a fetch 1 ,mem_le_event_count + 1 
-5001e 1ff1fe00 rshift4 pdata ,pdata 
-5001f c1878000 rtnne 0x0f 
-50020 68008460 fetch 1 ,mem_le_instant + 1 
-50021 1ff1fe00 rshift4 pdata ,pdata 
-50022 c1800000 rtnne 0x00 
-50023 20207fe9 branch disable_user 
+5001e 78347c00 enable user 
+5001f 6800845a fetch 1 ,mem_le_event_count + 1 
+50020 1ff1fe00 rshift4 pdata ,pdata 
+50021 c1878000 rtnne 0x0f 
+50022 68008460 fetch 1 ,mem_le_instant + 1 
+50023 1ff1fe00 rshift4 pdata ,pdata 
+50024 c1800000 rtnne 0x00 
+50025 20207fe9 branch disable_user 
 
 z_le_mouse_bb_event_connect_complete:
-50024 6800c7a1 fetch 1 ,mem_mouse_le_reconnect_flag 
-50025 247a0000 nrtn blank 
-50026 68008478 fetch 1 ,mem_le_att_handle 
-50027 1fe67e1a sub pdata ,26 ,pdata 
-50028 24628000 nrtn zero 
-50029 7046c600 jam 0 ,mem_le_start_encrypt_timer 
-5002a 20203d60 branch mouse_le_write_enable 
+50026 6800c7a1 fetch 1 ,mem_mouse_le_reconnect_flag 
+50027 247a0000 nrtn blank 
+50028 68008478 fetch 1 ,mem_le_att_handle 
+50029 1fe67e1a sub pdata ,26 ,pdata 
+5002a 24628000 nrtn zero 
+5002b 7046c600 jam 0 ,mem_le_start_encrypt_timer 
+5002c 20203d60 branch mouse_le_write_enable 
 
 z_quit_connection_cont:
-5002b 204033af call app_disconn_reason_collect_bt 
-5002c 204026e9 call sniff_exit 
-5002d 700a9902 jam bt_evt_bb_disconnected ,mem_fifo_temp 
-5002e 20407d86 call ui_ipc_send_event 
-5002f 20405cf7 call init_lmp_work 
-50030 20404d6b call l2cap_init_work 
-50031 2020246e branch quit_connection_cont + 8 
+5002d 204033af call app_disconn_reason_collect_bt 
+5002e 204026e9 call sniff_exit 
+5002f 700a9902 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+50030 20407d86 call ui_ipc_send_event 
+50031 20405cf7 call init_lmp_work 
+50032 20404d6b call l2cap_init_work 
+50033 2020246e branch quit_connection_cont + 8 
               org 0x60001
 
 z_entrance5:
@@ -35599,7 +35620,7 @@
 60022 2040fddd call check_51cmd_start_discovery ,true 
 60023 704b5100 jam 0 ,mem_mouse_bt_reconnect_flag 
 60024 204042c4 call mouse_start_discovery_norandom + 13 
-60025 2020070d branch p_mouse_discovery_multi_led_blink 
+60025 2020071e branch p_mouse_discovery_multi_led_blink 
 
 z_check_51cmd_adv:
 60026 7047a100 jam 0 ,mem_mouse_le_reconnect_flag 
@@ -35933,7 +35954,7 @@
 b0031 6012004c hstore 4 ,core_lpm_reg 
 b0032 20402c21 call lpm_write_ctrl 
 b0033 204074bd call disable_authrom 
-b0034 204006f7 call p_mouse_multi_led_blink_off 
+b0034 20400708 call p_mouse_multi_led_blink_off 
 b0035 20400301 call p_mouse_store_flash_device_info 
 b0036 20403e9f call mouse_before_hibernate_wheel_gpio_set 
 b0037 20400272 call p_mouse_setgpio_hibernate 
@@ -35982,7 +36003,7 @@
 z_mouse_bb_event_disconnected:
 c0018 704bb901 jam 1 ,mem_mouse_connected_state 
 c0019 704b2e0a jam 10 ,mem_mouse_multi_led_blink_count 
-c001a 20400705 call p_mouse_dpi_multi_led_blink 
+c001a 20400716 call p_mouse_dpi_multi_led_blink 
 c001b 704b0100 jam 0 ,mem_bt_rcvd_switch_req_accept 
 c001c 704b0300 jam 0 ,mem_bt_send_lmp_setup_complete 
 c001d 704b0c00 jam 0 ,mem_mouse_bt_send_first_package_flag 
Index: output/romcode.rom
===================================================================
--- /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/output/romcode.rom	(revision 3869)
+++ /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/output/romcode.rom	(working copy)
@@ -24638,7 +24638,7 @@
 c0118006
 20600000
 704b6c01
-20400708
+20400719
 7047a101
 680146a8
 6808cbb3
@@ -24730,8 +24730,8 @@
 70480b14
 2020636f
 c0200005
-c0208017
-c0210024
+c0208019
+c0210026
 20600000
 2040000d
 2020557d
@@ -24744,16 +24744,18 @@
 6800c3d6
 1fe67c0c
 2421000b
+60014496
+60014498
 6800c3d8
 6808c7c7
 98467c00
 20210007
 6800c3d8
-6000c172
+6000c7c7
 20200009
 6800843f
 c4030000
-2040001c
+2040001e
 24740000
 202055a0
 78347c00
@@ -24814,7 +24816,7 @@
 2040fddd
 704b5100
 204042c4
-2020070d
+2020071e
 7047a100
 204002bb
 58000005
@@ -25069,7 +25071,7 @@
 6012004c
 20402c21
 204074bd
-204006f7
+20400708
 20400301
 20403e9f
 20400272
@@ -25103,7 +25105,7 @@
 202041b9
 704bb901
 704b2e0a
-20400705
+20400716
 704b0100
 704b0300
 704b0c00
@@ -25182,4 +25184,4 @@
 704b6b14
 20400390
 202041c3
-0000c08d
+00005a63
Index: program/patch.prog
===================================================================
--- /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/program/patch.prog	(revision 3869)
+++ /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/program/patch.prog	(working copy)
@@ -2580,6 +2580,7 @@
 
 p_le_parse_att1:
 	beq ATTOP_READ_REQUEST,p_le_parse_att_read_request
+	beq ATTOP_WRITE_REQUEST,p_le_parse_att_write_request
 	branch le_parse_att+2
 p_le_parse_att_read_request:
 	fetcht 2,mem_le_att_handle
@@ -2598,6 +2599,26 @@
 	nbranch p_le_send_att_read_response,user
 	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
 	branch le_send_att_error_response
+
+p_le_parse_att_write_request:
+	copy contr,rega
+	fetch 2,mem_le_l2cap_size
+	add pdata,-3,regb
+	call le_writeatt_cb
+ifdef BLE_FAST_CONN_ENABLE
+	fetch 1,mem_mouse_fast_conn_flag
+	beq 0xff,le_send_att_write_response_check_auth
+endif
+	fetch 1,mem_mouse_le_reconnect_flag
+	branch le_send_att_write_response_check_auth,blank
+	fetch 1,mem_le_connect_status_flag
+	bbit1 LL_START_ENC_FLAG,le_send_att_write_response_check_auth
+	setarg 0x001a
+	fetcht 2,mem_le_att_handle
+	isub temp,null
+	nbranch le_send_att_write_response_check_auth,zero
+	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
+	branch le_send_att_error_response
 	
 p_le_parse_smp:
 	ifetch 1,contr
Index: program/z.prog
===================================================================
--- /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/program/z.prog	(revision 3869)
+++ /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/program/z.prog	(working copy)
@@ -276,12 +276,14 @@
 	fetch 1,mem_le_new_conninterval
 	sub pdata,LE_INTERVAL_15MS,null
 	nbranch z_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 z_mouse_le_lpm_mult_reinit,positive
 	fetch 1,mem_le_new_connslavelatency
-	store 1,mem_lpm_mult
+	store 1,mem_lpm_mult_init
 	branch z_mouse_le_conn_param_lpm_enable
 
 z_le_update_channel_map:
Index: sched/mouse.dat
===================================================================
--- /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/sched/mouse.dat	(revision 3869)
+++ /branch/mouse_project/LeXiang/1066_Project/PBSwitch_2.4G&BLE_3ch_G1050/sched/mouse.dat	(working copy)
@@ -113,8 +113,8 @@
 
 
 mem_le_interval_min:
-07 00 #min interval	if need 125hz,set 0x0006;else 115hz set 0x0007
-07 00 #max interval	if nedd 125hz,set 0x0006;else 115hz set 0x0007
+06 00 #min interval	if need 125hz,set 0x0006;else 115hz set 0x0007
+06 00 #max interval	if nedd 125hz,set 0x0006;else 115hz set 0x0007
 20 00 #latency
 2c 01 #timeout
 
@@ -302,7 +302,7 @@
 mem_24g_allpowerful_addr:0f 0f 0f 0f 0f 0f
 mem_24g_common_temp:00 00 00 00 00 00 00 00 00 00
 mem_24g_enter_hibernate:80 4f 12 	#  240ms  dpi  B4  B5 check easy
-mem_firmware_version:01 00
+mem_firmware_version:02 00
 
 mem_device_flag:01
 mem_device1_type:34
