if (sleep_mode) { uint8_t brightness = 10 + (sin(millis() / 1000.0) * 5); // soft pulse set_led_brightness(brightness); } }
// Pseudocode for Cube Baby firmware feature void feature_soft_sleep_animation() { static uint32_t last_motion_time = 0; static bool sleep_mode = false; if (motion_detected()) { last_motion_time = millis(); if (sleep_mode) { sleep_mode = false; set_led_brightness(255); // wake brightness } }
if (!sleep_mode && (millis() - last_motion_time > 300000)) { // 5 min sleep_mode = true; }