Answer: Binary Secret #348

The secret message is:

Cool robot

The decoded message: Cool robot
Every row decoded.

Row by row

RowBulbsAdd the ‘on’ numbersCharacter
10100001164 + 2 + 1 = 67C
20110111164 + 32 + 8 + 4 + 2 + 1 = 111o
30110111164 + 32 + 8 + 4 + 2 + 1 = 111o
40110110064 + 32 + 8 + 4 = 108l
50010000032 = 32a space
60111001064 + 32 + 16 + 2 = 114r
70110111164 + 32 + 8 + 4 + 2 + 1 = 111o
80110001064 + 32 + 2 = 98b
90110111164 + 32 + 8 + 4 + 2 + 1 = 111o
100111010064 + 32 + 16 + 4 = 116t

Crack it with Python

Python can do the adding for you. int(code, 2) reads a string of 1s and 0s as a binary number. Then chr() turns the number into its character.

secret = [
    "01000011",
    "01101111",
    "01101111",
    "01101100",
    "00100000",
    "01110010",
    "01101111",
    "01100010",
    "01101111",
    "01110100",
]
message = ""
for code in secret:
    number = int(code, 2)
    message = message + chr(number)
print(message)

When you run it, it prints:

Cool robot

<strong>Beep says:</strong> Want to write your own secret message? Turn it around: ord() turns a character into its number, and format(number, “08b”) writes the number as 8 binary digits. Beep boop!