Edge Features

image_print

gSender Edge is a test arena that we like to use when working on new and exciting gSender features. The reason why it’s a separate app is because if we incorporated these new features into the regular gSender app it could risk bugs and reduced reliability for people wanting to run their machines day-to-day. One doesn’t obsolete the other.

What’s great is that Edge can be downloaded alongside your regular version of gSender without any overlap. By splitting off new features into Edge, advanced users interested in those new features can ‘opt-in’ to downloading a potentially more unstable app in exchange for gaining more functionality out of their CNCs and ideally providing us with feedback on their function so that we can eventually release those same features to Main gSender.

The process of downloading Edge is the same as the Main version of gSender, where you can find the download on the main gSender page: https://sienci.com/gsender/

Unique Differences

If you used to see a feature here but don’t see it any longer, it’s likely been added into Main! Look for it in the main gSender documentation.

As of 1.2.2, the current notable features / improvements to Edge are:

  • Headless / Remote support
    • Connect to your CNC from a myriad of other internet-connected devices!
    • New UI for configuring remote mode so less technical setup is required
  • Added new Wizard UI for tool-changing
  • Better support for Laser Diode add-ons
    • Low-power laser-on outlining
    • Laser-specific visualization: there’s a different style when laser mode is on and that colour can be customized
  • Updates to gamepad controller support
    • List of officially tested controllers
    • Pre-loaded presets for officially supported controllers
    • Improved UI for creating controller profiles
    • Available PDF printout of shortcuts to hang up near your machine
  • New Diagnostic tool
    • Inside the Calibration widget. See at-a-glance info on your pins status, important firmware settings, and generate a diagnostic file that can be shared to help diagnose problems you might be experiencing
  • New Visualization settings
    • SVG Visualizer: middle ground between 3D visualization and no visualizer. Enable it inside the Visualizer options and enable Lightweight mode.
    • Custom visualizer ‘light’ and ‘dark’ colour themes that you can style yourself if you prefer your colours to look a specific way
  • Added job recovery functionality in instances where your machine disconnects from gSender
  • Pop-out console widow
    • Activated using pop-out button
    • Console now includes colour coding of certain commands like alarms and errors
  • Assorted other settings
    • New safety tab for tracking alarms and errors and accessing safety settings
    • Soft limit warning on file load if machine has limit switches
    • New stats tab for tracking jobs run on your CNC
    • Customizable probe fail distance in Z
    • Custom decimal places
  • Other assorted features
    • Slider overrides for easier adjustment on the fly
    • Ability to toggle between job overrides and file attributes before starting a job to finetune feed and speed overrides before starting a job
    • Test run animating cutting tool
    • New machine profiles
    • Better safety door support

Remote Control / Headless

If you’ve ever wanted to run your CNC without being stuck right next to it, this is the feature you’re looking for. The remote control or ‘headless’ feature is exactly how it sounds, it gives the ability for a remote computer to connect over a shared internet connection to a permanently installed, normally lower-end computer, that runs the CNC. This ‘remote computer’ can be any device that can connect to the internet and run a web browser, meanwhile the ‘inline computer’ plugs into your CNC with a USB cable and will receive commands over the internet from the remote computer.
This feature is handy if you’d like to:

  • Load in a file from your design computer outside your shop then run it on your computer inside the shop
  • Use a tablet as the primary means of controlling your CNC rather than a mouse and keyboard
  • Use a phone for occasional use when jogging or running functions
  • Leverage a mini PC or Raspberry Pi as the tethered computer for cheap, fanless, and reliable operation without taxing them with a display, keyboard, and mouse

Before diving in, here are some quirks and warnings that are important to keep in mind if you’d like to move forward with setting up this feature:

  • Both systems need to be on the same internet connection to work, where the device used to run remote operations needs to be able to run a web browser
  • You’ll need to be an Administrator of your computer to make the changes needed to set up this feature so ensure you have that power
  • This feature will always be inherently less reliable than a hard-wired connection because of its reliance on your shop’s internet connection for communication. Keep this in mind if you intend on using remote control for more important projects or with expensive tools or materials
  • Remote control is still early in its development so expect to experience some bugs if you’d like to set this up for yourself. The setup process is a little bit more involved on your computer so we don’t advise using this feature if you’re not confident with troubleshooting your own setup
  • This feature is NOT intended to enable use of your CNC while AWAY FROM YOUR WORKSHOP. A CNC should always be run while you or another knowledgeable operator is in the vicinity to ensure safe machine operation and be able to react if intervention is required. CNCs can cause fires from electronics, material friction, and can have other safety hazards if not properly monitored

Windows Installation

Most of the steps needed to get remote operation working in gSender will happen on the inline computer.

  1. To begin, ensure you close the gSender app if it’s open and ensure that the gSender version you have downloaded supports the ‘remote control / headless’ feature.
  2. You’ll want to find the shortcut that you normally use to open gSender on your computer. In Windows, if you open the start menu you should be able to see a gSender tile, or scroll along the alphabetical list of programs to find the listing for gSender. Once located, right-click the icon and go to More → Open file location.
  3. Once the folder pops up, you should see the gSender shortcut which is indicated by the gSender picture with an arrow overtop (shown below). If you right-click it, you’ll want to click to access the properties.
  4. In the Properties dialogue box, you’ll need to click the tab called ‘Shortcut’ and look for a space to enter text called ‘Target:’ (shown below). Add onto the end of the existing text “ --remote” and don’t forget the space before the two dashes otherwise you’ll get an error. Click the ‘Apply’ button at the bottom once you’re done.
  5. Once you hit ‘Apply’, you may have to hit ‘Continue’ on the popup to make Administrator changes to the shortcut. This warning message is normal.
  6. Let’s open gSender and confirm making the additions to the shortcut properties worked. On the inline computer, open gSender. It’s important to know that you must open gSender using administrator mode for remote use. Right-click on the gSender icon, hover over “More”, then left-click “Run as administrator”. gSender should open.
  7. When gSender opens you should see a new antenna icon and a series of numbers as shown which will indicate that the setup has been successful, you’re ready to operate your CNC remotely. If you don’t see this, check you followed the setup steps correctly or reference the troubleshooting section below.
  8. If you’re a more advanced user, know that this default IP address can be overridden using other edits to gSenders shortcut target if you have a specific network configuration you need to work around. We don’t recommend doing this if you don’t know what you’re doing. The “ --remote” command is meant to help with default port setup on IPv4 but appending “ --port ####” or “ -p ####” will edit the default of 8000 to whatever you specify and “ --host ###.###.#.##” or “ -h ###.###.#.##” will change the host. Examples are “ --port 8081” or “ --host 192.168.0.30”. Common port values are 3000, 8000, and 8080 and generally don’t go below 1024 since those are considered privileged so don’t we don’t recommend overriding below that. Changing IP address can help if you’re running a VPN or need a different internal IP to external IP mapping.

Pi Installation

Most of the steps needed to get remote operation working in gSender will happen on the inline computer and are in a similar vein to the Windows installation – optionally check out the last two steps there for more clarity and advanced functions if you wish.

  1. To begin, ensure you close the gSender app if it’s open and ensure that the gSender version you have downloaded supports the ‘remote control / headless’ feature.
  2. Navigate to the directory containing your .AppImage. This is likely either ~/Downloads or ~/Desktop
  3. Pass “--remote” as a flag to the app, for example “./gSender\ Edge-1.2.1-EDGE-armv7l.AppImage -- --remote”
    • Tip: You can partially type the name of the executable and press tab to auto-fill the rest. For example, typing “gSender” and pressing tab should autocomplete the remainder of the file name. Pressing twice will give all available options if there are multiple files matching that name in that directory
  4. When you open gSender back up, it should now be obvious by the new antenna icon and printed IP address that remote mode has been set up successfully
  5. For further tweaking, all the other documented flags work the same. For example to change the port to 8080 instead of the default: “./gSender\ Edge-1.2.1-EDGE-armv7l.AppImage -- --remote --port 8080”
  6. If you find that you can’t connect with outside devices or just want some extra safety you might want to try opening the Universal FireWall (UFW) on a given port to allow external access. This can be started with “sudo ufw enable” (if UFW is not found then install it using “sudo apt-get install ufw” and your root password) then opening the desired port, for example “sudo ufw allow 8080” opens port 8080 for external access. If you want to see what ports are already open, you can use “ufw status verbose”.

Using gSender Remotely

With changes made to the gSender shortcut of the inline computer, regular use is quite straightforward:

  1. Connect the inline machine to your LongMill as you would normally using the USB cable and turn on the power to your CNC.
  2. On the inline computer, run gSender in Administrator mode
  3. Connect to your CNC as usual, then look for the numbers next to the antenna and write them down including all the symbols and punctuation; these will be used to connect to your CNC on the remote computer / device.
  4. On the remote computer, open a web browser like Chrome or Edge and type those same numbers you wrote down into the top address bar. In this example the numbers are 192.168.2.203:8000 but yours may be different. Press enter, and hopefully the familiar gSender interface will now appear in your browser window. If not, ensure that your remote computer is on the same network as your inline computer.
  5. Once connected, you should now be able to control your CNC remotely with most of the same features and functions you’d normally expect:
    • You’ll be able to use both the remote and inline computers simultaneously to control your CNC like jogging, opening and closing files, probing, macros, and more
    • You’ll also see that both their screens look exactly the same so you can watch the visualizer move around or check on the machine state
    • When you click to ‘load a file’ you’ll see that you’ll only be able to load files from the computer you’re currently on, don’t expect to gain access to the files stored on the opposite computer. However once the file is loaded into gSender, you’ll be able to run it from either computer
    • There can be multiple remote computers all connected to the same inline computer at the same time to control your CNC from multiple devices. There can also be multiple inline computers controlled from the same remote computer, giving you multi-CNC control from the same device
    • gSender settings like ‘safe height’, ‘start/stop g-code’, ‘tool changing’, and any other gSender specific settings won’t carry over to the remote computer. If you want to make sure files are run the same way every time you’ll need to transfer your gSender settings over by following the ‘Transfer gSender Settings’ instructions below.

Troubleshooting

If you ran into issues during remote control setup, here are some other checks you can make:

  • Make sure both your computers / devices are on the same internet connection
  • Make sure the inline computer has gSender open and is connected to your CNC
    • If while using gSender on the remote computer you get this popup for “Server Connection Lost”, this indicates that either gSender on the inline computer was closed or the shared internet is disconnecting. You should be able to fix this by restarting gSender on the inline machine, then clicking “Attempt Reconnect” on the remote machine.
  • Make sure the remote icon and IP address are showing on the inline computer
  • Make sure the IP numbers match on the inline machine and the remote machine
  • If all this is true and the connection still isn’t going through, your inline computer might be blocking gSender’s ability to send information to the internet because of a firewall. In that case, you’ll have to follow these steps to modify the firewall:
    1. Click Start and open your computer’s Control Panel
    2. Open the ‘System and Security’ settings
    3. In System and Security settings, you’ll now open the ‘Windows Defender Firewall’ and go to its ‘Advanced settings’
    4. In the column on the left, click on ‘Inbound Rules’ and then find and double-click on ‘gSender’. There might be three options of gSender to click on, you’ll want to click on the version that has the word “All” under the ‘Profile’ column.
    5. In the pop-up box, click on the tab labeled ‘Protocols and Ports’. Next to ‘Local port:’ you’ll want to use the drop-down menu to select “Specific Ports” and then type in the default port of “8000”. If you have added a custom port to gSender’s Shortcut properties, you’ll need to type in that number instead. Once you hit ‘Apply’, you can check to see if this resolved your problem and if so close out these windows and go have fun!

Laser Diode Support

Laser visualization will now occur automatically when ‘Laser Mode’ is toggled on in Spindle/Laser widget. This creates a new type of image based on the spindle speed/laser intensity to more accurately portray laser raster operations.

Laser outlining will also occur in ‘Laser Mode’ if you’ve turned it on in your ‘Spindle/Laser’ settings. This should turn your laser on at its lowest setting when you click to use the ‘Outline’ function so you can better see where your project is going to be located on the material.