Skip to content

Conversation

@thomasabbott
Copy link

Radiolib no longer accepts TCXO voltage of 0.
Radio fails to start, silently.
Changed to 1.6 volts. Fixes #1109
Tested by @kszymkowiak

Radiolib no longer accepts TCXO voltage of 0.
Radio fails to start, silently.
Fixes meshcore-dev#1109 ; Tested by @kszymkowiak
@thomasabbott
Copy link
Author

Apologies I see you use 1.8 V everywhere else. 1.6 V seems to work but better to keep everything consistent..

@oltaco
Copy link
Contributor

oltaco commented Jan 21, 2026

Is it documented somewhere that RadioLib doesn't accept TCXO voltage of 0 any more? I looked at the changelog and the only thing I found referencing TCXO was this commit in 7.5.0, but I think that's adding a fallback to TCXO(0) for when the default begin method is called against chips which don't have TCXO.

The code seems to suggest that setting TCXO voltage to 0 is still the correct way to configure modules without TCXO?

@thomasabbott
Copy link
Author

Yes that's true, but as far as I can see both the all-in-one waveshare_rp2040_lora (circuit) and the rpi_picow (circuit) variants do use TCXOs.

I couldn't get the Pico+SX1262 working, eventually adding a ton of debug printing, and the radio init was failing, returning -707. Changing to 1.6 V allowed the radio to start. I think specifying an older version of radiolib also worked.

Since we're not saying SX126x::XTAL=TRUE, this is the only way we're telling radiolib to use the xtal. Radiolib is not just throwing an error as it would if you said 99 V, it's attempting to start the radio oscillator as a crystal and finding a hardware failure.

All of the other SX1262 boards do specify 1.8 V. So I think this comes down to the assumption about the osc on the board.

From SX1262.h:

  \param tcxoVoltage TCXO reference voltage to be set on DIO3. Defaults to 1.6 V.
 If you are seeing -706/-707 error codes, it likely means you are using non-0 value for module with XTAL.
 To use XTAL, either set this value to 0, or set SX126x::XTAL to true.

In SX126x_config.cpp it checks the TCXO voltage is in the allowed list.

If you go forward with this please change it to 1.8 V. A brief search shows no TCXOs specified for 1.6 V, though it may (and does) work there of course. Also please add the schematic link to the rpi_picow platformio.ini file for future reference.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Waveshare RP2040 Lora HF

2 participants