# Hardware (Ocelot Pro)

**Ocelot Pro is more than just a universal CAN gateway and interceptor — it’s a powerful development platform for building custom ECUs.** Designed as the successor to the original Ocelot, it retains full compatibility while adding significantly more capability and flexibility.

Like an Arduino built on top of Comma.ai’s Panda, Ocelot Pro offers developers access to CAN buses along with direct access to the STM32’s GPIO pins. This makes it easy to prototype and deploy custom hardware that integrates with openpilot or RetroPilot.

Ocelot Pro can be obtained from the [RetroPilot Shop](https://shop.retropilot.org/product/ocelot-pro/) or it can be built from the [board files and BOM.](https://github.com/RetroPilot/ocelot/tree/main/hardware)

Below is the front of the board. Here, the USB type C connector can be seen (used for data I/O and firmware flashing) as well as the two buttons for resetting and placing the board into DFU mode.&#x20;

<figure><img src="https://1912279400-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaBjjuoU2oGqbcSMM67Yn%2Fuploads%2FjyAo5xlBz33q6FwP5eab%2Funskewed_ocelot_pro.PNG?alt=media&#x26;token=082a903c-a565-44ee-bd26-8de15164f00e" alt=""><figcaption><p>Front of the Ocelot Pro</p></figcaption></figure>

The board is capable of being powered by a 12V supply using the 12V and GND pins on H3. The 5V and 3.3V pins provide access to the other power supply rails. A 12V out is available via IGN\_OUT, and is controlled programmatically via GPIO PA1.&#x20;

In addition to the 3 CAN busses, all unused GPIOs are accessible via H4 and H5. GPIOs can be controlled in [firmware](https://wiki.retropilot.org/index/hardware/ocelot/firmware). All pin headers have been placed in a 2.54mm pitch grid, so Ocelot Pro fits perfectly on veroboard when fitted with pin headers. This makes it easy to implement Ocelot Pro in rapid prototyping of bespoke ECUs.

Access to the 3 CAN busses is made possible via the CAN (H1) header, which exposes CANH and CANL for each bus. Busses 2 and 3 can be terminated by soldering the appropriate solder bridge jumper on the bottom of the PCB.&#x20;

<figure><img src="https://1912279400-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaBjjuoU2oGqbcSMM67Yn%2Fuploads%2FIl1pYYrfL6175aIOmuBC%2Focelot_pro_back.png?alt=media&#x26;token=d67e6d70-1bf5-458e-bd91-44f6e9c3840e" alt=""><figcaption><p>Back of Ocelot Pro</p></figcaption></figure>

#### DFU

To enter DFU - plug in the USB-C connector to a computer, hold down the BOOT (SW1) button, and while holding, tap the RESET (SW2) button. Once the board is recognized as "STM32 device," BOOT can be released.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.retropilot.org/index/hardware/ocelot/hardware-ocelot-pro.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
