luc-github / ESP3D-WEBUI

A Web UI for ESP8266 or ESP32 based boards connected to 3D printers / CNC
GNU General Public License v3.0
747 stars 305 forks source link

[BUG] Network names with space not saved #272

Closed ithinkido closed 1 year ago

ithinkido commented 1 year ago

Describe the bug Saving network names which include a space is not working when using webUI for grblHAL

To Reproduce

  1. Select network mode - Access Point / Station
  2. Select a network name which includes a space
  3. Save changes
  4. Reset board
  5. Go back to setting page and check if name was correctly saved

Expected behavior I think the names should be correctly saved. The name in this case is FRITZ!box 7530.

Screenshots

image

ESP3D Firmware

Target Firmware

Board used

Browser used

Additional context When exporting the json config file it seems as though the name is correctly listed

{
    "id": "74",
    "label": "WiFi Station (STA) SSID",
    "value": "FRITZ!Box 7530"
   },

I am not sure if it is an issue on ESP3D UI or grblHAL side, please feel free to redirect me if this is not ESP3D related

luc-github commented 1 year ago

please do [ESP400] in terminal and share result

ithinkido commented 1 year ago
[ESP400]
{
 "cmd": "400",
 "status": "ok",
 "data": [
  {
   "F": "General/General",
   "P": "10",
   "T": "M",
   "V": "511",
   "H": "Status report options",
   "O": [
    {
     "Position in machine coordinate": "0"
    },
    {
     "Buffer state": "1"
    },
    {
     "Line numbers": "2"
    },
    {
     "Feed & speed": "3"
    },
    {
     "Pin state": "4"
    },
    {
     "Work coordinate offset": "5"
    },
    {
     "Overrides": "6"
    },
    {
     "Probe coordinates": "7"
    },
    {
     "Buffer sync on WCO change": "8"
    },
    {
     "Parser state": "9"
    },
    {
     "Alarm substatus": "10"
    },
    {
     "Run substatus": "11"
    }
   ]
  },
  {
   "F": "General/General",
   "P": "11",
   "T": "F",
   "V": "0.010",
   "H": "Junction deviation",
   "U": "mm",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "General/General",
   "P": "12",
   "T": "F",
   "V": "0.002",
   "H": "Arc tolerance",
   "U": "mm",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "General/General",
   "P": "13#0",
   "T": "B",
   "V": "0",
   "H": "Report in inches",
   "O": [
    {
     "Enabled": "1"
    },
    {
     "Disabled": "0"
    }
   ]
  },
  {
   "F": "General/General",
   "P": "28",
   "T": "F",
   "V": "0.100",
   "H": "G73 Retract distance",
   "U": "mm",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "General/General",
   "P": "32",
   "T": "B",
   "V": "0",
   "H": "Mode of operation",
   "O": [
    {
     "Normal": "0"
    },
    {
     "Laser mode": "1"
    },
    {
     "Lathe mode": "2"
    }
   ]
  },
  {
   "F": "General/General",
   "P": "39#0",
   "T": "B",
   "V": "1",
   "H": "Enable legacy RT commands",
   "O": [
    {
     "Enabled": "1"
    },
    {
     "Disabled": "0"
    }
   ]
  },
  {
   "F": "General/General",
   "P": "62#0",
   "T": "B",
   "V": "0",
   "H": "Sleep enable",
   "O": [
    {
     "Enabled": "1"
    },
    {
     "Disabled": "0"
    }
   ]
  },
  {
   "F": "General/General",
   "P": "63",
   "T": "M",
   "V": "2",
   "H": "Feed hold actions",
   "O": [
    {
     "Disable laser during hold": "0"
    },
    {
     "Restore spindle and coolant state on resume": "1"
    }
   ]
  },
  {
   "F": "General/General",
   "P": "64#0",
   "T": "B",
   "V": "0",
   "H": "Force init alarm",
   "O": [
    {
     "Enabled": "1"
    },
    {
     "Disabled": "0"
    }
   ]
  },
  {
   "F": "General/General",
   "P": "384#0",
   "T": "B",
   "V": "0",
   "H": "Disable G92 persistence",
   "O": [
    {
     "Enabled": "1"
    },
    {
     "Disabled": "0"
    }
   ]
  },
  {
   "F": "General/General",
   "P": "396",
   "T": "I",
   "V": "30",
   "H": "WebUI timeout",
   "U": "minutes",
   "M": "0",
   "S": "999"
  },
  {
   "F": "General/General",
   "P": "397",
   "T": "I",
   "V": "0",
   "H": "WebUI auto report interval",
   "U": "milliseconds",
   "R": "1",
   "M": "0",
   "S": "9999"
  },
  {
   "F": "Control signals/Control signals",
   "P": "14",
   "T": "M",
   "V": "0",
   "H": "Invert control pins",
   "O": [
    {
     "Reset": "0"
    },
    {
     "Feed hold": "1"
    },
    {
     "Cycle start": "2"
    }
   ]
  },
  {
   "F": "Control signals/Control signals",
   "P": "17",
   "T": "M",
   "V": "0",
   "H": "Pullup disable control pins",
   "O": [
    {
     "Reset": "0"
    },
    {
     "Feed hold": "1"
    },
    {
     "Cycle start": "2"
    }
   ]
  },
  {
   "F": "Limits/Limits",
   "P": "5",
   "T": "M",
   "V": "3",
   "H": "Invert limit pins",
   "O": [
    {
     "X": "0"
    },
    {
     "Y": "1"
    },
    {
     "Z": "2"
    }
   ]
  },
  {
   "F": "Limits/Limits",
   "P": "18",
   "T": "M",
   "V": "0",
   "H": "Pullup disable limit pins",
   "O": [
    {
     "X": "0"
    },
    {
     "Y": "1"
    },
    {
     "Z": "2"
    }
   ]
  },
  {
   "F": "Limits/Limits",
   "P": "20#0",
   "T": "B",
   "V": "0",
   "H": "Soft limits enable",
   "O": [
    {
     "Enabled": "1"
    },
    {
     "Disabled": "0"
    }
   ]
  },
  {
   "F": "Limits/Limits",
   "P": "21",
   "T": "X",
   "V": "1",
   "H": "Hard limits enable",
   "O": [
    {
     "Enable": "0"
    },
    {
     "Strict mode": "1"
    }
   ]
  },
  {
   "F": "Coolant/Coolant",
   "P": "15",
   "T": "M",
   "V": "0",
   "H": "Invert coolant pins",
   "O": [
    {
     "Flood": "0"
    }
   ]
  },
  {
   "F": "Spindle/Spindle",
   "P": "9",
   "T": "X",
   "V": "1",
   "H": "PWM Spindle",
   "O": [
    {
     "Enable": "0"
    },
    {
     "RPM controls spindle enable signal": "1"
    }
   ]
  },
  {
   "F": "Spindle/Spindle",
   "P": "16",
   "T": "M",
   "V": "0",
   "H": "Invert spindle signals",
   "O": [
    {
     "Spindle enable": "0"
    },
    {
     "Spindle direction": "1"
    },
    {
     "PWM": "2"
    }
   ]
  },
  {
   "F": "Spindle/Spindle",
   "P": "30",
   "T": "F",
   "V": "1000.000",
   "H": "Maximum spindle speed",
   "U": "RPM",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Spindle/Spindle",
   "P": "31",
   "T": "F",
   "V": "0.000",
   "H": "Minimum spindle speed",
   "U": "RPM",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Spindle/Spindle",
   "P": "33",
   "T": "F",
   "V": "5000.0",
   "H": "Spindle PWM frequency",
   "U": "Hz",
   "E": "0",
   "M": "0",
   "S": "999999"
  },
  {
   "F": "Spindle/Spindle",
   "P": "34",
   "T": "F",
   "V": "0.0",
   "H": "Spindle PWM off value",
   "U": "percent",
   "E": "1",
   "M": "0",
   "S": "100"
  },
  {
   "F": "Spindle/Spindle",
   "P": "35",
   "T": "F",
   "V": "0.0",
   "H": "Spindle PWM min value",
   "U": "percent",
   "E": "1",
   "M": "0",
   "S": "100"
  },
  {
   "F": "Spindle/Spindle",
   "P": "36",
   "T": "F",
   "V": "100.0",
   "H": "Spindle PWM max value",
   "U": "percent",
   "E": "1",
   "M": "0",
   "S": "100"
  },
  {
   "F": "Tool change/Tool change",
   "P": "341",
   "T": "B",
   "V": "0",
   "H": "Tool change mode",
   "O": [
    {
     "Normal": "0"
    },
    {
     "Manual touch off": "1"
    },
    {
     "Manual touch off @ G59.3": "2"
    },
    {
     "Automatic touch off @ G59.3": "3"
    },
    {
     "Ignore M6": "4"
    }
   ]
  },
  {
   "F": "Tool change/Tool change",
   "P": "342",
   "T": "F",
   "V": "30.0",
   "H": "Tool change probing distance",
   "U": "mm",
   "E": "1",
   "M": "0",
   "S": "999999.9"
  },
  {
   "F": "Tool change/Tool change",
   "P": "343",
   "T": "F",
   "V": "25.0",
   "H": "Tool change locate feed rate",
   "U": "mm/min",
   "E": "1",
   "M": "0",
   "S": "999999.9"
  },
  {
   "F": "Tool change/Tool change",
   "P": "344",
   "T": "F",
   "V": "200.0",
   "H": "Tool change search seek rate",
   "U": "mm/min",
   "E": "1",
   "M": "0",
   "S": "999999.9"
  },
  {
   "F": "Tool change/Tool change",
   "P": "345",
   "T": "F",
   "V": "100.0",
   "H": "Tool change probe pull-off rate",
   "U": "mm/min",
   "E": "1",
   "M": "0",
   "S": "999999.9"
  },
  {
   "F": "Homing/Homing",
   "P": "22",
   "T": "X",
   "V": "9",
   "H": "Homing cycle",
   "O": [
    {
     "Enable": "0"
    },
    {
     "Enable single axis commands": "1"
    },
    {
     "Homing on startup required": "2"
    },
    {
     "Set machine origin to 0": "3"
    },
    {
     "Two switches shares one input pin": "4"
    },
    {
     "Allow manual": "5"
    },
    {
     "Override locks": "6"
    },
    {
     "Keep homed status on reset": "7"
    }
   ]
  },
  {
   "F": "Homing/Homing",
   "P": "23",
   "T": "M",
   "V": "0",
   "H": "Homing direction invert",
   "O": [
    {
     "X": "0"
    },
    {
     "Y": "1"
    },
    {
     "Z": "2"
    }
   ]
  },
  {
   "F": "Homing/Homing",
   "P": "24",
   "T": "F",
   "V": "1000.0",
   "H": "Homing locate feed rate",
   "U": "mm/min",
   "E": "1",
   "M": "0",
   "S": "999999.9"
  },
  {
   "F": "Homing/Homing",
   "P": "25",
   "T": "F",
   "V": "5000.0",
   "H": "Homing search seek rate",
   "U": "mm/min",
   "E": "1",
   "M": "0",
   "S": "999999.9"
  },
  {
   "F": "Homing/Homing",
   "P": "26",
   "T": "I",
   "V": "250",
   "H": "Homing switch debounce delay",
   "U": "milliseconds",
   "M": "0",
   "S": "999"
  },
  {
   "F": "Homing/Homing",
   "P": "27",
   "T": "F",
   "V": "2.000",
   "H": "Homing switch pull-off distance",
   "U": "mm",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Homing/Homing",
   "P": "43",
   "T": "I",
   "V": "1",
   "H": "Homing passes",
   "M": "1",
   "S": "128"
  },
  {
   "F": "Homing/Homing",
   "P": "44",
   "T": "M",
   "V": "3",
   "H": "Axes homing, first pass",
   "O": [
    {
     "X": "0"
    },
    {
     "Y": "1"
    },
    {
     "Z": "2"
    }
   ]
  },
  {
   "F": "Homing/Homing",
   "P": "45",
   "T": "M",
   "V": "0",
   "H": "Axes homing, second pass",
   "O": [
    {
     "X": "0"
    },
    {
     "Y": "1"
    },
    {
     "Z": "2"
    }
   ]
  },
  {
   "F": "Homing/Homing",
   "P": "46",
   "T": "M",
   "V": "0",
   "H": "Axes homing, third pass",
   "O": [
    {
     "X": "0"
    },
    {
     "Y": "1"
    },
    {
     "Z": "2"
    }
   ]
  },
  {
   "F": "Probing/Probing",
   "P": "6#0",
   "T": "B",
   "V": "0",
   "H": "Invert probe pin",
   "O": [
    {
     "Enabled": "1"
    },
    {
     "Disabled": "0"
    }
   ]
  },
  {
   "F": "Probing/Probing",
   "P": "19#0",
   "T": "B",
   "V": "0",
   "H": "Pullup disable probe pin",
   "O": [
    {
     "Enabled": "1"
    },
    {
     "Disabled": "0"
    }
   ]
  },
  {
   "F": "Probing/Probing",
   "P": "65#0",
   "T": "B",
   "V": "0",
   "H": "Probing feed override",
   "O": [
    {
     "Enabled": "1"
    },
    {
     "Disabled": "0"
    }
   ]
  },
  {
   "F": "Jogging/Jogging",
   "P": "40#0",
   "T": "B",
   "V": "0",
   "H": "Limit jog commands",
   "O": [
    {
     "Enabled": "1"
    },
    {
     "Disabled": "0"
    }
   ]
  },
  {
   "F": "Networking/Networking",
   "P": "70",
   "T": "M",
   "V": "7",
   "H": "Network Services",
   "R": "1",
   "O": [
    {
     "Telnet": "0"
    },
    {
     "Websocket": "1"
    },
    {
     "HTTP": "2"
    }
   ]
  },
  {
   "F": "Networking/Networking",
   "P": "300",
   "T": "S",
   "V": "Grbl",
   "H": "Hostname",
   "R": "1",
   "S": "64"
  },
  {
   "F": "Networking/Networking",
   "P": "302",
   "T": "A",
   "V": "192.168.5.1",
   "H": "IP Address",
   "R": "1"
  },
  {
   "F": "Networking/Networking",
   "P": "303",
   "T": "A",
   "V": "192.168.5.1",
   "H": "Gateway",
   "R": "1"
  },
  {
   "F": "Networking/Networking",
   "P": "304",
   "T": "A",
   "V": "255.255.255.0",
   "H": "Netmask",
   "R": "1"
  },
  {
   "F": "Networking/Networking",
   "P": "305",
   "T": "I",
   "V": "23",
   "H": "Telnet port",
   "R": "1",
   "M": "1",
   "S": "65535"
  },
  {
   "F": "Networking/Networking",
   "P": "306",
   "T": "I",
   "V": "80",
   "H": "HTTP port",
   "R": "1",
   "M": "1",
   "S": "65535"
  },
  {
   "F": "Networking/Networking",
   "P": "307",
   "T": "I",
   "V": "81",
   "H": "Websocket port",
   "R": "1",
   "M": "1",
   "S": "65535"
  },
  {
   "F": "Networking/Networking",
   "P": "310",
   "T": "S",
   "V": "GrblAP",
   "H": "Hostname (AP)",
   "R": "1",
   "S": "64"
  },
  {
   "F": "Networking/Networking",
   "P": "312",
   "T": "A",
   "V": "192.168.5.1",
   "H": "IP Address (AP)",
   "R": "1"
  },
  {
   "F": "Networking/Networking",
   "P": "313",
   "T": "A",
   "V": "192.168.5.1",
   "H": "Gateway (AP)",
   "R": "1"
  },
  {
   "F": "Networking/Networking",
   "P": "314",
   "T": "A",
   "V": "255.255.255.0",
   "H": "Netmask (AP)",
   "R": "1"
  },
  {
   "F": "WiFi/WiFi",
   "P": "73",
   "T": "B",
   "V": "3",
   "H": "WiFi Mode",
   "O": [
    {
     "Off": "0"
    },
    {
     "Station": "1"
    },
    {
     "Access Point": "2"
    },
    {
     "Access Point/Station": "3"
    }
   ]
  },
  {
   "F": "WiFi/WiFi",
   "P": "74",
   "T": "S",
   "V": "FRITZ!Box\\",
   "H": "WiFi Station (STA) SSID",
   "S": "64"
  },
  {
   "F": "WiFi/WiFi",
   "P": "75",
   "T": "S",
   "V": "********",
   "H": "WiFi Station (STA) Password",
   "S": "32"
  },
  {
   "F": "WiFi/WiFi",
   "P": "76",
   "T": "S",
   "V": "GRBL",
   "H": "WiFi Access Point (AP) SSID",
   "S": "64"
  },
  {
   "F": "WiFi/WiFi",
   "P": "77",
   "T": "S",
   "V": "********",
   "H": "WiFi Access Point (AP) Password",
   "S": "32"
  },
  {
   "F": "Stepper/Stepper",
   "P": "0",
   "T": "F",
   "V": "10.0",
   "H": "Step pulse time",
   "U": "microseconds",
   "E": "1",
   "M": "2.0",
   "S": "99.9"
  },
  {
   "F": "Stepper/Stepper",
   "P": "1",
   "T": "I",
   "V": "25",
   "H": "Step idle delay",
   "U": "milliseconds",
   "M": "0",
   "S": "65535"
  },
  {
   "F": "Stepper/Stepper",
   "P": "2",
   "T": "M",
   "V": "0",
   "H": "Step pulse invert",
   "O": [
    {
     "X": "0"
    },
    {
     "Y": "1"
    },
    {
     "Z": "2"
    }
   ]
  },
  {
   "F": "Stepper/Stepper",
   "P": "3",
   "T": "M",
   "V": "0",
   "H": "Step direction invert",
   "O": [
    {
     "X": "0"
    },
    {
     "Y": "1"
    },
    {
     "Z": "2"
    }
   ]
  },
  {
   "F": "Stepper/Stepper",
   "P": "4",
   "T": "M",
   "V": "7",
   "H": "Invert stepper enable pin(s)",
   "O": [
    {
     "X": "0"
    },
    {
     "Y": "1"
    },
    {
     "Z": "2"
    }
   ]
  },
  {
   "F": "Stepper/Stepper",
   "P": "29",
   "T": "F",
   "V": "0.0",
   "H": "Pulse delay",
   "U": "microseconds",
   "E": "1",
   "M": "0",
   "S": "10"
  },
  {
   "F": "Stepper/Stepper",
   "P": "37",
   "T": "M",
   "V": "0",
   "H": "Steppers deenergize",
   "O": [
    {
     "X": "0"
    },
    {
     "Y": "1"
    },
    {
     "Z": "2"
    }
   ]
  },
  {
   "F": "X-axis/X-axis",
   "P": "100",
   "T": "F",
   "V": "40.000",
   "H": "axis travel resolution",
   "U": "step/mm",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Y-axis/Y-axis",
   "P": "100",
   "T": "F",
   "V": "40.000",
   "H": "axis travel resolution",
   "U": "step/mm",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Z-axis/Z-axis",
   "P": "100",
   "T": "F",
   "V": "250.000",
   "H": "axis travel resolution",
   "U": "step/mm",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "X-axis/X-axis",
   "P": "110",
   "T": "F",
   "V": "10000.000",
   "H": "axis maximum rate",
   "U": "mm/min",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Y-axis/Y-axis",
   "P": "110",
   "T": "F",
   "V": "10000.000",
   "H": "axis maximum rate",
   "U": "mm/min",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Z-axis/Z-axis",
   "P": "110",
   "T": "F",
   "V": "500.000",
   "H": "axis maximum rate",
   "U": "mm/min",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "X-axis/X-axis",
   "P": "120",
   "T": "F",
   "V": "1000.000",
   "H": "axis acceleration",
   "U": "mm/sec^2",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Y-axis/Y-axis",
   "P": "120",
   "T": "F",
   "V": "1000.000",
   "H": "axis acceleration",
   "U": "mm/sec^2",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Z-axis/Z-axis",
   "P": "120",
   "T": "F",
   "V": "10.000",
   "H": "axis acceleration",
   "U": "mm/sec^2",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "X-axis/X-axis",
   "P": "130",
   "T": "F",
   "V": "430.000",
   "H": "axis maximum travel",
   "U": "mm",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Y-axis/Y-axis",
   "P": "130",
   "T": "F",
   "V": "290.000",
   "H": "axis maximum travel",
   "U": "mm",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  },
  {
   "F": "Z-axis/Z-axis",
   "P": "130",
   "T": "F",
   "V": "200.000",
   "H": "axis maximum travel",
   "U": "mm",
   "E": "3",
   "M": "0",
   "S": "999999.999"
  }
 ]
}
luc-github commented 1 year ago

as you see grblHAL send

{
   "F": "WiFi/WiFi",
   "P": "74",
   "T": "S",
   "V": "FRITZ!Box\\",
   "H": "WiFi Station (STA) SSID",
   "S": "64"
  },

so looks backend issue

ithinkido commented 1 year ago

Ok, thanks , I will post this on grblHAL .

github-actions[bot] commented 1 year ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.