Reloj binario con adafruit_neopixel

Buenas de nuevo surbyte, se que no ha pasado suficiente tiempo como para decir que me haya dado tiempo a estudiar a fondo el código pero lo cierto es que la mayoría es como si leyese chino y me gustaría saber si seria posible que incluyeses una linea de texto explicando mas o menos las diferentes partes del programa ya que aunque tu explicacion la entendi en tus comentarios anteriores no se que es UL o tmp, asi como la forma en la que has conseguido llegar de decimal al binario;
tambien decir que ayer descompuse los leds y solde como en la siguiente foto pero teniendo en cuenta que ahora uso solo 20 leds a diferencia de los 24 anteriores ya que ahora ya no preciso del led para separar cada agrupación.

No se como aplicarle la etiqueta a la imagen para que se vea directamente en el post, es otra cosa que debo aprender jaja.
posicionleds.png

PD: tu progama funciona de perlas aunque me cuesta interpretarlo en la tira de led por lo que te acabo de comentar de la posicion; tambien me gustaria saber como hacer que los colores entre horas minutos y segundos sean diferentes; pero esto es algo que una vez haya entendido tu programa creo que podre hacer yo.

posicionleds.png