Boron charging light flashing very fast when asleep

My LTE boron flashes the orange charge light at maybe 4hz when it goes to sleep. I’m not using a battery, the power supply is capable of 1.5A. The light turns off when the boron wakes up. I used this code to put it to sleep:

SystemSleepConfiguration config;
    config.mode(SystemSleepMode::STOP)
      .gpio(D5, RISING)
      .duration(sleepDuration)
      .network(NETWORK_INTERFACE_CELLULAR);
    SystemSleepResult sleepResult = System.sleep(config);
    
    //if the app wakes electron up, stay awake for 30s to communicate
    if (sleepResult.wakeupReason() == SystemSleepWakeupReason::BY_NETWORK) {
    // Waken by network activity 
      awakeDuration = 30000;
    }
    else
    {
      awakeDuration = 10000;
      sleepDuration = 60;
    }

and this code to disable charging, as found in another post:

void setCharging(bool enable) {

	PMIC pmic;

	// DisableCharging turns of charging. DisableBATFET completely disconnects the battery.
	if (enable) {
		pmic.enableCharging();
		pmic.enableBATFET();
	}
	else {
		pmic.disableCharging();
		pmic.disableBATFET();
	}

	// Disabling the watchdog is necessary, otherwise it will kick in and turn
	// charing at random times, even when sleeping.

	// This disables both the watchdog and the charge safety timer in
	// Charge Termination/Timer Control Register REG05
	// pmic.disableWatchdog() disables the watchdog, but doesn't disable the
	// charge safety timer, so the red LED will start blinking slowly after
	// 1 hour if you don't do both.
	byte DATA = pmic.readChargeTermRegister();

	if (enable) {
		DATA |= 0b00111000;
	}
	else {
		// 0b11001110 = disable watchdog
		// 0b11000110 = disable watchdog and charge safety timer
		DATA &= 0b11000110;
	}

	// This would be easier if pmic.writeRegister wasn't private (or disable
	// charge safety timer had an exposed method
	Wire1.beginTransmission(PMIC_ADDRESS);
	Wire1.write(CHARGE_TIMER_CONTROL_REGISTER);
	Wire1.write(DATA);
	Wire1.endTransmission(true);
}

Is there something else I need to do as well to keep the light off?

Another question related to sleep, the console can’t fetch variables when it is woken up. If I don’t put the boron to sleep the console retrieves them very quickly and reliably. However, I would like the boron to wake up from the request for a variable. System_Thread is enabled and I left it on the default automatic mode. Should there be a pause somehow after it wakes up for reconnection? I thought that since I’m not turning the modem off, it should be able to send the values back almost immediately.

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.