Troubleshooting

Find your symptom, work down the list. Most problems on this page resolve without tools — and nothing here requires reinstalling firmware unless explicitly stated.

FW 0.2.0 · build 5

Start here

Two things tell you most of what's going on before you touch anything:

  • The status LED. Off means no power, solid on means running with nobody connected, slow blink means running with the web UI open, fast blink means a fault is active. The full table is in the fault & LED reference.
  • The dashboard health panel. If you can reach the web UI at all, the health panel names the exact protection that tripped — start there rather than guessing.

If you haven't set the controller up yet, follow the quickstart first — several "problems" are just steps that haven't happened yet.

#The PW-AP-1 network doesn't appear

  • Give it ten seconds after power-on — the access point comes up a few seconds into boot.
  • Check the status LED. If it's off, the board has no power: check supply wiring and the fuse before anything else.
  • The radio is 2.4 GHz only. Any phone or laptop can see 2.4 GHz networks, but if you're using a device with Wi-Fi scanning filters or a USB adapter, confirm it scans the 2.4 GHz band.
  • Move closer. The on-board antenna is modest, and metal enclosures attenuate it heavily.
  • Power-cycle the controller and watch for the network to reappear.

If the LED is solid on but PW-AP-1 never shows up after a power cycle, reflash the firmware over USB with the web flasher — and if that doesn't restore it, contact support.

#The setup page won't load

  • Use the IP address directly: http://192.168.50.1. The http://pw.setup shortcut relies on the controller answering your device's DNS lookups — a VPN, private DNS, or "secure DNS" setting on your phone bypasses that. The IP always works.
  • Confirm you're still on PW-AP-1. Phones silently fall back to mobile data or another Wi-Fi network when a network has no internet — turn mobile data off for a moment, or tell the phone to stay connected.
  • Make sure the address is http://, not https:// — some browsers force-upgrade the scheme, and the controller serves plain HTTP on its local network.
  • If the page loads but looks broken (especially right after a firmware update), force-refresh (Ctrl/Cmd+Shift+R) or try a private-browsing window to bypass cached assets.

#It won't join my home Wi-Fi

  • 2.4 GHz only. If your network name only broadcasts on 5 GHz (or 6 GHz), the controller can't see it. Most routers let you enable a 2.4 GHz band on the same name or create a separate 2.4 GHz network.
  • Re-enter the password carefully — it's the most common cause. Avoid leading/trailing spaces from copy-paste.
  • Move the controller closer to the router for the first join, then relocate once you know the credentials work.
  • Hidden networks and captive-portal networks (hotel-style login pages) are not reliable targets — use a normal WPA2 network.

Whatever happens with the home network, the controller's own access point stays up — you never lose access to the dashboard at http://192.168.50.1 via PW-AP-1.

#Can't find the dashboard on my home network

The controller doesn't advertise a .local hostname on your LAN, so you won't find it by name — you need its IP address:

  • Open your router's admin page and look at the connected-devices / DHCP-clients list for a new entry. Bookmark that address.
  • Give the controller a DHCP reservation in the router so the address never changes.
  • If you can't identify it, join PW-AP-1 and check the network section of the dashboard at http://192.168.50.1.

#The motor won't spin

The controller only enables its output when everything below is true — check them in order:

  • Setup is complete. The setup wizard must have finished, including signing the safety disclaimer. Until then the output is deliberately disabled.
  • No fault is active. Fast-blinking LED or anything red in the dashboard health panel means a protection has tripped — see the fault reference. An undervoltage fault from a sagging or undersized supply is the most common silent blocker (default trip: below 16 V).
  • The motor is enabled in Settings — a firmware update or factory reset leaves it in the state the wizard set.
  • A throttle command is actually arriving. Watch the inputs section of the dashboard while you operate the pedal or transmitter. No movement there means a wiring or calibration problem on the input side, not a motor problem.
  • Motor wiring. With power removed, check the motor leads and connectors. A motor that hums or twitches but doesn't turn often has one leg disconnected.

#Faults keep tripping

The fault & LED reference covers every label, threshold, and how faults latch and clear. The short version of the recurring ones:

  • Undervoltage under load with a charged battery usually means connector or wire resistance, not the battery.
  • Overvoltage while braking means the battery can't absorb the regenerated current — check its state of charge and charge-current limit.
  • Current faults on hard launches are stall current. Slow the throttle ramp in your drive profile before raising any threshold.
  • Repeated short-circuit trips are almost always damaged motor wiring or a failed motor. Disconnect power and inspect — don't keep resetting into a hard short.

#An update went wrong

First, the reassuring part: firmware lives in two flash banks with automatic rollback. An over-the-air update writes the inactive bank, and if the new firmware fails to boot, the bootloader falls back to the version you were running. A failed OTA very rarely leaves the controller unusable.

  • Upload rejected? The OTA wizard requires the matched pair of release files — app_…bin and storage_…bin with the same version — exactly as published in a release. Mixing versions is rejected on purpose.
  • Upload failed mid-way? Nothing was activated — start the wizard again from the beginning.
  • Dashboard looks broken after updating? Force-refresh (Ctrl/Cmd+Shift+R) or use a private-browsing window; the page you're seeing is a stale cached copy of the old web UI.
  • Booted back into the old version? That's rollback doing its job after the new image failed to come up. Re-download the release files and run the update again.
  • Won't boot at all? Recover over USB: connect the controller to a computer and use the web flasher with the full erase option, then run first-time setup again.

#USB flashing problems

  • Use a data cable. Charge-only USB cables are the single most common cause of "no port found".
  • Use a supported browser. The web flasher needs Web Serial — Chrome, Edge, or Opera on desktop, over HTTPS. Safari and Firefox don't support it.
  • Free up the port. Close any serial monitor or IDE that has the port open — only one program can hold it.
  • Force download mode if connecting fails. Hold the BOOT button while plugging in (or while pressing reset), then release. The chip then waits for the flasher instead of running firmware.
  • On Linux, your user needs permission for serial devices — typically membership in the dialout or uucp group (log out and back in after adding).
  • Prefer a rear/native USB port over front-panel ports and unpowered hubs.

#Factory reset

Two ways to get back to a clean state:

  • Reset-to-defaults input. Boards that expose the reset-to-defaults button or input: hold it active while powering on. This restores default settings — saved Wi-Fi credentials, tuning, profiles, and the Test-mode password are cleared; the firmware itself stays installed. The controller boots back into first-time setup.
  • Full erase over USB. The most thorough option: connect over USB, open the web flasher, choose Erase everything first, and flash the current release. This wipes the entire flash — settings and firmware — and reinstalls from scratch.

After either reset, follow the quickstart to set the controller up again (PW-AP-1 http://192.168.50.1).