DJI FPV Controller Guide
Complete guide for using the DJI FPV controller with IDI Fly Dashboard, including camera and gimbal controls.
Overview
The DJI FPV controller features dual-mode operation, allowing you to switch between flight controls and gimbal controls on-the-fly.
Quick Reference
Button Layout
| Button | Function | Description |
|---|---|---|
| B0 | Unmapped | Available for future use |
| B1 | Capture | Take photo or start/stop recording |
| B2 | Gimbal Reset / RTH | Single click: Reset gimbal / Hold 6s: Return to Home |
| B3 | Camera Mode | Toggle between photo and video mode |
| B4 + B5 | Lens Selection | Binary switching for Wide/Zoom/IR |
| B7 | Mode Toggle | Switch between Flight and Gimbal mode |
Axis Layout
| Axis | Flight Mode (B7=0) | Gimbal Mode (B7=1) |
|---|---|---|
| Axis 0 | Roll | Roll (unchanged) |
| Axis 1 | Pitch | Pitch (unchanged) |
| Axis 2 | Throttle | Gimbal Pitch |
| Axis 3 | Yaw | Gimbal Yaw |
| Axis 4 | Zoom | Zoom (unchanged) |
Button Mappings
B1 - Capture Button
Function: Take photo or control video recording
Behavior:
- Photo Mode: Takes a single photo
- Video Mode:
- First press: Starts recording
- Second press: Stops recording
Usage:
- Ensure you’re in the correct camera mode (use B3 to switch)
- Press B1 once to capture/record
B2 - Gimbal Reset / RTH
Function: Dual-purpose button with short press and long hold actions
| Press Duration | Action |
|---|---|
| Short Press (< 6 seconds) | Resets gimbal to center position |
| Long Hold (≥ 6 seconds) | Triggers Return to Home (RTH) |
Short Press:
- Resets gimbal to center position
- Sets pan, tilt, and roll to 0°
- Displays “Gimbal Reset” notification
Long Hold:
- Triggers Return to Home (RTH)
- DJI Dock3: Returns to docking station
- Other drones: Returns to safe location
- Displays “RTH Triggered” notification
RTH cannot be cancelled once triggered. Ensure you want to return before holding for 6 seconds.
B3 - Camera Mode Toggle
Function: Switch between photo and video modes
Usage:
- Press B3 to switch modes
- Check the camera widget to confirm mode change
- Use B1 to capture in the selected mode
B4 + B5 - Binary Lens Switching
Function: Select camera lens using binary button combination
| B4 | B5 | Result |
|---|---|---|
| Released | Released | WIDE lens |
| Pressed | Released | ZOOM lens |
| Released | Pressed | IR (Infrared) lens |
| Pressed | Pressed | No change |
Some cameras may not support all lenses. Unsupported lens switches are ignored.
B7 - Flight/Gimbal Mode Toggle
Function: Switch between flight control and gimbal control modes
Flight Mode (B7 Released - Default):
- Axis 2 controls throttle (up/down)
- Axis 3 controls yaw (rotation)
- Standard flight controls active
- Notification: “Flight Mode Active”
Gimbal Mode (B7 Pressed):
- Axis 2 controls gimbal pitch (tilt up/down)
- Axis 3 controls gimbal yaw (pan left/right)
- Flight throttle and yaw automatically set to 0
- Notification: “Gimbal Mode Active”
When entering gimbal mode, throttle and yaw are automatically zeroed to prevent unintended drone movement.
Axis Mappings
Axis 0 - Roll (Always Flight)
Function: Controls drone roll (left/right tilt)
| Property | Value |
|---|---|
| Range | -660 to +660 |
| Behavior | Always controls flight |
| Location | Left stick horizontal axis |
| Direction | Negative = Roll left, Positive = Roll right |
Axis 1 - Pitch (Always Flight)
Function: Controls drone pitch (forward/backward tilt)
| Property | Value |
|---|---|
| Range (DJI Dock3) | -660 to +660 |
| Range (Other) | -200 to +200 |
| Behavior | Always controls flight |
| Location | Left stick vertical axis |
| Direction | Negative = Forward, Positive = Backward |
Axis 2 - Throttle / Gimbal Pitch
Function: Dual-purpose axis controlled by B7
Flight Mode (B7=0):
- Controls vertical throttle
- Range: -50 to +50
- Up = Ascend, Down = Descend
Gimbal Mode (B7=1):
- Controls gimbal pitch (tilt)
- Range: Typically -90° to +30°
- Up = Tilt up, Down = Tilt down
- Uses ABSOLUTE_ANGLE mode
Axis 3 - Yaw / Gimbal Yaw
Function: Dual-purpose axis controlled by B7
Flight Mode (B7=0):
- Controls yaw rotation
- Range: -100 to +100 (inverted)
- Left = Rotate left, Right = Rotate right
Gimbal Mode (B7=1):
- Controls gimbal yaw (pan)
- Range: Typically -180° to +180°
- Left = Pan left, Right = Pan right
- Uses ABSOLUTE_ANGLE mode
Axis 4 - Zoom Control
Function: Controls camera zoom level
| Property | Value |
|---|---|
| Range | 1x to 54x (varies by camera) |
| Behavior | Continuous zoom control |
| Availability | Works in both flight and gimbal modes |
Operating Modes
Flight Mode (Default)
Characteristics:
- Full flight control enabled
- Axis 2 = Throttle
- Axis 3 = Yaw
- Axis 0 & 1 = Roll & Pitch
When to Use:
- Normal flight operations
- Manual positioning
- Emergency maneuvers
Gimbal Mode
Characteristics:
- Gimbal control enabled
- Axis 2 = Gimbal Pitch
- Axis 3 = Gimbal Yaw
- Flight controls (Axis 0 & 1) still active
- Throttle and yaw automatically zeroed
When to Use:
- Precise camera positioning
- Smooth gimbal movements
- Video recording with stable footage
- Inspections requiring camera adjustment
Roll and pitch remain active in gimbal mode. Be careful not to tilt the drone while adjusting the camera.
Feature Details
Return to Home (RTH)
Activation: Hold B2 for 6 seconds
Behavior:
- Drone automatically returns to home position
- DJI Dock3: Returns to docking station
- Other drones: Returns to safe location
- Cannot be cancelled via controller once triggered
Safety Considerations:
- Ensure clear flight path before triggering
- Monitor battery level (RTH requires sufficient power)
- Be aware of obstacles between current position and home
Lens Switching
Available Lenses:
| Lens | Use Case |
|---|---|
| WIDE | General flight, FPV, situational awareness |
| ZOOM | Inspections, distant subjects, wildlife |
| IR | Thermal inspections, night ops, search & rescue |
Not all cameras support all lens types. System checks camera config before switching.
Gimbal Control
Control Modes:
- ABSOLUTE_ANGLE: Direct position control (used by controller)
- RELATIVE_ANGLE: Incremental adjustments (used by UI)
Limits: | Axis | Range | |——|——-| | Pan (Yaw) | Typically ±180° | | Tilt (Pitch) | Typically -90° to +30° | | Roll | Usually locked at 0° |
Best Practices
Flight Safety
- Always check mode before adjusting controls
- Keep hands on Roll/Pitch in gimbal mode
- Monitor battery before triggering RTH
- Clear flight path before enabling gimbal mode
- Practice mode switching on the ground first
Camera Operations
- Select lens first, then adjust zoom
- Use gimbal mode for smooth camera movements
- Reset gimbal between shots for consistency
- Switch to photo mode before important captures
- Monitor storage during long recordings
Controller Management
- Calibrate controller regularly in browser
- Test all buttons before flight
- Keep firmware updated on controller
- Charge controller before operations
- Have backup control method available
Troubleshooting
Gimbal Not Responding
| Cause | Solution |
|---|---|
| Not in gimbal mode | Press B7 and check for “Gimbal Mode Active” |
| Dashboard controls interfering | Disable dashboard gimbal controls |
| Gimbal limits reached | Reset gimbal with B2 single click |
Camera Not Capturing
| Cause | Solution |
|---|---|
| Wrong camera mode | Toggle mode with B3 |
| SD card full/missing | Check SD card status in telemetry |
| Camera not initialized | Restart stream |
Lens Switch Not Working
| Cause | Solution |
|---|---|
| Lens not supported | Check camera capabilities |
| Wrong button combination | Verify B4/B5 combination |
| Camera busy | Wait and retry |
RTH Not Triggering
| Cause | Solution |
|---|---|
| Not held long enough | Hold B2 for full 6 seconds |
| Virtual stick disabled | Enable virtual stick |
| Mission in progress | Stop active mission first |
Zoom Not Working
| Cause | Solution |
|---|---|
| Camera doesn’t support zoom | Check camera config |
| Not on ZOOM lens | Switch to ZOOM (B4 pressed, B5 released) |
| Axis 4 not moving | Check axis calibration |
Mode Toggle Not Working
| Cause | Solution |
|---|---|
| B7 not registering | Check gamepad connection |
| Controller disconnected | Reconnect controller |
| Virtual stick disabled | Toggle virtual stick |
Technical Reference
Command Throttling
| Command Type | Interval |
|---|---|
| Flight Commands | 100ms (standard) / 200ms (Dock3) |
| Gimbal Commands | 100ms (1° change threshold) |
| Camera Commands | Immediate on button press |
MQTT Topics
| Function | Topic Pattern |
|---|---|
| Camera | $aws/things/{device}/shadow/name/CAMERA_COMMAND/update |
| Gimbal | $aws/things/{device}/shadow/name/GIMBAL_COMMAND/update |
| Mission (RTH) | $aws/things/{device}/shadow/name/MISSION_COMMAND/update |
Document Version: 1.0 Last Updated: January 2025