6 years, 7 months ago.

sx1276 tcxo

Does anyone have experience with the sx1276 using a tcxo? we are trying to use it for a high sensitivity application and cannot get the tcxo to allow for low sensitivity usage for instance:

sf12 with bw 10khz

the lowest bandwidth acessable with sf12 is bw 125khz

Any input is appreciated as to how this is acomplished setting REGTCXO to 0x19 has not seemed to have any effect.

Question relating to:

Please add some more Tags, e.g. LoRa, Murata CMWX1ZZABZ, TCXO, DISCO-L072CZ-LRWAN1

posted by Helmut Tschemernjak 17 Aug 2017

1 Answer

6 years, 7 months ago.

The Murata TXCO properly enabled in my SX1276Generic lib, see https://developer.mbed.org/users/Helmut64/code/SX1276GenericLib/

For lower bandwidth further investigation needs to be done.

As per the datasheet, to use a tcxo regtcxo needs to have bit 4 set to 1 during the sleep mode. I cannot find in your library anywhere this is done. The library only enables pa12 which would power the tcxo if pa12 was connected to pin tcxo_vdd. But maybe changes have been made recently I will review the library again and see if I can determine where this happens, or maybe I missed it in my analysis and it is done. However I have read the state of the register during operation and the register 0x4b (regtcxo) is 0x09 which is the default value instead of 0x19 which is the tcxo enable value.

posted by Roland von Kurnatowski 17 Aug 2017

Recently I added a new function to my SX1276GenericLib project. GetFrequencyError() When you call this e.g. with SF7 after you received a packet the frequency difference between the sender and your receiver is returned and you can print this. Using the Murata TCXO it is usually between 40-200 Hz.

Using the RFM95 without the TCXO is is between 2500 and 120000 Hz.

For the bits in the sx1276 chip you may need to read the data sheet and experiment a little bit. Patches for my library are welcome.

posted by Helmut Tschemernjak 18 Aug 2017