Skip to content

Conversation

@bjackson312006
Copy link

@bjackson312006 bjackson312006 commented Dec 14, 2025

Added a new vcu.json file to the repo. It reflects all Cerberus-2.0 CAN messages as they are currently formatted.

Notes:

  • I used this to create it
  • I had to delete vcu.json due to conflicting message definitions that were preventing Calypso from building. I guess either we keep this branch running until we don't need mpu.json anymore, or we just make separate CAN IDs for some of the VCU messages?

@bjackson312006 bjackson312006 self-assigned this Dec 14, 2025
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request replaces the MPU (Motor Processing Unit) CAN message definitions with VCU (Vehicle Control Unit) definitions, representing a renaming/restructuring of the vehicle's control system communication protocol. The change removes 1413 lines from mpu.json and adds 2534 lines to vcu.json, indicating an expansion of the message definitions.

Key changes:

  • Replaces MPU.json with VCU.json, reflecting a transition from MPU to VCU naming convention
  • Expands message definitions to include more detailed eFuse monitoring (9 different eFuse circuits: Dashboard, Brake, Shutdown, LV, Radfan, Fanbatt, PumpOne, PumpTwo, Battbox, and MC)
  • Maintains similar core functionality messages (car state, pedals, faults, shutdown pins) but with updated field names and structure

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 8 comments.

File Description
can-messages/vcu.json New file containing comprehensive VCU CAN message definitions including eFuse monitoring, shutdown pins, faults, car state, pedal sensors, and lightning board status
can-messages/mpu.json Deleted file - previous MPU CAN message definitions removed as part of the MPU to VCU transition

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@bjackson312006 bjackson312006 marked this pull request as ready for review December 15, 2025 00:12
jr1221
jr1221 previously approved these changes Dec 22, 2025
Copy link
Contributor

@jr1221 jr1221 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you will have to add at least doc and c_type to every CAN field if you decide to use c_gen

"desc": "Ranges from 0 to 4095."
},
{
"name": "VCU/eFuses/Dashboard/Voltage",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

voltage doesnt change between every efuse they are all fed by the LV battery.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh wait if you mean voltage of current pin, imo we only need raw counts OR voltage both seems overkill.

"desc": ""
},
{
"name": "VCU/eFuses/Dashboard/Enabled?",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i think ? will work we shall see lol

"values": [
8
],
"doc": "Whether or not launch control is enabled.",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is a busy message. if you want to split it up this year that is totally OK up to you.

"sim_freq": 250
},
{
"id": "0x004",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this should be much higher as it is a lower priority message (>0x550)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants