out of 15 boards, five were not starting up.
After some investigation it showed LSE did not get ready. When switching to LSI, all was working again, but timing is so inaccurate on some that I cannot get an OTAA join.
Already had this problem in a prototype in Feb '24.
All board have been produced at JLCPCB.
I am using a custom firmware based on the LoRaMac-Node-based CubeMX implementation.
Has anybody else encountered this? Is this an PCB production issue like too high temp at reflow soldering? Or were those RAK modules damaged in the first placd? Or is there a software setting that need to be used in order to get it working more reliably?
It should work ok based on the default clock setting of the STM32WL Cube SDK example.
For sanity check, (if possible) you can try to test it with RAK default FW then send AT commands to the module or if not possible, upload the LoRaWAN OTAA example.
As for the guide on running the OTAA Example using Arduino IDE, you can refer on the quick start guide. Just select the RAK3172LP-SiP instead of RAK3172-SiP.
It’s likely a hardware issue possibly bad soldering or damaged crystals during reflow at JLCPCB. LSE failures are common with poor oscillator soldering. Try checking oscillator caps and reflow profile. Not likely a software issue if LSI works.