Skip to main content

Pin Mapper

The Pin Mapper provides visual pin conflict detection and management, making it easy to assign GPIO pins without conflicts and understand your board's capabilities.

Overview​

The Pin Mapper offers:

  • Visual pin status - See all pin assignments at a glance
  • Conflict detection - Real-time validation of pin assignments
  • Board awareness - Understands pin capabilities and limitations
  • Interactive assignment - Click to assign or change pins
  • Status indicators - Color-coded pin availability

Key Features​

🎯 Visual Pin Status​

  • 🟢 Available: Pin is free and can be assigned
  • 🟡 In Use: Pin is assigned to a function
  • 🔴 Conflict: Pin is assigned to multiple functions
  • ❌ Invalid: Pin cannot be used for this function

🔍 Smart Validation​

  • Board-specific pin capabilities
  • Input-only pin detection
  • Reserved pin warnings
  • Current capacity checking

📌 Interactive Management​

  • Click pins to assign/reassign
  • Drag-and-drop pin assignments
  • Bulk pin operations
  • Conflict resolution suggestions

How It Works​

Pin Status Detection​

The Pin Mapper automatically analyzes your configuration:

  1. Scans all sections for pin assignments
  2. Identifies conflicts between functions
  3. Checks board compatibility for each assignment
  4. Provides visual feedback through color coding

Board Integration​

Understands board-specific limitations:

  • Input-only pins (GPIO 34, 35, 36, 39 on ESP32)
  • Flash memory pins (GPIO 6-11 on ESP32)
  • Strapping pins with boot-time considerations
  • Current limitations for motor drivers

Using the Pin Mapper​

Accessing Pin Mapper​

  1. Open any configuration in FluidNC GUI
  2. Navigate to Pin Mapper from main menu
  3. View current pin assignments in visual layout

Reading Pin Status​

  • Pin numbers clearly labeled on board diagram
  • Color indicators show current status
  • Hover for details about pin capabilities
  • Click for assignment options

Resolving Conflicts​

  1. Identify red pins indicating conflicts
  2. Click conflicted pin to see assignment details
  3. Choose which function to reassign
  4. Select new pin from available options

Board Support​

ESP32 Standard​

  • 38 GPIO pins with full capability mapping
  • Input-only detection for ADC pins
  • Flash pin warnings for GPIO 6-11
  • Strapping pin notices for boot considerations

ESP32-S2/S3​

  • Extended pin count with board-specific layouts
  • USB pins marked as reserved when applicable
  • Built-in LED pins identified
  • Board variant specific capabilities

Custom Boards​

  • Generic ESP32 pin mapping as fallback
  • Customizable layouts for specialized boards
  • Community-contributed board definitions

Advanced Features​

Pin Groups​

Manage related pins together:

  • Motor pin groups (step, direction, enable)
  • Axis limit groups (min, max limits)
  • Communication groups (UART, SPI, I2C)

Assignment Suggestions​

Smart recommendations for pin assignments:

  • Logical grouping of related functions
  • Electrical considerations for high-current pins
  • Interference avoidance for sensitive signals
  • Future expansion planning

Conflict Resolution​

Automated conflict resolution:

  • Alternative pin suggestions
  • Function priority recommendations
  • Batch reassignment for multiple conflicts
  • Undo/redo for assignment changes

Best Practices​

Pin Planning Strategy​

  1. Start with critical functions (motors, safety)
  2. Group related pins physically close
  3. Reserve pins for future expansion
  4. Avoid sensitive pins for high-frequency signals

Using Pin Mapper Effectively​

  • Review entire layout before finalizing
  • Use suggestions for optimal assignments
  • Test incrementally after major changes
  • Document custom pin choices

Troubleshooting with Pin Mapper​

  • Visual conflict identification
  • Board limitation understanding
  • Assignment validation before hardware testing
  • Change tracking for configuration debugging

Integration with Other Features​

Wizard Mode​

  • Automatic validation during wizard steps
  • Real-time feedback on pin selections
  • Conflict prevention before completion

Expert Editor​

  • Visual representation of configuration pins
  • Click-to-edit pin assignments
  • Immediate validation of changes

Common Scenarios​

New Configuration​

  1. Start with motor pins - most critical
  2. Add limit switches - safety functions
  3. Configure spindle - tool control
  4. Add optional I/O - convenience features

Troubleshooting Existing​

  1. Import configuration to Pin Mapper
  2. Identify conflicts visually
  3. Resolve systematically starting with critical functions
  4. Validate entire configuration

Board Migration​

  1. Load configuration for old board
  2. Select new board type
  3. Review pin compatibility warnings
  4. Reassign incompatible pins

Error Prevention​

Common Mistakes​

  • Using input-only pins for outputs
  • Conflicting pin assignments
  • Ignoring board limitations
  • Poor pin grouping

Prevention Strategies​

  • Use Pin Mapper validation before deployment
  • Follow board documentation
  • Test configurations incrementally
  • Keep backup configurations

Performance Tips​

Large Configurations​

  • Group pins efficiently for better performance
  • Use search functionality to find specific pins
  • Close unused sections to improve responsiveness

Real-time Updates​

  • Immediate validation during editing
  • Efficient conflict detection algorithms
  • Minimal UI updates for smooth experience

Future Enhancements​

Planned Features​

  • 3D board visualization
  • Advanced routing suggestions
  • Pin capability detailed views
  • Export pin diagrams

Community Contributions​

  • Additional board support
  • Pin assignment templates
  • Best practice guides
  • Troubleshooting scenarios

Next Steps​

Master pin management with:

The Pin Mapper makes pin assignment visual and error-free. Never worry about pin conflicts again! 📌