test_running = 0;
 }
 
+static pattern_t *number_pattern(unsigned char num)
+{
+       if (num >= 9)
+               num = 9;
+
+       return pattern_num + sizeof(pattern_num)/sizeof(pattern_t)
+               - 1 - 2*num;
+}
+
 static inline pattern_t *pattern_select(unsigned char n)
 {
        if (n < N_PWMLEDS && !pwmled_enabled(n))
                        return mode1_pattern;
                }
        }
-       return pattern_num + sizeof(pattern_num)/sizeof(pattern_t)
-               - 1 - 2*(1+ambient_zone);
+       return number_pattern(1+ambient_zone);
 }
 
 static void led_set_mode(unsigned char n, unsigned char mode)