How to troubleshoot nosedives / crashes

WTF just happened?

You got your VESC built and your board dumped you seemingly out of nowhere - what now?
I’m going to outline a few steps you want to take to troubleshoot what caused your nosedive.

First things first

Try to remember what happened. Was it a Hard cutout or a slightly slower nosedive? Did the board reboot? If you check your stats and they’re back to zero it means the board rebooted. All these are important details to get help from experienced VESCers…

#1: Logs

Especially in the beginning it’s always a good idea to enable logs (search CSV here on pev.dev for how to do it). FloatControl always logs as long as you name your board. The VESC App requires you to remember logging every time you start the app / or connect to your board.

It’s usually a good idea to restart logging after the crash so you know the crash will be easy to find at the end of the potentially long log file.

Having video in addition to the logs can further help in figuring out what happened

#2: Check your settings

Ideally this is something you’d do before going on any serious rides, but better late than never…

Compare XML files

My favorite way of troubleshooting a misbehaving board is to compare its XML files against a known reference. There’s several tools that let you visually compare two text files side by side, such as Meld on Linux or WinDiff on windows - plenty of options there if you just google it

FloatControl sanity check

Float control will alert you about many common issues new and experienced users run into with a new VESC board.

#3: Check for hardware errors

After a hard cutoff you should check your VESC for reported motor faults. Spintend VESCs show the status LED on the on/off button, if it blinks you will see the error code number indicated by the number of red LED flashes in a row. If you connect via VESC App / VESC Tool you can type “fault” at the terminal to get a fault reason.

#4: How to ask for help

Provide all the details about your nosedive - every little detail matters!

  • terrain
  • speed
  • accelerating or braking?
  • did you go uphill/downhill?
  • your weight
  • battery voltage / battery type

It also helps to know whether this happened after miles of riding or right away
You can never provide too many details!

Also, screenshots can be helpful - but please spare us screenshots just to tell us one number, we believe you if you write it out :wink:

Screen recording of AppUI and video of the crash of course help as well.

#5: Common Causes of Problems

Here’s some of the more popular causes of cutouts and nosedives

  • Poor wiring - these are the worst kinds of issues: poorly soldered/connected phase wires can causes nasty crashes at any speed; bad hall sensor wires can cause issues too but usually only at lower speed (below 5mph if you configured the board following our instructions)

  • Loose welds - Built on DIY battery pack but don’t have perfect welds? Instant nosedive if a weld comes loose

  • Voltage cutoff configs - wizard defaults are almost guaranteed to make you nosedive at 20-30% battery, especially when suddenly accelerating or going up a hill

  • Max current configs - max currents must be at least 100A for normal adults or else you get soft cutouts, aka you hit the low current limit and the board just can’t produce the needed amps to get the board back to level

  • Abs max current - also a popular cause for a hard cutout - this must be set to about 50% of the max current - so 150A if your max current is 100A

  • Foot sensors - depending on how you built your foot sensor, you should check whether the cutoff values are reasonable. Monitor live data to get a good understanding of your sensors resting values and its values when you stand on them

  • BMS - a bms wired for charge and discharge can dump you without notice. If that happens it would cause a reboot of the VESC. Also CAN enabled smart BMS can cause cutoffs if improperly configured

  • Flywheel - this mode must be exited properly before it’s safe to configure your board again. If you hit “Write Config” while in Flywheel mode your board complete Package settings will be borked and you have to basically start the package config from scratch!!!

3 Likes

This post is great, two things I want to check about.

Any new ways in later firmware/refloat pkg to diagnose odd behavior that are not listed here?
Screen recording AppUI along with another phone video of what the board is doing that is weird with the timestamp identified on each video is a nice tip I think, unless you did not mention it for a reason.

Also there is the remote support service built into VESC tool that allows shops like @atlowshop to offer remote tuning (likely for only their builds but hands off support is nice on the customer end)

Screenrecording only helps if it’s a reproducable problem. I was mainly focused on after-the-fact troubleshooting. If you can repeat it or anticipated it then it’s much easier of course.

Go and describe the remote troubleshooting. I know nothing about it.

1 Like