When attempting to enable the external crystal within the smartBASIC code using BleConfigHfClock(1), why does it not change to high speed when calling SYSINFO(2082)?

It is important to note there are two clock sources, a High Frequency (HF) Clock source, which is used for clocking the system, and a Low Frequency (LF) Clock which is primarily used for Sleep Mode. Each of these have options of using an internal oscillator on the chip, or the specified crystal.

The external 32 MHz crystal for the HF Clock is included on the module, while the external 32 KHz crystal is an optional LF Clock source which is NOT included on the module. The optional crystal for the LF Clock source provides improved protocol timing and helps with radio power consumption when the radio is in standby doze/deep sleep, by reducing the time that the Rx window needs to be open.

The BleConfigHfClock() function within the smartBASIC application is used to select the High Frequency Clock, which is the system clock.  This is the 32MHz crystal, and it can be selected using this BleConfigHfClock() function. 

This is different than the optional external 32kHz Crystal, which is used as the Low Frequency Clock source. This crystal is typically used for sleep modes. This can only be selected using the AT+CFG 210 and cannot be configured within the smartBASIC application. SysInfo 2082 is used to return the Low Frequency Clock configuration, therefore, it is not affiliated with the High Frequency Clock setting.