Edit: My problem seemed to be that the Local/Global Bit is honored on this platform. Good on them.
I am trying to print out a mac address as a six character ascii string, rather than 6 hexidecimal values. I set the MAC address to an ascii char array successfully.
That's rather dangerous, since the low two bits of the first byte have special meanings! (the low bit indicates whether the address is unicast or multicast.)
(why "the low bit"? Because it's transmitted first.)
It certainly is, but Apple and other manufacturers no longer honor it. Random MACs from iphones will have this bit set randomly. Good to see this one doesn't do that.
The 2nd lowest bit means "locally administered." It's set by protocols (eg DECNet) that want their MAC address and protocol address to be intimately related (not required for IP!)
(this means you WANT to set it, if you're picking the rest of the bytes "randomly.")
The subset of ascii that ends in 0b10 is "&*.26:>BFJNRVZ^bfjnrvz~
">BillW" sounds like a fine MAC address!
It appears that the only bit that causes a problem is the low order (unicast/multicast)bit. In fact now we are able to use the 7bits + 5bytes of MAC for payload. These devices are communicating using a very minimal ESPNow so the MAC address doesn't really matter for routing etc.