I found the problem will be multiple definitions of scan channel list:
In nwk_global.h:
Channel mask
#define MAX_CHANNELS_868MHZ 0x00000001
#define MAX_CHANNELS_915MHZ 0x000007FE
#if !defined ( MAX_CHANNELS_24GHZ )
#define MAX_CHANNELS_24GHZ 0x07FFF800
#endif
In nwk.h
#define DEF_CHANNEL_SCAN_BITMAP MAX_CHANNELS_24GHZ
In f8wConfig.cfg
/* Default channel is Channel 11 - 0x0B */
// Channels are defined in the following:
// 0 : 868 MHz 0x00000001
// 1 - 10 : 915 MHz 0x000007FE
// 11 - 26 : 2.4 GHz 0x07FFF800
//
//-DMAX_CHANNELS_868MHZ 0x00000001
//-DMAX_CHANNELS_915MHZ 0x000007FE
//-DMAX_CHANNELS_24GHZ 0x07FFF800
//-DDEFAULT_CHANLIST=0x04000000 // 26 - 0x1A
//-DDEFAULT_CHANLIST=0x02000000 // 25 - 0x19
//-DDEFAULT_CHANLIST=0x01000000 // 24 - 0x18
//-DDEFAULT_CHANLIST=0x00800000 // 23 - 0x17
//-DDEFAULT_CHANLIST=0x00400000 // 22 - 0x16
//-DDEFAULT_CHANLIST=0x00200000 // 21 - 0x15
//-DDEFAULT_CHANLIST=0x00100000 // 20 - 0x14
//-DDEFAULT_CHANLIST=0x00080000 // 19 - 0x13
//-DDEFAULT_CHANLIST=0x00040000 // 18 - 0x12
//-DDEFAULT_CHANLIST=0x00020000 // 17 - 0x11
//-DDEFAULT_CHANLIST=0x00010000 // 16 - 0x10
//-DDEFAULT_CHANLIST=0x00008000 // 15 - 0x0F
//-DDEFAULT_CHANLIST=0x00004000 // 14 - 0x0E
//-DDEFAULT_CHANLIST=0x00002000 // 13 - 0x0D
//-DDEFAULT_CHANLIST=0x00001000 // 12 - 0x0C
//-DDEFAULT_CHANLIST=0x00000800 // 11 - 0x0B
-DDEFAULT_CHANLIST=MAX_CHANNELS_24GHZ
It seems I can only enable MAX_CHANNELS_24GHZ in nwk_global.h, otherwise it will have error(like I define it in f8wConfig), also if I don't want energy scan and want stick to one channel, I need to change both DEFAULT_CHANLIST in f8wConfig and DEF_CHANNEL_SCAN_BITMAP in nwk.h?
thanks
Rui