Skip to content

Instantly share code, notes, and snippets.

@Fisch37
Fisch37 / anki-overdrive-hardware.md
Last active December 23, 2025 21:36
The Anki Overdrive Hardware

This Gist covers the make-up of the Anki Overdrive vehicle PCB to the extent of public knowledge as it is available to me.

The vehicles available to me all have HW5.4 rev4 boards, so if you don't have the same model, your specs may differ (though I doubt it, personally). Finally, all information here is provided on a best-effort basis. I make no claim to accuracy or completeness and I take no legal responsibility should use of this information result in damages to you or your property.

Integrated Circuits

The board features two IC chips:

  • The Nordic Semiconductor NRF 8001 (labelled NRF 8001 1636MY)

This gist covers the semantics of the SET_LIGHTS and SET_LIGHT_PATTERN packets specified in the communication protocol for Anki Overdrive vehicles. It is assumed that the reader already understands the basics of the protocol and can read C-style structs. Except when mentioned otherwise, only the payload is described. The packet header should be added as always.

SET_LIGHTS and SET_LIGHT_PATTERN fill the same nieche. In fact, SET_LIGHT_PATTERN can be used to achieve anything that SET_LIGHTS can and more. Imagine SET_LIGHTS as a selection of presets used in gameplay. We will go over SET_LIGHTS first as it is less complicated and was also the first packet I solved.

SET_LIGHTS

The SET_LIGHTS packet enables, disables or preserves the state of four different lighting presets. At its core, the payload struct looks like this:

struct set_lights_payload {
 uint8_t bitmask;