UGH....one of those moments. My newbiness couldn't overcome currentMillis = 999 and previousMillis = 0xFFFFFFFF. But I see it now. My apologies. Thank you for the patience.

Yes, the bits. Takes time to learn but well worth it.

HEX is base 16. 1 hex digit can be decimal 0 to 15 as hex 0 to 9 or A to F where A=10, F=15.

But the bits, there are 4 and with practice it's easier to read hex than binary.

bits high to low = 8 4 2 1 so binary 1111 = 1x8 + 1x4 + 1x2 + 1x1, binary 0011 = 1x2 + 1x1.

0 0000 0 --- 0x0 is no bits set

1 0001 1

2 0010 2

3 0011 3

4 0100 4

5 0101 5

6 0110 6

7 0111 7

8 1000 8

9 1001 9

A 1010 10

B 1011 11

C 1100 12

D 1101 13

E 1110 14

F 1111 15 --- 0xF is all bits set

If you run Windows, open the calculator and under View change it to Scientific.

You now can switch between HEX, DEC, OCT and BIN. In HEX the A to F keys are active.

Every text character is 8-bit ASCII, even the unprintable ones. They all take 2 hex digits.

Once you know bits you can start to get into bit shifting and bit logic and do bit masking. With those you can change or read the pins on a PORT all at the same time in less than 1 millionth of a second. To get closer to the metal you need solder.

Just take care when shifting bits right (high to low). If the high bit (bit 7 of a byte or short, bit 15 of an unsigned int or int) is 1 then as the bits shift right, the new high bit will be 1. That 'fill' doesn't happen with left-shift, just right-shift.