Skip to content

Troubleshooting and Recovery

Robert McKenzie edited this page Mar 17, 2026 · 1 revision

Troubleshooting and Recovery

This page covers the most likely setup and field issues based on the source behavior.

Problem: The package does not start on the device

Likely causes

  • the hardware is not VESC Express
  • firmware is older than 6.05

What to do

  1. Confirm the target is hw-express class hardware.
  2. Update firmware to at least 6.05.
  3. Reinstall or reopen the package.

Problem: A slave is not doing anything

Likely causes

  • Master CAN-ID is wrong
  • the slave does not see the master on CAN
  • strip targets are assigned to the wrong CAN node
  • the node is still waiting for forwarded Refloat state

What to do

  1. Open the slave UI.
  2. Confirm it says the node is configured as a slave.
  3. Verify the displayed Master CAN-ID.
  4. From the master, verify the strip target CAN IDs.
  5. Re-save config from the master.

Problem: The master is editing config, but a remote strip still stays dark

Likely causes

  • the strip is targeted to SELF (-1) but physically wired to a slave
  • the strip is targeted to the wrong peer CAN-ID
  • pin number is wrong
  • pixel type is wrong
  • LED count is wrong

What to do

  1. Check the strip's Target CAN-ID.
  2. Confirm which node physically owns that strip.
  3. Verify data pin and highbeam pin values.
  4. Verify LED count.
  5. Verify pixel order such as GRB vs RGB.
  6. Toggle Reversed only if direction is wrong, not if the strip is completely dead.

Problem: Animations move the wrong direction

What to do

Enable the appropriate Reversed option for the affected strip:

  • Status Reversed
  • Front Reversed
  • Rear Reversed

Problem: The strip behaves strangely on pin 0

The source contains a guard that disables active LED strip use on pin 0 in several cases.

What to do

Move the strip to another valid GPIO and update the config.

Problem: Brake light never triggers or triggers too often

What to do

Tune Brake Light Min Amps.

Remember the source default is negative current, because braking/regeneration is expected to appear as negative total current.

  • More negative value = harder braking required
  • Less negative value = easier triggering

Problem: The node looks corrupted after an update

The package includes CRC checks and also migrates or clears some older config fields.

Recovery steps

  1. Open ⋮
  2. Press Restore Default Config
  3. Re-enter the correct role and strip mapping
  4. Save the config again

Problem: I accidentally configured the wrong node as a slave

What to do

On the slave page:

  1. Press Become Master if this should be the controlling node

Or, if you simply want to wipe it:

  1. Press Restore Settings
  2. Reconfigure from scratch

Problem: LEDs turn off after sitting still

That is often normal behavior.

The source distinguishes between:

  • Idle Timeout
  • Idle Timeout Shutoff

What to do

  • Increase Idle Timeout if you want the ride mode to persist longer before switching to idle behavior.
  • Increase Idle Timeout Shutoff if you do not want the LEDs to clear so quickly after extended inactivity.

Problem: Brightness feels capped

That is also often intentional.

The package has a global LED Max Brightness limiter. Runtime sliders are capped by that value.

What to do

  1. Check LED Max Brightness in config.
  2. Then recheck the runtime brightness sliders.
  3. Increase cautiously and verify temperature, power budget, and visual comfort.

Problem: Highbeam works, but the main strip looks washed out or too bright

What to do

Adjust both:

  • Highbeam Brightness
  • Dim RGB on Highbeam

This lets you balance the dedicated highbeam channel against the main RGB lighting.

Safe recovery workflow

When in doubt, this is the cleanest recovery path:

  1. Read current config
  2. Document CAN IDs
  3. Restore defaults
  4. Set role
  5. Set Master CAN-ID on slaves
  6. Rebuild strip config from top to bottom
  7. Save config on the master
  8. Test one strip at a time