fix the modhex printout

when serial is an uneven number of hex characters
also print out hex with leading 0 in that case
skip the -Woverlength-strings warning
drop unused variable