Skip to main content

Changelog

All notable changes to Tesla Open CAN Mod are documented here.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.


[Unreleased]

[1.0.0] - 2026-04-05

Added

  • FSD activation bypass for HW3 and HW4 vehicles
  • BYPASS_TLSSC_REQUIREMENT build flag to bypass Tesla Live Service SC requirement for regions without traffic light toggle
  • Autosteer nag suppression via CAN frame interception
  • Autosteer Nag Killer hardware mode: echoes CAN frame 0x370 with counter+1 to suppress nag at hardware level (X179 connector, CAN bus 4)
  • ISA speed chime suppression for HW3 and HW4
  • Emergency vehicle detection and response
  • Speed profiles support (distance control stalk mapped)
  • Smart Summon support (EU region restriction removed)
  • ESP32 web dashboard for live CAN status and runtime settings
  • OTA firmware updates via web interface for ESP32 boards
  • Hardware support: Adafruit Feather RP2040 CAN
  • Hardware support: Adafruit Feather M4 CAN Express (tested)
  • Hardware support: ESP32 with TWAI driver
  • Hardware support: Adafruit Feather ESP32 V2 with MCP2515 CAN Featherwing
  • Hardware support: M5Stack Atomic CAN Base
  • Hardware support: LILYGO T-CAN485
  • CAN driver abstraction layer (MCP2515, SAME51, TWAI)
  • TWAI driver: non-blocking TX, bus-off cooldown and recovery, driver-fail guard
  • TWAI driver: DLC clamped to 8 bytes on read and send
  • DLC validation guards on all CAN frame handlers
  • Bounds check in setBit() to prevent buffer overrun
  • STL case model for Feather RP2040 CAN
  • FSD subscription guide for unsupported regions (Canadian account method)
  • Wiring guide for Tesla Model 3/Y including legacy connector pinouts
  • Comprehensive NagHandler unit test suite

Fixed

  • Nag handler torque value: output is now fixed at safe 1.80 Nm (0x08B6) instead of copying torque from the original frame
  • FSDEnabled variable shadowing bug in HW3 and HW4 handlers
  • TWAI TX timeout changed from 0 ms to 2 ms to avoid bus starvation

Changed

  • Build flag renamed from FORCE_FSD / FORCE_FSC to BYPASS_TLSSC_REQUIREMENT for clarity
  • Arduino sketch renamed from canFeather.ino to RP2040CAN.ino for multi-board support
  • Firmware configuration consolidated: all user-selectable options moved to sketch_config.h