Radio Head Library__LoRa_RF96_Changing Bandwidth_20.8KHz

Hello everyone,
this is to every who has used radio head library with LoRa shield using Hope RF 96.
So i was for a long time using two LoRa/GPS shield with Arduino UNO as client and LoRa GPS hat with raspberry as Server. Both arduino and raspberry pi were using the Radio head library.
Because of project requirements i need it to operate at 20.8 KHz bandwidth at 869.8 MHz. The code below made it function accordingly.

const RH_RF95::ModemConfig myProfile = {
** RH_RF95_BW_20_8KHZ | RH_RF95_CODING_RATE_4_5,**
** RH_RF95_SPREADING_FACTOR_256CPS};**
rf95.setModemRegisters(&myProfile);

However last week, i burned one of my LoRa/GPS shield as i was experimenting with different wiring and did not ground(Does not get any stupider, i know) and consequently, i ordered a LoRa shield as a replacement (and not the LoRa/GPS shield using the same RF96 chip.)
Strangely, the client with the LoRa shield is receiving packets with similar settings(20.8 KHz BW) from Server,but when the client is sending packets, The server(Raspberry pi) is not recieving any packets.
BUT......when i change the BW to 31.25 KHZ, they seem to working fine. Which really puzzles me, any idea or inference to what might be wrong???

const RH_RF95::ModemConfig myProfile = {
** RH_RF95_BW_31_25KHZ | RH_RF95_CODING_RATE_4_5,**
** RH_RF95_SPREADING_FACTOR_256CPS};**
rf95.setModemRegisters(&myProfile); Working fine

P.S If i insert the LoRa GPS shield back instead of LoRa shield, everything runs smoothly