1. A playback device comprising: one or more processors; and tangible, non-transitory computer-readable memory having instructions stored thereon, wherein the instructions, when executed by the one or more processors, causes the playback device to perform a method comprising: receiving a first code from a first remote control via a first interface; sending a first message via a second interface to a cloud-based code database, wherein the first message comprises an indication of the first code; receiving a response message from the cloud-based code database via the second interface, the response message indicating that the cloud-based code database does not have a command set for the first remote control that sent the first code; in response to receiving the response message from the cloud-based code database, prompting a user to enter a first set of one or more commands via the first remote control; receiving a first set of one or more codes from the first remote control via the first interface, the first set of one or more codes corresponding to the first set of one or more commands; storing the first set of one or more codes corresponding to the first set of one or more commands in the tangible, non-transitory computer-readable memory of the playback device; and sending a second message to the cloud-based code database via the second interface, the second message comprising the first set of one or more codes and corresponding first set of one or more commands.