💎 Need help? Check out our complete documentation and video tutorials!
📚 View Documentation
Select connection mode above

🔷 GemBot Control

v2.5.0 | Updated: 2026-03-03

← Scan first
🔍 DEBUG MONITOR
MODE: CONTINUOUS
SPEED: 1/5
STEP SIZE: 1/70
X/Y POS: 0/0
ANGLE/IDX: 0°/0
CONNECTION: Disconnected
LAST EVENT:
Waiting for events...
🎮 Control Pad

⚡ Quick Navigation

📋 Main Menu: Settings ◄► Design ◄► Preform ◄► Cut ◄► Polish

⚙️ Settings Submenu

📋 Switch Test ◄► Home ◄► Manual ◄► Chuck Cal ◄► Dop Cal ◄► Rough Cal
📡 Serial Monitor
📊 Device Status
Status
Disconnected
Port / Server
None
Mode
Browser
Data RX
0 bytes
⚙️ Motor Control
1 /5 (Slowest)
(Hold button to move 1 step)

🕹️ Virtual Joystick

Position:
X: 128 | Y: 128 | Index: 128 | P: 128

⬅️➡️⬆️⬇️ Quick Buttons

ℹ️ Instructions: Use the joystick for smooth continuous movement or click buttons for discrete steps. Toggle speed mode for precision/fast movement.
🔀 Motor & Switch Remapping

Use this panel when a button controls the wrong motor, or when direction is reversed (e.g. pressing Y Up moves the machine down). Settings are saved locally per machine.

◄► X Axis Buttons (X Left / X Right)
▲▼ Y Axis Buttons (Y Up / Y Down)
↶↷ P Axis Buttons (P CCW / P CW)
◀▶ Index Buttons (Index − / Index +)
🔌 Switch / Position Data Remapping

If the position display shows data on the wrong axis (e.g. moving X updates the Y display), remap which incoming Arduino channel updates which display. This handles incorrectly wired limit switches or encoders.

📁 Configuration File

Save your complete GemBot settings (motor remapping, switch routing, nav commands, speed & step size) to a JSON file. Load a saved file to instantly restore any machine's configuration.

📋 Position Synchronization & Status
📄 X Position
0
Arduino: ---
Touch: ---
Waiting...
📄 Y Position
0
Arduino: ---
Touch: ---
Waiting...
🔄 Angle (P)
0°
Arduino: ---
Touch: ---
Waiting...
🎰 Index Step
0/96
Arduino: ---
Touch: ---
Waiting...
⚡ Speed Multiplier
1 / 5
Slowest
🎛️ Motor Mode
CONTINUOUS
Hold = Motion
📋 Step Size
1 / 70
Steps per click
Last Update: Never
Ready for data...
📹 Webcam & Motion Diagnostics

🎥 Live Video Feed

🔴 No Camera

📊 Motion Analytics

Motion Detection:
Waiting for camera...
Frame Rate:
0 FPS
Motion Pixels:
0 / 0 (0%)
Movement Detected:
No
Expected Motion:
None

🔍 Motion Verification

Verification results will appear here...

🎯 Machine State Visualization

X Position
0 steps
Y Position
0 steps
P Angle
Index Position
0 / 96
📋 Updates & Changelog

Full history of GemBot Control updates. Newest at the top.

v2.5.0 2026-03-03
  • Motor & Switch Remapping — reassign which physical motor each button group (X, Y, P, Index) controls; reverse direction per axis; remap incoming Arduino data channels (pX, pY, pA, pI) to any position display — no firmware change required
  • Config File Save / Load — export all settings (motor remapping, switch routing, nav commands, speed, step size, mode) to a .json file; load on any machine for instant restore
  • Bug Report / Debug Log Export — capture full session log with system info and submit to the backend or copy to clipboard for support
  • Updates & Changelog — this panel
  • Fixed stale version stamp (was v2.4.1 / 2025-12-06)
v2.4.1 2025-12-07
  • State Persistence — SAVE STATE / RESET STATE buttons for power-failure recovery
  • Comprehensive session logging system (cut time, test time, command & response history)
  • X / Y / P axis movement counters for debugging
  • Position panel displays speed multiplier, motor mode, and step size in real time
v2.4.0 2025-12-06
  • Fixed X direction button mappings — X LEFT (a) and X RIGHT (d) were reversed; corrected
  • Hold-to-move support for all direction buttons in continuous mode
  • Immediate STOP command sent on button release / mouse leave (safer motor control)
  • Touch screen support (touchstart / touchend) for mobile operation
  • Prevents overlapping step sequences with isAnyMotorStepping guard
v2.3.0 2025-12-06
  • Position Synchronization & Status panel — live X / Y / Angle / Index position display
  • Arduino position data parsing: pX: pY: pA: pI: serial protocol
  • Nextion touch-screen position data parsing: tX: tY: tA: tI:
  • Sync / mismatch detection between Arduino and touch-screen data
  • Machine state canvas visualization
v2.2.0 2025-12-06
  • Motor Control panel — speed slider (1–5), continuous / step mode toggle, step size slider (1–70)
  • Virtual joystick for smooth continuous X/Y/P movement (sends j<X>,<Y>,<Index>,<P>)
  • Index axis stepper control — dedicated single-step driver, one step per click
  • P-axis rotation controls (CW / CCW)
  • Speed and step size commands sent live to Arduino (s<n>, n<n>)
  • Webcam & Motion Diagnostics panel — live camera feed, motion detection, per-axis motion verification
v2.1.0 2025-12-05
  • ⚙️ Command Configuration panel — customisable Nextion menu navigation commands (ENTER, LEFT, RIGHT, UP, DOWN) saved to localStorage per machine
  • Quick navigation buttons for all Nextion menu items: Settings, Design, Preform, Cut, Polish and all Settings sub-items
  • Home button (h) and diagnostic button (x)
v2.0.0 — Dual Mode 2025-12
  • Browser Serial API mode — direct USB connection via Web Serial API (Chrome 89+, Edge 89+, Opera 75+); no server required
  • WebSocket Server mode — network bridge via Node.js server; works from any device on the same network
  • Serial monitor with colour-coded message types (data, command, info, success, warning, error, debug)
  • Emergency Stop — sends STOP (u) command 5× with 50 ms spacing for maximum safety
  • Connection diagnostics: port scan, USB VID/PID display, throughput monitoring, line counter
  • Settings (mode + server address) saved to localStorage
🐛 Report a Bug / Export Debug Logs

Collect the current session logs and submit them so the developer can diagnose issues. You can also copy the raw log text to paste directly into a support message.