SkillAgentSearch skills...

FluidTouch

FluidTouch is a touch-screen CNC controller interface for the Elecrow CrowPanel 7-inch ESP32 display, designed to control FluidNC-based CNC machines with an intuitive LVGL-based UI featuring joystick control, file management, macros, and real-time machine monitoring.

Install / Use

/learn @jeyeager65/FluidTouch
About this skill

Quality Score

0/100

Category

Operations

Supported Platforms

Universal

README

FluidTouch

A touchscreen CNC controller for FluidNC-based machines

FluidTouch provides an intuitive 800×480 touchscreen interface for controlling CNC machines running FluidNC firmware. Built on the Elecrow CrowPanel 7" ESP32-S3 HMI display with hardware-accelerated graphics and a responsive LVGL-based UI.

Version Platform License

FluidTouch Status

✨ Key Features

  • Real-time Machine Control - Monitor position, state, feed/spindle rates with live updates from FluidNC
  • Multi-Machine Support - Store and switch between up to 4 different CNC configurations
  • Intuitive Jogging - Button-based and analog joystick interfaces with configurable step sizes
  • Touch Probe Operations - Automated probing with customizable parameters for precise work coordinate setup
  • Macro Support - Configure and store up to 9 file-based macros per machine
  • File Management - Browse and manage files from FluidNC SD, FluidNC Flash, and Display SD card
  • Settings Backup & Restore - Export settings to JSON, auto-import on fresh install, Clear All Settings option
  • Power Management - Configurable display dimming, sleep, and deep sleep modes for battery operation
  • Terminal - Execute custom commands and view FluidNC messages
  • WiFi Connectivity - WebSocket connection to FluidNC with automatic status reporting

🚀 Quick Start

Option 1: Web Installer (Recommended)

The easiest way to install FluidTouch is using our web-based installer:

  1. Visit: FluidTouch Web Installer
  2. Click: "Install FluidTouch" button
  3. Connect: Your ESP32-S3 device via USB-C
  4. Done! Firmware flashes automatically in 30-60 seconds

Requirements: Chrome, Edge, or Opera browser (Web Serial API support)

Option 2: Pre-built Binaries

Download the latest firmware from Releases and flash using:

  • esptool.py: esptool.py --chip esp32s3 --port COM6 write_flash 0x10000 firmware.bin

Option 3: Build from Source

Refer to the Development Guide for additional instructions.


🖥️ Compatible Hardware

Elecrow CrowPanel 7" Basic ESP32-S3 HMI Display

  • ESP32-S3-WROOM-1-N4R8 (4MB Flash + 8MB PSRAM)
  • 800×480 TN RGB TFT LCD
  • GT911 Capacitive Touch
  • PWM Backlight Control
  • External battery connector
  • Buy on Elecrow ↗ (affiliate link)

Elecrow CrowPanel 7" Advance ESP32-S3 HMI DisplayRecommended

  • ESP32-S3-WROOM-1-N16R8 (16MB Flash + 8MB PSRAM)
  • 800×480 IPS RGB LCD (superior image quality)
  • GT911 Capacitive Touch
  • I2C Backlight Control (STC8H1K28)
  • Internal battery connector (JST PH 2.0mm 2-pin)
  • Optional acrylic case with battery compartment (supports ~1200mAh LiPo batteries)
  • ⚠️ ESP32-S3 ONLY - ESP32-P4 versions are NOT supported
  • Hardware Versions 1.2 and 1.3 Supported
    • Both versions: DIP switches S0 and S1 must both be set to position 1
    • Version 1.2: ⚠️ Support is untested - use v1.2 firmware from web installer
    • Version 1.3: Fully tested and recommended
    • Case Note: When using acrylic case, install 6mm M3 screws in bottom mounting inserts to prevent accidental reset button presses
  • Buy on Elecrow ↗ (affiliate link)

📖 Documentation

Detailed documentation is available in the docs/ folder:


🔧 First-Time Setup

  1. Power on the device
  2. On the "Select Machine" screen, click the Edit button.
  3. Click the "Add" button to add a new machine:
    • Name
    • Connection (currently only Wireless is supported)
    • WiFi SSID and Password (machine-specific)
    • FluidNC IP address or hostname (e.g. 192.168.0.1 or fluidnc.local)
    • WebSocket port (default: 81)
      • Port 80 is used by FluidNC v4.0+
      • Port 81 is used by WebUI v2 (FluidNC v3.x)
      • Port 82 is used by WebUI v3 (FluidNC v3.x) - only allows one connection at a time but will switch cleanly between connections
  4. Click the "Save" button.
  5. Click the "Done" button.
  6. Click on the created machine.

🤝 Contributing

Contributions are welcome! Please read our Development Guide for:

  • Code architecture and design patterns
  • Building and testing
  • Submitting pull requests

💙 Support Development

This project is provided free and open-source. Product links use affiliate codes that help offset development costs at no extra cost to you. Your support is appreciated but never required.


📝 License

This project is licensed under the MIT License - see the LICENSE file for details.


🙏 Acknowledgments

  • FluidNC - CNC control firmware
  • LVGL - Embedded graphics library
  • LovyanGFX - Hardware-accelerated display driver

📧 Support

Related Skills

View on GitHub
GitHub Stars29
CategoryOperations
Updated3d ago
Forks12

Languages

C

Security Score

90/100

Audited on Mar 26, 2026

No findings