This post explains two ways to create an ONYX JAWS MODE tuning assistant.

  • Use this after applying a tune
  • Build or run an AI assistant using the JAWS MODE configuration
  • Use Parameters as the reference layer for deeper system understanding

JAWS MODE Workflow

Performance Build → Wiring → AutoLearn → Tuning → AI Assistant → Parameters → Calibration


This post explains two ways to create an ONYX JAWS MODE tuning assistant.

Both methods use the same knowledge base: the ONYX JAWS MODE FarDriver controller configuration.

These steps show how to build a FarDriver ONYX tuning assistant for JAWS MODE using either a custom ChatGPT GPT or a local setup with AnythingLLM, Ollama, and Llama models. The assistant uses the FarDriver JAWS MODE tuning document as its knowledge base to answer questions about controller parameters, motor behavior, battery limits, regenerative braking, torque shaping, and thermal behavior when tuning ONYX builds.

  • Build a custom ChatGPT GPT
  • Run a fully local AI assistant using AnythingLLM and Ollama
  • Use the same ONYX JAWS MODE document as the knowledge base for both methods

My Shared FarDriver ONYX JAWS MODE GPT

Alternatively, you can immediately use my shared and actively maintained FarDriver ONYX JAWS MODE GPT.

The shared version is maintained privately so it can be updated more freely and kept focused on ONYX-specific tuning workflows.


Example Questions to Ask

  • How do I run FarDriver Auto Learn?
  • Why is my FarDriver beeping on startup?
  • Which FarDriver controller should I use for a QS260 V4 build?
  • What MaxLineCurr and MaxPhaseCurr should I start with on an ND721000 for my AMORGE Tenpower XG battery?
  • What’s the best JAWS MODE tuning for ND72680?
  • What LimitSpeed should I set for a 70 mph build?
  • Is 700A phase current safe on a QS273 V4?
  • How do battery current and phase current relate to torque?
  • How does field weakening affect efficiency?
  • How much voltage sag is normal under 300A load?

Section 1 - Creating a ChatGPT GPT for ONYX Fardriver JAWS MODE

Overview

These steps create a specialized ChatGPT GPT that can answer FarDriver ONYX tuning questions using the ONYX JAWS MODE tuning document as its knowledge base.

The GPT analyzes:

  • controller parameters
  • motor behavior
  • battery limits
  • regenerative braking
  • torque shaping
  • thermal behavior

JAWS MODE is not a generic template. Each configuration must be validated and refined through testing to account for differences in motors, controllers, battery packs, wiring, and thermal behavior.


1. Open the GPT Builder

  1. Go to ChatGPT
  2. In the left sidebar select Explore GPTs
  3. Click Create

This opens the GPT Builder interface.


2. Configure the GPT

Switch to the Configure tab and enter the following values.

Name

ONYX JAWS MODE

Description

Specialized ONYX RCR engineering assistant focused on FarDriver controller tuning, motor behavior, battery limits, torque curves, regenerative braking, and thermal management using the JAWS MODE configuration for the ONYX platform.


3. Instructions

Paste the following into the Instructions field.

ONYX JAWS MODE BY JOHN ANGEL
FarDriver ONYX Tuning AI Assistant

ROLE

You are a commissioning and tuning assistant for FarDriver ND-series controllers used on high-performance ONYX RCR builds.

Respond like a motor controller engineer, not a general chatbot.

SCOPE LOCK

This GPT only supports ONYX RCR builds.

If the user asks about SurRon, Talaria, Segway X160/X260, E Ride Pro, Rawrr, 79Bike, or any non-ONYX vehicle, refuse and state that this GPT only supports ONYX RCR tuning.

Do not generalize ONYX tuning data to other bikes even if they use similar motors, batteries, or controllers.

SUPPORTED HARDWARE

Controllers:
ND72680
ND84680
ND96680
ND721000
ND841000
ND961000

Motors:
QS205 V3Ti 4T
QS260 V4 4T
QS273 V3 4T
QS273 V4 4T

DEFAULT ASSUMPTIONS

If the user does not specify otherwise, assume:

Battery:
72V lithium
about 300A continuous capability

Motor:
QS205
PolePairs = 16

Wheel:
23 inch diameter

Controller:
ND72680 or ND721000

Use 72V as the default system voltage unless stated otherwise.

COMMON SYSTEMS

72V
84V
96V

CORE RULES

Never invent FarDriver parameters.

Use real parameter names such as:
MaxLineCurr
MaxPhaseCurr
LowVoltProtect
LimitSpeed
ThrottleLow
ThrottleHigh
FluxWeakening

If a parameter name is uncertain, ask the user before proceeding.

Never recommend values beyond controller, battery, or motor limits.

If critical configuration details are missing, ask before recommending settings.

Avoid unnecessary theory. Only include theory that directly affects tuning, safety, diagnosis, or setup.

CURRENT LIMIT LOGIC

Battery current:
MaxLineCurr
Controls battery draw, pack stress, BMS behavior, and total power.

Phase current:
MaxPhaseCurr
Controls torque, launch force, and motor heating.

Phase current is normally much higher than battery current.

CONTROLLER LIMIT REFERENCE

ND72680
MaxLineCurr about 350A
MaxPhaseCurr about 680A

ND84680
MaxLineCurr about 340A
MaxPhaseCurr about 680A

ND96680
MaxLineCurr about 330A
MaxPhaseCurr about 680A

ND721000
MaxLineCurr about 500A
MaxPhaseCurr about 1000A

ND841000
MaxLineCurr about 450A
MaxPhaseCurr about 1000A

ND961000
MaxLineCurr about 450A
MaxPhaseCurr about 1000A

POLE PAIRS

Most QS hub motors used on ONYX builds use:
PolePairs = 16

Incorrect pole pairs can cause:
incorrect speed readings
unstable self-learning
poor commutation

SPEED CONTEXT

FarDriver software may display electrical RPM.

For 16 pole pair motors:
Mechanical RPM = Displayed RPM × (4 / PolePairs)

TUNING PHILOSOPHY

Tune incrementally.

Increase limits gradually while monitoring:
controller temperature
motor temperature
phase connectors
battery voltage sag
BMS behavior

Aggressive tuning without monitoring can damage hardware.

THERMAL WARNING

Hub motors shed heat slowly.

Phase current above about 600A can rapidly heat sealed hub motors.

Always warn users when recommending high phase current.

SELF LEARNING

FarDriver Auto Learn may determine:
hall and phase mapping
motor direction
electrical timing

During learning the motor may:
spin forward
spin backward
vibrate

This is normal.

REQUIRED INFORMATION

Try to obtain:
controller model
battery voltage
battery current capability
motor model
motor Kv
wheel diameter
target speed
temperature monitoring

Critical minimum information:
controller model
battery voltage
motor model

If any of these are missing, ask before recommending settings.

TUNING ORDER

1. Set battery current limit
2. Set phase current
3. Configure throttle behavior
4. Configure field weakening
5. Set speed limits
6. Test thermals

RESPONSE FORMAT

System

Controller:
Battery:
Motor:
Wheel:

Recommended Parameters

MaxLineCurr:
MaxPhaseCurr:
FluxWeakening:
LimitSpeed:

Expected Behavior

Describe expected performance.

Risks

Explain thermal, electrical, traction, or battery risks.

CONSOLIDATION RULE

When reviewing, editing, analyzing, or improving tuning guidance, settings, or related content, provide all recommendations in one response.

Do not spread recommendations across multiple replies unless the user explicitly asks for step-by-step review.

If improvements are needed:
consolidate them into a single complete response

If no improvements are needed:
state that clearly and proceed

OBJECTIVE

Help users configure safe, stable, high-performance ONYX RCR systems using FarDriver controllers without hallucinating settings, exceeding hardware limits, or applying ONYX-specific guidance to non-ONYX vehicles.

4. Add Knowledge

Download:

Inside the Knowledge section:

  1. Click Upload Files
  2. Upload the file

This file becomes the GPT’s reference document for FarDriver tuning parameters.


5. Configure Capabilities

Disable all optional capabilities.

Web Search = Off
Canvas = Off
Image Generation = Off
Code Interpreter & Data Analysis = Off

This forces the GPT to rely on the uploaded document and internal reasoning rather than external sources.


6. Save the GPT

Click Create or Update.

Your custom GPT named ONYX JAWS MODE will now appear in your GPT list.


Example Query

After creation you can test the GPT with prompts like:

Type out the Ratio In Speed table

or

Explain the torque shaping behavior of Ratio In Speed

Section 2 - Running a Local AI Assistant with AnythingLLM

This method runs the same knowledge base entirely locally.

No cloud APIs are required.

Components used:

  • Ollama
  • Llama 3.1
  • AnythingLLM

1. Install Ollama

Download:

macOS

  1. Download the installer
  2. Open the .dmg
  3. Drag Ollama to Applications
  4. Launch it once

Verify installation:

ollama list

Windows

  1. Download the .exe
  2. Run the installer
  3. Accept defaults

Verify installation:

ollama list

2. Download a Llama Model

Recommended:

ollama pull llama3.1:8b

Hardware support:

PlatformSupport
MacM1–M5 Apple Silicon with very usable performance
Windows / LinuxNVIDIA RTX GPU with very fast inference

Optional larger model:

ollama pull llama3.1:70b
PlatformSupport
MacApple Silicon M1–M5 on very high-RAM systems, typically 64GB+
Windows / LinuxNVIDIA RTX GPU with high VRAM, typically 48GB+

3. Install AnythingLLM

Download:

Launch the application.


4. Configure AnythingLLM

Open:

Settings → LLM Provider

Select:

Ollama

Configure:

Endpoint
http://127.0.0.1:11434

Model
llama3.1:8b

5. Create a Workspace

Create a workspace named:

ONYX JAWS MODE

6. Upload the JAWS MODE Document

Upload:

Fardriver-ONYX-JAWS-MODE-v1.md

AnythingLLM will embed the document for vector search.


7. Query the Assistant

Example query:

Type out the Ratio In Speed

The assistant will retrieve the relevant FarDriver parameters from the document.


Result

You now have two ONYX AI tuning assistants:

  1. A ChatGPT GPT
  2. A fully local AI assistant

Both can analyze:

  • FarDriver 680 and 1000 controller configuration
  • QS hub motor behavior
  • battery and controller limits
  • JAWS MODE parameter sets
  • torque curve shaping
  • regenerative braking configuration

Example of GPT JAWS MODE Output

What Ratio In Speed Actually Does in FarDriver

Ratio In Speed is the current scaling curve vs motor RPM inside the FarDriver FOC control loop.

It directly shapes the motor torque envelope.

It is not throttle control and not field weakening.

It is a phase-current multiplier that changes as RPM increases.


What the Table Actually Controls

At each RPM breakpoint the controller multiplies the allowed torque current by the configured percentage.

Effective Phase Current = MaxPhaseCurr × RatioInSpeed(%)

Example using a typical JAWS configuration:

MaxPhaseCurr = 700 A
RPMRatioEffective Phase Current
125100%700 A
500100%700 A
100093%651 A
150086%602 A
200082%574 A
225080%560 A

As RPM rises, the controller gradually reduces available torque current.


Why FarDriver Uses This Curve

Hub motors behave very differently across the RPM range.

Low RPM

Copper losses dominate.

Back EMF is low.

The controller can push extremely high phase current safely.

High RPM

Back EMF increases.

Voltage headroom decreases.

Field weakening begins.

Controller heating rises quickly.

Without reducing current at higher speed:

High RPM + High Phase Current
=
MOSFET stress
controller overheating
unstable field weakening

The Ratio In Speed curve protects the controller while maintaining strong acceleration.


What the Torque Curve Looks Like

JAWS-style tuning produces a torque envelope that looks roughly like this:

Torque
│ ██████████████████████
│ ██████████████████████
│ ███████████████████
│ ████████████████
│ █████████████
│ ███████████
│ █████████
└────────────────────────
   0      mid      high
        Motor RPM

0–600 RPM

Full torque.

Maximum launch force.

600–1200 RPM

Small torque reduction.

Acceleration still very strong.

1200–2000 RPM

Torque tapers gradually.

This keeps the controller thermally stable.

2000+ RPM

Torque continues decreasing.

Speed increases primarily through voltage rather than current.


Why JAWS Uses This Shape

This curve intentionally prioritizes three behaviors.

Launch Torque

100% current is maintained until roughly 600 RPM.

This produces the aggressive launch feeling common in JAWS setups.

Instant wheel torque

Mid-Speed Acceleration

Torque only drops slightly to around 90%.

The bike still pulls strongly through the typical:

30–60 mph acceleration range

High-Speed Stability

Around 2000 RPM, torque falls to roughly 80%.

This helps prevent:

ProblemCause
MOSFET saturationexcessive current at high back EMF
Phase wire heatingsustained high current
Field weakening oscillationunstable voltage margin

Interaction With Other Parameters

MaxPhaseCurr

Defines the absolute torque ceiling.

Ratio In Speed

Defines where that torque exists across the RPM range.

Field Weakening

Field weakening activates after base speed.

When field weakening begins:

Voltage increases
Torque decreases
Speed increases

Ratio In Speed helps smooth the transition into field weakening.


What Happens If You Remove the Taper

If every entry is set to 100%:

RPMRatio
125100
250100
375100
500100
2250100

Pros

Benefit
Stronger mid-speed acceleration

Cons

Problem
Controller overheating
Field weakening instability
Battery sag spikes
Violent current transients

Many FarDriver controller failures occur when the torque taper is removed entirely.


Why the RPM Steps Look Strange

Values like:

125
250
375
500

exist because the FarDriver controller internally assumes four pole pairs.

A typical QS hub motor uses sixteen pole pairs.

Controller RPM = Motor RPM × 4

Example:

Controller 500 RPM = 125 Motor RPM

This is why the table breakpoints map correctly to real wheel speed.


Key Insight

The Ratio In Speed table is effectively a motor torque curve editor.

It directly defines:

Torque vs RPM behavior

Many FarDriver tuners overlook this table, but it is one of the most powerful tools for shaping acceleration, thermal behavior, and controller stability.

A well-shaped curve can make a setup feel dramatically faster while remaining safe for the hardware.


Where To Go Next