Skip to main content

Adafruit Feather M4 CAN Express Installation Guide

Complete installation guide for the Adafruit Feather M4 CAN Express (ATSAME51) on Tesla vehicles with HW3.

Overview

The Feather M4 CAN Express uses the ATSAME51's built-in CAN (MCAN) controller with an onboard TJA1051T/3 transceiver. It does not use the MCP2515 SPI library — it requires the Adafruit CAN library (CANSAME5x).

Parts List

PartApprox. CostLink
Adafruit Feather M4 CAN Express (ATSAME51)~20 EURantratek.nl
Enhance Auto Tesla Gen 2 Cable~30 EURenhauto.com
12V/24V to 5V USB-C DC/DC Converter~5 EURaliexpress.com
Enhance Auto Cable

The Enhance Auto Gen 2 Cable connects to the same port as their S3XY Commander, providing both CAN bus data and 12V power through a single connector.

Step 1: Flash the Firmware

  1. Install the Arduino IDE.

  2. Add the Adafruit board package URL in File → Preferences → Additional Board Manager URLs:

    https://adafruit.github.io/arduino-board-index/package_adafruit_index.json
  3. Install Adafruit SAMD Boards via Tools → Board → Boards Manager.

  4. Install the Adafruit CAN library via Sketch → Include Library → Manage Libraries.

  5. Open RP2040CAN/RP2040CAN.ino in Arduino IDE.

  6. In the sketch_config.h tab, set your board and vehicle:

    // #define DRIVER_MCP2515
    #define DRIVER_SAME51
    // #define DRIVER_TWAI

    // #define LEGACY
    #define HW3
    // #define HW4
  7. Select Adafruit Feather M4 CAN (SAME51) as the board under Tools → Board.

  8. Connect the Feather via USB, select the correct port, and click Upload.

  9. Open the Serial Monitor at 115200 baud — you should see SAME51 CAN ready @ 500k.

Step 2: Identify the Enhance Auto Connector Pinout

The Enhance Auto Gen 2 Cable has a connector on the end that normally plugs into a S3XY Commander. We'll use this connector to tap into the vehicle's CAN bus and 12V power.

WireSignalConnect to
Red12V+DC/DC converter IN+
BlackGNDDC/DC converter IN-
Black with stripeCAN-H (Body Bus)Feather CAN-H screw terminal
Black solidCAN-L (Body Bus)Feather CAN-L screw terminal
Remaining black pairOther BusNot used — leave disconnected

Step 3: Wire the Board

Connect the Enhance Auto cable's CAN-H (black with stripe) and CAN-L (black solid) wires to the Feather's CAN screw terminal. Wire the 12V+ (red) and GND (black) to the DC/DC converter's input. The converter outputs 5V via USB-C, which plugs directly into the Feather to power it.

Step 4: Connect to the Vehicle

The Enhance Auto Gen 2 Cable plugs into the X179 connector, located behind the driver's side trunk panel. Remove the panel trim to access the connector cluster.

Plug in the Enhance Auto cable — it provides both CAN bus data and 12V power through a single connection. No jumper wires needed.

Installation Video

For a detailed video guide on how to access the X179 connector and plug in the cable, see this installation video by Enhance Auto.

Step 5: Verify Installation

  1. Disconnect the DC/DC converter from the Feather's USB-C port and connect your laptop instead.

  2. Open the Serial Monitor at 115200 baud — you should see handler output like:

    HW3Handler: FSD: 1, Profile: 2, Offset: 0
  3. Enable "Traffic Light and Stop Sign Control" in Autopilot settings if not already enabled.

  4. Change the follow-distance setting on the stalk and verify the Profile value changes.

  5. Once everything is working, disconnect your laptop and plug the DC/DC converter back in — you're done!

Tested Configuration

ComponentSpecification
Vehicle2023 Tesla Model 3
Hardware VersionHW3
BoardAdafruit Feather M4 CAN Express (ATSAME51)
ConnectionEnhance Auto Tesla Gen 2 Cable → X179 connector
Power12V/24V to 5V USB-C DC/DC converter
Status✅ Working
Next Steps

After successful installation, see the Features section to configure and enable specific features like FSD Activation, Nag Suppression, Speed Profiles, etc.