Hi everyone,
I am currently trying to implement a VESC Maxim 150 into a light Electric Vehicle. It uses a 32s Battery Setup and has an 18kW Peak Motor, so the Maxim 150 is the perfect choice to replace the original Inverter.
Right now I am in the testing Phase, the wheels are Spinning but the Vesc is only controlled via the app, or with my PC and VESC Tool.
My Plan is to use the existing CANbus of the Vehicle (125kBit - DBC is known), and program a LispBM script that receives CAN Messages and controls the Vesc via current Signals.
However, I cannot get the vesc to keep 125kbit.
In my understanding (correct me if I´m wrong) the Maxim uses 2 internal CPUs. The ESP32 is used to connect via USB and is basically the co-Processor, and the STM32 is the main processor that controls the Inverter part, right?
When I use the Setting that can be found in "VESC Dev Tools -->CAN Tools-->Update CAN Baudrate-->Start update" It should update the Baudrate on all connected devices. This indeed works, and with my Peak-CANUsb, I can see CAN Frames with 125kBit. But after a Restart, I only see can Messages when I look for 500kBit Signals. In Addition to that, Vesc tool can only find the ESP but not the STM. I Think that the ESP keeps its 125kbit, and the STM switches back to 500, thats why the Tool only shows the ESP, not the STM.
The same Thing happens when I try to Change the Baudrate via "App Settings-->General-->CAN Baudrate" for the STM, and Via Vesc Express for the ESP. After a Restart, It sends at 500 again.
When I change the ESP back to 500, it recognizes the STM.
Is there anything I am missing? Do I need to implement some Kind of script, that changes the can Baudrate on every start?
Thank you for your help!

That sounds strange. Usually it should stay at the correct Baud rate, like you did correctly in VESC Dev Tools. Are you on Firmware 7.00? Go to Firmware -> Download latest -> Update firmware on the connected VESC (arrow down button). Do that for both Express and STM. Try again to change the baud rate.
Link to forum post: VESC help offered for private persons and companies
Website: www.electricfox.de
I tried that, the Vesc express was still running on FW6.06.
But after updating it to 7.0 (And reflashing the STM to 7.0 just to be sure), I still have the same behavior.
I documented this behavior in this small 3min Video: https://youtu.be/2m9Eaw0ULTg
I found a (really dirty) workaround... When I set the Baudrate to 125k via LispBM, then the STM is found after a reboot. The only problem: During the baudrate-Change, it "shoots down" the entire CAN of the vehicle.
If I cannot find a better solution, I will need to implement some kind of relay, that connects the VESC to can, only when it is fully booted, and the baudrate change is complete. But I think that´s a really bad solution for this problem.
Did anybody else experience similar issues?