gSender is a feature-packed CNC interface software designed to be clean and easy to learn while retaining a depth of capabilities for advanced users. Its development was begun out of a passion for hobby CNC machines: an interface rebuilt to suit the needs of the at-home CNC user.
Accepts standard, grbl-compliant g-code and has been verified to work with many of the common CAM programs
Began development to bring new concepts to the existing landscape of grbl senders in an effort to advance functionality and ease-of-use
Javascript-based CNC interface software which leverages Electron for cross platform use
Is a branch off of the popular CNCjs CNC controller interface
Some things that we’re looking to accomplish with this sender:
Reliability of operation
Accommodates all ranges of computing systems (low-end PC to RasPi | ‘light mode’)
Clean and easy to use no matter your previous CNC experience
Makes available all normally expected functions
Addresses common error throwing conditions automatically
Built-in gadgets for surface probing, stock flattening, firmware editing, and g-code editing with syntax highlighting, command navigation, and more
3D cutting visualization
gSender is available for the following systems and does not yet support headless Pi operation
Windows (x64) | Mac (Universal) | Linux (Intel) | Linux (ARM) | Pi (64 bit) |
---|---|---|---|---|
Available EXE | Available DMG | Available DEB | Available DEB | Available DEB |
Check out the latest releases here.
Grbl and grblHAL controllers supported
Smart machine connection
3-axis digital readout (DRO) with manual value entry
All-directional jogging with XY diagonals, jog presets, and incremental/continuous single-button handling
Zero-setting and gotos (independent and combined)
Probing in any direction plus safe continuity detection ensures no broken cutting toolsk
Full imperial/metric compatibility
Responsive screen design and workspace customizations including visualizer light and dark theme
3D toolpath visualization (no machine connection required)
File insight on load (feed range, spindle range, tools used, estimated cutting time, and overall, max, and min dimensions)
Feed override and active job status indicators
Fully exposed keyboard shortcuts for external keyboard/keypad control
Joystick support built-in for a variety of controllers
Safe height movements - accommodates machines with or without endstops
Homing cycle and quick-movement locations available for machines with homing hardware
Full spindle/laser support via manual control widgets, active alerting, and live overrides
Full mist/flood coolant support via manual control widgets and active alerting
Macros buttons (rearrangeable) with enhanced macro variables and individually assignable keyboard shortcuts
Lightweight mode reduces processing intensity on less powerful hardware or when running larger files
Easy workspace swapping for more advanced jigging or alignment work
Optional automatic handling for common error throwing g-code
Firmware tool for easier grbl EEPROM changes, loading defaults, and grbl flashing
Surfacing tool auto-generates surfacing g-code based on machine cutting area and other preferences, ready to execute
Calibration tool for axis alignment - a step by step process to make sure your CNC is square
Movement tuning tool for calibrating motor axis movements
Tool change functionality - pause, ignore, or run code blocks on M6 commands
Start-from-line functionality to resume jobs part-way through in case of failure of abort
Outline functionality indicates the rough bounds of the job before cutting
Customizable g-code injection at job start & end
Tooltips for data entry points
Alarm warning explanations to better contextualize CNC errors
Sleep management to keep PC awake during g-code sending
Pre-built machine profiles, including:
LongMill
Shapeoko
X-carve
OpenBuilds CNCs
3018 CNC & PROVer
BobsCNC CNCs
CNC4Newbie CNCs
Mill Right CNCs
Ooznest WorkBee
Nomad
Carvey
Mill One, and more...
All up-to-date documentation on gSender can be found here: https://sienci.com/gsender-documentation/
If you encounter issues or would like to recommend improvements for gSender, there's a link for feedback submission on the documentation page. We also have a place for discussion on our forum: https://forum.sienci.com/c/gsender/
If you'd like to test gSender's capabilities, there are several gcode files in the examples directory that can be downloaded and run locally.
gSender is free software, provided as-is and available under the GNU GPLv3 license.
gSender is also designed in a way that it can be run locally on your computer browser or otherwise compiled for use on other systems which aren't listed in the downloads. There will soon be documentation on how you can set this up yourself listed below once there's been a bit more testing completed.
Jog no longer sends double jog commands on touch devices
$G output emitted to UI when connected using grblHAL and manually sent
Altmill profile updated $103 A steps to account for compiled microstepping
SLB profiles updated with new values
Updated defaults on Mk2, Mk1, and MillOne profiles
AutoZero touch routine updated when running specific diameter bits to be more accurate, and retract distance on Z slightly increased for non-tip routines.
Rotary toggle no longer updates values when cancelled on grblHAL.
Custom theme visualizer background now saving correctly.
Altmill profile now at top of profiles with other Sienci Machines
Fix for time remaining converting timestamps incorrectly
Firmware groups now always emitted to UI on connection
Reduced situations where error 1 should appear on connection or homing
Alterations to Altmill default profile for Z acceleration
Enabling rotary mode for grblHAL now disables homing, and disabling rotary mode restores your previous homing value
Updated Longmill HAL A axis travel resolution for compiled microstepping value
Main window should no longer be focused on load file dialog
Added Altmill profiles
Start from line now also accounts for A axis if file contains those movements
Fixed situation where progress bar could be greater than 100%
Some time estimation alterations specifically when pausing jobs
Fixed issue where console copy prompt stated limit other than 50
Spindle delay on start is now a configurable value in ms
Changes to ethernet behaviour to allow reconnection in more cases the board closes the connection early
Maintenance tasks that are due now prompt the user to take care of them on application start
Changed max value for spindle RPM in rotary surfacing tool
Fix for rotary tab gaining focus and preventing keybinds from working
Changes to console scrollbar size and sensitivity
Setting A-axis zero now updates visualizer rotation correctly
Homing enabled in diagnostics now correct for SLB
A-axis DRO with $13 enabled now no longer converts incorrectly
Relative Go To now correctly uses input values for all 3 axes
Alarm 14 and 17 now reset and unlock instead of just unlock using UI buttons
Firmware tool inputs now disabled in Alarm state
Added preference for end of job modal to not appear
Fixed crash on toggling lightweight mode
End of probe code now correctly restore G90/G91 to previous state
Rapid position buttons work as expected with A-axis invert enabled
Updated defaults for SLB homing speeds
Added setting highlight and restore individual defaults to HAL firmware tool
Fixed issue where SLB flashing could fail silently if connected before flashing
Tweaks to finish time estimation
Firmware flavour for SLB now included in diagnostic file
Prevented soft reset on exiting check mode on SLB from getting the firmware not leaving check mode
Alterations to behaviour of planning line in visualizer
Go to button default values are now current position if absolute movement and 0 if relative movement
Fixed issue where error would prevent the file from resuming in some situations
GRBL controller now will always send $$ command eventually even if no startup message received`
Values properly convert in surfacing tool when swapping between metric and imperial preferred units
Fixed default UI value precision when swapping between metric and imperial preferred units
Handle error silently when checking for updates but no internet connection is available
Added default profiles for all machines when connected using grblHAL and using the 'Restore Defaults' functionality
No longer emit error 79 when connecting with e-stop enabled on SLB
Fixed issue with soft limit Z jogging when trying to jog from machine limits
Fixed status query mask when sending 0x87 complete status report vs ? partial status report to prevent alarm states from being slow to clear on UI
Fix for jog shortcuts not sending short movement when quick pressed.
GRBL firmware tool correctly updates values when list shortened with search term
More rounding in tool changing values.
Various updates to diagnostic PDF to include more at-a-glance information.
HAL firmware categories loaded more consistently on connection
HAL errors/alarms list populates more consistently on connection
Renamed some firmware categories for clearer organization
Better handling of cycle start, pause, and halt macro button functionalities
Fixed choppiness in visualization in 4-axis mode.
A-axis continuous jogging works as expected with soft limits enabled in 4-axis mode
Feeder no longer pauses when setting EEPROM macro code block with a M0/M1 included.
Rotary mode status correctly set on connection.
Random errors no longer appear on connection
Error log cleared on job start to prevent errors from not sending a job aren't included in the job error report.
Adjust HAL jogging values
Added ability to flash SLB already in DFU mode
Flashing UX improvements for HAL
Firmware selection hidden by default to avoid misclicks, and selected firmware reset to GRBL for all users.
Removed situations where no firmware option was selected on initial update of gSender
Fixed tabbed widget overlapping on some screen resolutions
Fixed issue with toolpath Z dimensions calculating incorrectly
Probe XYZ now goes to XY zero on completion of routine similar to prior behaviour
Errors from feeder are also now emitted to UI
Rotary axis toggle and other rotary tools now disabled in alarm state
Fixed situations where pausing and unpausing repeatedly could overflow firmware buffer
Fixed jog values reconverting and resetting on UI
Prevented warning appearing in movement calibration tool erroneously
Added A-axis limit pin indicator to diagnostics panel
Some tweaks to diagnostic report layout
Fixes for AutoZero probing routines with $13 enabled
Better error reporting on UI in general for macro and console errors
Renamed Mac build from Intel to Universal for clarification
Fixed some problematic shortcut behaviours on gamepad
Fixed issue with final Z on automatic tool change being off by the retract distance
Visualizer no longer displays miscalculated toolpath when loading the same file twice in a row
Fixed continuous jogging with soft limits enabled on some EEPROM configurations on HAL
HAL spindle selector now uses on-board EEPROM values for SLB_LASER option
HAL flashing should be usable on Electron as of latest version and board should be connectable without power cycling.
Repeated errors in HAL should be reported to the user less often
Spindle selector now uses reported current spindle
Fixed issue where spindle selector could get duplicate entries on ID change
Fixed toolchange program feedrate variable on HAL
Setting import in HAL firmware tool now correctly updates radio button options
Fix for probe migration values not running
Fix for jog value migration not running
Spindles on HAL no longer duplicate when running the spindle command multiple times
Connection widget should no longer zero out selected controller in some situations
Toolchanger should no longer error out in situations when the user has connected then disconnected
Added ability to assign macros to gamepad buttons
Controller type is now annotated in the Errors and Alarms report and diagnostic file
Go To function on UI now accounts for preferred units
Added spindle selector to Laser/Spindle tab when using grblHAL firmware
Unlock button now only shows 100% of the time when using grblHAL controller
Fixed machine profiles missing in some situations
Remote mode UI jog controls are once again properly contained within their widget container
Fix for remote mode settings crashing on Firefox
Fixed toggling laser offsets with inches enabled
Various improvements to time estimation
"Use Last Port" button in firmware tool should now properly connect when the last connection was over Ethernet
Alterations to outline behaviour - should move in a consistent direction and more accurately outline the toolpath
Fixed tool change offsets being concatenated as strings instead of added
Surfacing tool better handles extreme values by warning the user instead of exceeding the call stack
Various rotary fixes
Fix for pass-through toolchanging in macros
Fix for spindle delay being added when the line already had a delay from the post-processor
Start-From-Line should now better handle starting G2/G3 commands and clear errors on grblHAL controller
Fix for toolchange wizard not resuming correctly on grblHAL controller
Verify job should behave more consistently like grbl controller on grblHAL firmware
Fix for black screen on application startup in some situations
Fix for jog buttons on UI not registering click events correctly on some operating systems
Strip comments sent to controller to prevent buffer overflow and better support Shapeoko
Fix issue with firmware tool not updating values correctly if settings limited by search bar
Handle missing file name in recent files
Updated EEPROM values for travel on multiple Sienci profiles
Fixed issue with surfacing tool crashing in some situations
Fixed several bugs with gamepad support
Added Rotary Mode
gSender is now able to run 2+1 axis files on grbl and 4 axis files on grblHAL
Visualizer updated to support 4 axis rotations
A-axis DRO and jogging
Rotary probing
Added grblHAL controller support
Connect to and run jobs as normal on any grblHAL device
Connect over ethernet where hardware is supported
New grblHAL specific firmware tool that is dynamically generated based on reported settings
New UI elements where appropriate to support new functionality such as single axis homing
Gamepad improvements
Restructured logic and mapping of buttons to actions
Add secondary functionality to buttons
Added joystick MPG mode
Added lockout button to deactivate gamepad when needed
Improved job time estimation
Significantly improved initial time estimation algorithm based on machine acceleration and max speeds
Mid-job estimation uses initial estimate per line for more accurate remaining duration
Multi-corner probing - touch off any corner using both standard and auto-zero touchplates
Added Go To UI button to quickly go to an absolute or relative workspace coordinate
Clearer distinction on planned lines vs cut lines - planned lines show up as a (customizable) yellow instead of the default cut gray
Remote mode improvements
Added QR code for easier navigation to remote address on phone
Added workflow controls and unit selection to remote mode UI
Added preference to prompt on Zero to prevent accidentally resetting zero on any axis
Code block toolchange again supported
Firmware active modals now displayed in diagnostic tab
PRB values available to use in macros
Files are now parsed once per run time
Fix for DRO precision in some situations
Improved job stats area - now tracks jobs per com port, more information about each job run and the number of problems encountered
Maintenance reminders - set up and customize maintenance reminders to prompt tasks after specific run time totals have occured
Improved alarm and error recording
Fix for overrides leading to gcode errors
Override value correctly updates with keybind usage
Using override keybind should now display the override panel
Multiple tool changes in a single file now display the correct tool in the Wizard
Controller binds should work with tool change wizard active
Spindle RPM no longer incorrectly converting units
Spindle slider now reflects EEPROM values for min and max
Jog speed properly converts through preferred unit changes
Larger margin on shortcut printout
M0 in feeder macros now displays M0 pause dialog
Added missing outline keybinds
Unlock keybind should work in more situations where a soft reset was required
Fix for files not loading for some users
Tool change strategy missing units added
Controller functionality issues addressed
Calibration tools calculate correct values based on input
Surfacing unit conversion on RPM removed
Laser unit renamed to Power from RPM
Color theme loading no longer loads non-existent file
gSender runs noticeably faster and lighter!
There were multiple areas where we were able to make file processing on average 20% more efficient and reduce overall program memory usage by an average of 2/3rds due to an increased node sandbox memory size and improvements to multiple run times
On files that still take a while to load we’ve now added a loading bar window to show file loading progress
Added new job recovery functionality
In specific instances where your machine's USB port disconnects from gSender during a job it’ll be able to recommend where you should restart from
Updates to gamepad controller support
List of officially tested controllers if you’d like to select a gamepad that works more reliably with gSender
Tested controllers come with their own pre-loaded presets
Improved UI for creating controller profiles
Available PDF printout of shortcuts to hang up near your machine
Better support for Laser Diodes
Optional low-power laser enable on outlining
Laser-specific visualization: there’s a different style when laser mode is on and that colour can be customized
Bug fix: Laser offset now allows for negative offset values
New Diagnostic tab inside the Calibrate Tool
See at-a-glance information on whether your limit switches, touch probe, or other pins are activated
General summary on your CNCs firmware settings
The ability to generate a Diagnostic PDF file that includes information on your computer, CNC, recent alarms / errors, any currently loaded g-code file, and more! Very handy to share with our support team or other CNCers to help diagnose problems your CNC might be experiencing
Remote Mode, control your CNC remotely!
Connect to your CNC from a myriad of other internet-connected devices for loading files from other computers or jogging and zeroing from your phone
Easy to set up and configure
Tool changing is now more fully supported by our new Wizard
gSender already recognized M0 and M6 commands to initialize a pause in the middle of a file
New processes to support using the ‘paper method’, a touch plate, or a tool length sensor (choose based on your CNC setup) now allow more flexibility in handling tool changing and in some cases can pop up a Wizard to direct you through each step and without the need for custom macros
Other assorted features
Slider overrides for easier feed rate and spindle / laser adjustment on the fly
Ability to toggle between job overrides and file attributes before starting a job to fine-tune feed and speed overrides before starting a job
Get a top-down snapshot image of your job with the new SVG Visualizer that bridges the gap between a fully disabled visualizer or the full 3D one (useful for less powerful computers)
Colour coded Console on certain commands like alarms and errors that can also now pop-out
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
Customizable probe fail distance in Z
More visualization theme customizations for ‘light’, ‘dark’, or your own fully custom design
New Shortcuts for controlling Probing, Visualization, and Macros and the ability to filter shortcuts by category to easily find and edit them
New stats tab for tracking jobs run on your CNC
Custom decimal places on the DRO
and other bug fixes for Linux auto updates, Settings exporting, Preferred units and file unit modals, Bounding box relative movement, Shortcut printing and more!
Fix for XYZ probe profile when $13 enabled
Fix for machine position overflowing bounds
Fix for some keybinds no longer recognizing when they were released
Improved surfacing tool - pattern now ramps in to support more surfacing bit types, cut direction is reversible, able to start from center, can copy gcode to clipboard for saving.
Major improvements to visualizer memory usage and parsing speed
Start from line should account for maximum file Z height when moving into position to account for situations where Z0 is set at the spoilboard.
Probe code should always return to the exact starting location instead of approximating it.
Improvements to firmware flashing UX - can now select profile and port inside tool.
Fix for auto-probe code movements being too small when "$13 report as inches" EEPROM value enabled
Go To buttons only use safe height if below that position when limit switches are enabled to avoid moving downwards.
Fixed values in some machine profiles.
Added machine state guards to some keyboard shortcuts.
UI Modals now more difficult to close accidentally.
Bracket Comments on M0/M1 now emitted to UI.
Laser offsets preferences allow negative values again
Bounding Box variables once again available to macros
Mac version now exits completely on close.
Higher UI clarity when connecting to board with invalid/unrecognizable firmware
Styling changes in Firmware Tool
Fixed overflow when OS had screen zoom above 100%.
Fixed firmware tool control for setting $23
Flashing again available without connecting to device
Improvements to continuous jogging (thanks @cotepat)
Fixed issue with some settings not properly persisting
Outline tool improvements - moved to worker thread, G0 movements included, tweaks to accuracy
More accurate file length estimates when connected - virtualizer now uses EEPROM acceleration values
Probe function now available in manual tool change
Better datafilter for invalid UTF8/UTF16 characters
Added profiles for Longmill extension kits
Machine profile removed from preferences and placed in firmware tool
Fixed incorrect default values in some machine profiles
Test mode now restores WCS after the soft reset performed while exiting check mode.
Fixed issue with test mode that would occasionally have it start running the file after test was complete
Fixed issue with continuous jog when soft limits were enabled and report in inches EEPROM value was enabled
Firmware tool improvements - new convenient profile selection, setting search, performance improvements, highlighted changed values
Improvements to value inputs - should no longer default to min value if there is too long a pause in typing
Surfacing labels changed to X/Y rather than length/width
Minor styling changes
Fix for start button sometimes not working when "Start Event" block enabled but empty
Laser offsets applied more intelligently
Fixed styling regression in probe widget height
Infrastructure for edge version
Reversion of electron 18 patch to fix issue where application would hang on splash screen
Patch notes now displayed in "About" section of preferences
Laser offsets no longer applied on laser mode toggle if set to 0.
Added new machine profiles for Bluecarve and Yorahome CNC.
Dependency updates
Fix for start g-code event not sending entire code block in some situations and make it more consistent in all situations
Firmware now highlights settings that are different from default for Sienci machines
Support for edge/beta channels for those who want to opt into new features for testing
Improvements to controller movement using joystick
Brighter cut lines in visualizer
More sensible timeout on fetching updates
MK2 12X30 configuration now properly selectable
Added Mist, flood, and stop coolant keyboard shortcuts
Fixed issue with surfacing spiral pattern where center strip could be missed with some parameters
Fixed issue in calibration where the direction it asked you to move gantries wasn't correct in some situations.
Laser offset no longer resets to previous value on toggle of laser mode
Numerous surfacing tooltip and unit conversion issues fixed
Surfacing now lets you select M3 or M4 movement
Rapid position buttons now use $27 pulloff value for determining final positions
Outline tool now stores and restores modals on completion
Improvements to settings storage and persistence
Migrated from Electron 10 to Electron 18
Fixed issue that could cause continuous jog to fail in some situations with soft limits enabled
Fixed issues with start probe and confirm probe keybinds
Laser offset now saved and applied correctly
Fixed mouse button combination that could crash visualizer
WCS is reset to current selection on job stop
Movement modal included in start-from-line functionality
Start-from-line should prefer selected WCS if different from default G54
Fixed issue with spindle max/min not saving in some situations
Disabled surfacing generation when job is running
Laser/Spindle EEPROM ($31) and spindle/laser min/max should more accurately be reflected in firmware UI
Macro movement and re-ordering should be easier and more consistent.
Start-from-line should use a more sane decimal place for position values
Rapid position buttons should now account for machines not running Sienci-specific firmware and offset position from 0.
Dependency updates
Tool commands now emitted to UI if they occur alongside M6 commands
Start from line should more consistently set feed rate and spindle speed
Fixed issue where laser min and laser max were reversed on initializing laser mode.
Rewrite of jog UI control to gain more consistent behaviour
Alterations to jog keybinds to gain more consistent behaviour
Added logic on tool change to prevent sender from starting before post hook is complete
Alterations to profile default spindle min and max and laser min and max values
Add support for distinct Spindle max and Spindle Min while in laser or spindle mode
"Pause" tool change workflow renamed to "Manual", and now allows jogging and macros to be run
Default feed rate in "start from line" now reflects file unit modal
Fixed issue where units weren't consistent on Go-To buttons leading to Z plunge
Tool diameter selection hidden on Z probe to prevent user confusion.
Lowered minimum resolution from 1280X960 to 1024X768 and added responsiveness to account for that.
Trimmed machine profile list to generic set and made it more obvious that machine dimensions are as reported from EEPROM.
Added MK2 machine profiles and support for default settings for new machines.
Updated firmware images for MK1 and MK2
Fixed regression where comments weren't properly stripped before sending to grbl
Corrections to Auto-diameter probe profiles
Fixed issue where T commands could cause errors when on a line with M6 commands
Stop job should now consistently reset board (0x18) as intended
Fixed various tooltip errors
Fixed issue where calibration tools weren't using correct jog controls
; Comments are now emitted to UI on M0, M1, and M6 workflow stops
Fixed issue where jog cancel realtime command wasn't properly sent to controller
Fixed issue where default values instead of custom jog speeds weren't used on initial program load
Start from line now sends more modals to make sure IoT devices are enabled if that line is skipped
Improvements to outline feature - head should now return to original position, better support for disjointed/tiled carves
Fixed timestamps from causing UI elements to jump around
Fixed DRO being cut off on small resolutions or screen sizes
Fixed application not being full-screen on startup
Increases on movement limits for jog presets
UI fields should be more easily clearable and return to previous value if not changed
Workflow controls no longer disappear during jogging
Changes to updater to prevent 32 bit application updating to 64 bit
Added new laser support preferences with basic offset
Alarm 2 should now be unlockable
Fixed edge case where surfacing would leave an unfinished pass in the center
Updates to serial connection library and workflow
New touchplate images and support for upcoming auto-diameter touchplate
Fixed regression with XYZ probe
Fixed regression in probe preferences
Rapid position buttons now use EEPROM values for more accurate movements and machine profile limits should be set from EEPROM on connect
Spindle rate hidden by default - Spindle/Laser must be toggled on in machine profile to view overrides during job run
Surfacing tool now runs last pass in Zig-Zag pattern
Added support for $13 in feedrate reporting
Safe height should no longer send router to Z0
Added new machine profiles
Fix for F-key shortcuts not working
Added missing units
G28 commands no longer ignored
Alterations to XY probing
More accurate error line reporting
Various styling issue fixed
Unlock button on UI to avoid homing/unlock from M0 state
More user-friendly number inputs that allow clearing are more forgiving on changing value
Minimize Renders turned on by default when lite mode toggled on
Styling changes to probe widget
Various UI look and feel changes
New machine profiles
Slight alteration to colour of lines that have entered planner to make them more visible
Fixed issue with jog/play shortcuts
Fixed bug where homing using the visualizer Home button did not unlock rapid position buttons
Fixed issue where firmware settings could be sent when machine was locked/alarmed resulting in settings not updating
Fixed issue where M0 commands in tool change hooks would result in post hook not executing
Improvements to surfacing tool - new motions and layout
Improvements to pause commands (M0/M1) in macros
WCS dropdown now accurately reflects workspace modal
Improvements to flashing workflow and reduced situations where it's possible to fail
Improvements to probe settings
Fixed issue with quick movement buttons
Fixed issue with soft limit behaviour and continuous jogging if firmware flag to set machine 0,0,0 not set
Fixed issue with imperial units and continuous jogging with soft limits enabled
Fixed numerous UI inconsistencies and other styling issues
Minimize render mode for visualizer to improve performance
Visualizer improvements to render speed
Fix render worker being started if visualizer disabled
Probe dimensions correctly update if changed in preferences
Can once again copy from console
Redesigned probe module
Fix for quick-movement buttons if home set to back-left
Fix for T commands on the same line as M6 commands
Fixed firmware tool values occasionally not reflecting actual EEPROM settings
Style changes
Code signed! (this means security certification - i.e. no more firewall warnings)
New recognized CNCs added and unrecognized devices are now accessible from the connection widget
UI fixes for incorrect baud rate
New EEPROM categories for easier navigation
Clearer Help menu
More fixes and improvements to endstop-related functions
New LongMill default firmware that better supports endstops
Fix for jog not stopping immediately due to debounce
Various styling fixes
Manual value entry for X, Y, and Z locations by clicking on the location indicator
Re-designed job progress indicator that better shows operating time and path of current file
Now able to use variables in start/stop g-code blocks and tool changing
Ability to enable or disable start/stop g-code blocks without clearing code
Updates to included firmware image and Longmill default EEPROM settings in firmware tool to support endstops
Endstop buttons now appear automatically if homing is enabled, and the home button is available on machine connect
Rapid position buttons now available and updated to use new firmware settings
Individual X and Y axis Go To buttons now use safe height if set in preferences, GotoXYZ0 now changed to GotoXY0, and safe height now complies to endstop-enabled machines and doesn’t descend after movement
Better support of physical hold/unhold buttons on Longboard controller
Tweaks to Z jogging to reduce runaway issues
Fixed hard limit alarms to allow easier resuming of workflow
Fixed bug with Z movement at end of surfacing program in imperial units
Joystick jogging should now send jog cancel at direction control release
Fixed last line run to reset on job completion
Improvements to UI connection to CNC machine to prevent frequent disconnections during long job runs
Program will now prevent your computer from going into sleep mode during long jobs
Several styling fixes across the UI
Fixed issue with machine locking up after pressing the jog control buttons in some situations
Fixed issue with program freezing after a job has finished
Start from line feature
Sortable macros
Preliminary support for joystick control and keybinding
Improvements to outline tool to prevent moving below the Z 0 on completion
Fixed issue where file would be re-rendered or unloaded when connecting and disconnecting
Fixed issue where inch grid lines weren't aligned with zero point
Improvements to file loading speed
Improvements to visualization and rendering speed
Improvements to file parsing speed
Various library upgrades aimed at improving performance and preventing UI hanging
New outline tool which will generate and run a rough outline of a loaded project file
Fixes for load file window not appearing in rare circumstances, jogging runaway in rare circumstances, and probe settings not being reflected in probe module until restart
Fixed issue with surfacing tool limits and ease of changing inputs
Fix for duplicated keybinds
Fix for Carbide Create files and M0 commands
Fix for new macros not appearing as possible keybinds
Optional updates for future versions
New logging engine for electron app
Socket polling to help keep connection alive
PowerSaveBlock added to reduce cases of machine sleeping while running long jobs
Alterations to load file to hopefully reduces cases of the dialog appearing in some users
New Movement Tuning tool that can be used to calibrate motor axis movements
New feature for running G-code at program Start and Stop - enter and save your own commands in the settings
More exposed keyboard shortcut options and new categorization
Now able to assign shortcuts to macros!
Added coolant buttons and status indicator
Better M0/M1 command support - notification in the UI when command encountered and easier to resume the program
Clearer visualization due to reduced rapid line opacity
Improvements to the surfacing tool limits and settings persisting
Ability to reset gSender settings to default
Added reconnect logic to client to reduce instances of UI no longer updating on long jobs
Fixed an issue where the "Home machine" button wouldn't disappear on homing cycle
Fixed an issue where macro exports were unable to be re-imported
Fixed issue with jogging while $15 was enabled
Other minor bug fixes
Sticky folders! Load files from the last place you navigated to
New tool change functionality - can now pause, ignore, or run code blocks on M6 commands
Added a prototype Calibration tool for axis alignment - step by step process to make sure your CNC is square
Alarm warnings now show an explanation of what the alarm code means
Faster splash screen
Spindle/Laser ‘active’ state changes are now updated more quickly in the UI along with other Laser widget improvements
Copy and paste text from the terminal
Tweaks to handling correct units display in overrides and surfacing
Refactored file information to Redux
Loads of small bug fixes pertaining to keyboard shortcuts, jogging, probing, comment processing, and the firmware tool
Minor styling changes
New tool for surfacing
Moved most controllerEvent listeners to redux store to improve performance
Improved Job Time Estimation
Updates to Laser/Spindle widget to better track on/off state
New 'About' information
Fixed file units mismatch with preferred units
Improvements to job handling
Tooltips created for data entry points
Splash screen tweaks
Working PI build!?
Altered how files are loaded to improve UI performance
Added estimated time to run calculation on file load
File attributes now persists on disconnect
Fixed issues with macro editing and adding
New experimental Winx32 and RasPi builds
Firmware tool improvements and bug fixes
More accurate parsing of tool and spindle speeds
Various keybind bug fixes, addressing special characters
Added recent files button and file unloading
New 'Check mode' state for testing files before starting job
Verbose commands now in console
New macro behaviours and import/export
gSender now officially licensed under GPLv3
Homing state and other small bugs and styling fixes
New logo/branding throughout!
Fixed jog stepping with keybindings, continuous jogging bugs, and other jogging unreliabilities
Added new keybindings for improved, keyboard-based actions (unsure if issues with particular symbols such as '*' have persisted)
Took another look through to ensure proper unit consistency and conversion
Repairs to probing
More work done on the Firmware tool for refined functions and display
Indication of current jog preset selected
New base modals created for use across tools and confirmations
Added combo laser/spindle widget (toggleable in settings)
Re-designed location widget
Re-designed layout of job status information to include min and max extents for file dimensions
Added safe-height retraction settings for goto XYZ0 (accessible in settings)
Added splash screen on application load
Migration to most recent Electron release plus implemented logging
Set up in-app feedback submission button
Better formatting and sizing of various gSender elements
New visualizer theme "light mode" available in settings
Experimental "lightweight" options to reduce visualizer rendering computation (meant for less powerful hardware)
Keybinding tweaks to prevent jogging runaway and other small bugs
New bottom, left-hand toast notifications for feedback on certain actions
Imperial / metric units should now extend to all aspects of the sender
Buttons to goto X, Y, and Z individually
Better handling of Alarm states with unlock
New g-code validation on file load and job run
New feature to automatically download updates for future gSender Windows versions
Better handling of movement cancel button so that all positioning-related movements should be able to be cancelled
Migration to most recent React
New in-app updating management prompted via server releases
gSender decided as official name :D
Buttons added for homing, quick-travel, jog cancel, diagonal jog, and an awesome isocube!
New macros widget
New customizable settings: jogging presets, baud rate, and more.
Visual overhaul on settings, probing, file attributes, and visual consistency across entire program
Logo implemented and the loading of Louis
Responsiveness overhaul on entire program
Mac (intel) version released March 8
Continuous jogging!
Unit switching in settings (metric/imperial)
Keybinding functionality to jog and other key functions with keypresses (can change bindings in settings)
Probe returning to original position
New, separate settings files won't interfere with CNCjs
Small colour and styling changes to hopefully increase clarity of items on the screen
Some responsiveness addressed to help keep sender looking good across many screen sizes (though we still have a ways to go)
Fixes to excessive decimal places in some areas
New Firmware Tool in progress but will probably break your board right now
Resolved non-functional buttons, missing console, and some errors during sending
New jogging widget and jog presets
Improved probe function plus probe continuity checking
New file attributes on load
More visual improvements and a large buildout in new settings options
Still highly dependant on great infrastructure created by the CNCjs team
Established Electron installer, git, and certificates
Large visual overhaul in how widgets and displayed and operational flow of sender
New probing widget, machine profiles, settings, and visualizer
G-code editing
Pendant
Full 3D Visualization