     // check for a transition
     if (g_transition_end)
     {
-        if (millis() >= g_target)
+        if (cmillis() >= g_target)
         {
             int32_t steps;
-            int32_t p = g_transition_steps - (g_transition_end - millis());
+            int32_t p = g_transition_steps - (g_transition_end - cmillis());
             
             g_target += g_delay;
             g_pixels.show();


void setup()
{ 
    g_pixels.begin();
    startup_animation();
    

        g_transition_steps = transition_steps;

        // start the transition and get last color
        evaluate(g_cur_pattern, cmillis() - g_pattern_start, &g_begin_color);

        // get the first color of the new pattern
        evaluate(g_next_pattern, 0, &g_end_color);

        g_transition_end = cmillis() + (uint32_t)transition_steps;
        return;
    }
    next_pattern();
