This guide defines the AutoLearn process for ONYX FarDriver systems.
- Complete this after wiring is verified
- This step defines motor behavior before tuning
- Do not proceed to tuning if AutoLearn is incorrect
JAWS MODE Workflow
Performance Build → Wiring → AutoLearn → Tuning → AI Assistant → Parameters → Calibration
What This Guide Covers
This guide defines the AutoLearn process for ONYX FarDriver systems.
It explains:
- how the controller identifies the motor
- how phase and hall alignment is established
- how to execute AutoLearn correctly
- how to verify correct operation
- how to recover from failure
AutoLearn is required before any tuning.
System Role
| System | Role | Under Load Behavior | Interaction | Real-World Behavior | Failure Mode |
|---|---|---|---|---|---|
| AutoLearn | Motor identification | Determines commutation accuracy | AngleDetect / PhaseOffset | Smooth vs unstable operation | Stutter / no operation |
What AutoLearn Does
AutoLearn:
- detects motor hall sensor sequence
- determines phase alignment
- sets internal commutation timing
This defines:
- how current is applied to the motor
- how efficiently torque is produced
- whether the motor runs smoothly
Required Conditions
Before running AutoLearn:
- rear wheel must be off the ground
- battery must be properly connected
- throttle must not be applied
- do not apply brake input during process
- wiring must be verified:
- phase wires
- hall sensor connector
AutoLearn will fail if phase or hall wiring is incorrect.
Accessing AutoLearn
AutoLearn is accessed through the FarDriver configuration interface.
Typical methods:
- FarDriver mobile app (Bluetooth connection)
- Controller configuration display (if equipped)
Look for:
- “Auto Learn”
- “Motor Learn”
- or similar motor identification function
The exact name may vary depending on firmware version.
AutoLearn Procedure
- Power on the system
- Connect to the FarDriver controller
- Enter AutoLearn mode
- Ensure throttle is completely closed
- Start the AutoLearn process
- Allow the motor to spin automatically
- Wait until the process completes
- Confirm or save the learned configuration (if required)
The process typically completes within several seconds.
The motor may:
- spin forward
- spin backward
- change direction during the process
This is normal.
Save Behavior
Depending on controller firmware:
- some controllers auto-save after AutoLearn completes
- some require manual confirmation
- some may lose the learned state if power is removed too early
Best practice:
- wait until AutoLearn fully completes
- confirm settings are saved in the app
- do not power off immediately after completion
Expected Behavior
| Behavior | Meaning |
|---|---|
| Smooth rotation | Correct phase/hall alignment |
| Direction changes | Controller testing sequences |
| Stops automatically | Process complete |
Validation
After AutoLearn:
- apply light throttle
- verify smooth acceleration
- check for:
- no stutter
- no vibration
- consistent rotation
Direction Check
After validation:
- confirm wheel direction matches expected forward rotation
If direction is incorrect:
- adjust Motor Direction parameter in controller settings
Do not rewire phase or hall wires solely to correct direction.
Failure Indicators
- motor jerks or stutters
- loud noise during rotation
- motor fails to spin
- inconsistent direction
- excessive vibration
These indicate:
- incorrect wiring
- failed AutoLearn
- sensor issues
Failure Recovery
If AutoLearn fails:
- Power off the system
- Inspect wiring:
- phase wires
- hall sensor connector
- Confirm all connections are secure
- Power system back on
- Re-run AutoLearn
If issues persist:
- verify correct hall/phase pairing
- check for damaged connectors or pins
Do not proceed to tuning until AutoLearn completes successfully.
Interaction Layer
AutoLearn directly affects:
- AngleDetect
- PhaseOffset
- motor commutation behavior
All torque and efficiency depend on this alignment.
Real-World Behavior
Correct AutoLearn:
- smooth throttle response
- efficient power delivery
- stable operation across RPM
Incorrect AutoLearn:
- poor acceleration
- excess heat
- unstable motor behavior
Limits and Failure Modes
- cannot compensate for incorrect wiring
- must be re-run if:
- wiring changes
- controller is replaced
- motor is replaced
Throttle Voltage and AutoLearn Errors
Throttle voltage must be within a valid range before running AutoLearn.
If the controller detects an abnormal throttle signal, AutoLearn may fail or throw a throttle-related error.
Throttle Voltage Ranges
Typical ONYX / FarDriver throttle values:
| State | Voltage Range |
|---|---|
| Low (Idle) | ~0.8V – 1.0V |
| High (Full Throttle) | ~3.6V – 4.35V |
Notes:
- some systems reach up to ~4.35V at full throttle
- this is acceptable if the signal is stable and linear
- values above this may indicate 5V rail or sensor issues
Why This Matters
During AutoLearn:
- the controller expects zero throttle input
- any voltage outside the idle range may be interpreted as throttle engagement
- this can prevent AutoLearn from starting or completing
Common Throttle Errors During AutoLearn
| Issue | Cause |
|---|---|
| AutoLearn will not start | Idle voltage too high |
| Immediate error on start | Throttle not at zero |
| Motor does not spin | Controller blocking input |
| Inconsistent behavior | Noisy or unstable signal |
Diagnosis
Check throttle signal before AutoLearn:
- confirm throttle is not being touched
- verify voltage at idle
- ensure stable reading (no fluctuation)
If using app data:
- observe live throttle percentage or voltage
- confirm it reads near 0% at rest
Correction Methods
If idle voltage is too high:
- adjust throttle baseline (if configurable in controller)
- inspect wiring:
- 5V supply (Red)
- ground (Black)
- signal (Green/White)
- check for:
- partial shorts
- pin misalignment
- damaged connectors
Temporary Workarounds
If AutoLearn must be completed:
- ensure throttle fully returns to rest position
- cycle power and retry with no input
- avoid any mechanical preload on the throttle
When to Stop
Do not continue if:
- idle voltage is unstable
- throttle reads above zero at rest
- controller repeatedly throws throttle errors
Fix the signal issue before proceeding.
Quick Diagnostics
| Symptom | Likely Cause | Fix |
|---|---|---|
| AutoLearn will not start | Throttle not at zero / idle voltage too high | Verify throttle reads ~0.8V–1.0V at rest, release throttle fully, check signal wiring |
| Immediate throttle error | Throttle signal out of range or unstable | Inspect 5V, ground, and signal wires; check for pin damage or shorts |
| Motor does not spin during AutoLearn | Controller blocking due to input issue or wiring fault | Confirm no throttle/brake input, verify hall connector and phase wiring |
| Motor jerks or stutters | Incorrect phase/hall alignment | Re-check hall connector seating, verify wiring, re-run AutoLearn |
| Loud grinding or harsh vibration | Incorrect commutation or phase mismatch | Stop immediately, verify phase/hall wiring, re-run AutoLearn |
| Motor spins but behaves inconsistently | Noisy signal or partial wiring fault | Inspect connectors, check for loose pins, verify stable voltage signals |
| AutoLearn completes but throttle response is rough | Incorrect or incomplete learn | Re-run AutoLearn, confirm smooth rotation before saving |
| Wheel spins backward after AutoLearn | Motor direction not set | Change Motor Direction parameter in controller (do not swap wires) |
| No response after AutoLearn | Configuration not saved | Re-run AutoLearn and confirm save/confirmation in app |
| Works initially then fails after power cycle | Learn not retained | Ensure controller saves settings, avoid powering off immediately after learn |
| Speed display not working | Hall signal tap incorrect | Verify correct hall wire tap (Green / Blue / Yellow) and connection integrity |
| Regen not activating | Brake signal wiring incorrect | Verify brake signal (white → gray) and proper 12V supply to brake switch |
Final Check
Before running AutoLearn:
- throttle reads stable at idle
- no error present
- voltage within expected low range
AutoLearn depends on a clean, zero-input throttle signal.
Tuning Implications
- AutoLearn must be completed before tuning
- incorrect motor definition invalidates all parameter tuning
- tuning cannot fix commutation errors
Tuning Guidance (ONYX-Specific)
- always run AutoLearn after wiring installation
- verify smooth operation before applying any tune
- do not proceed to tuning if any instability is present
- re-run AutoLearn if behavior changes unexpectedly
Final Insight
AutoLearn defines whether the motor runs correctly.
Everything else depends on it.
