# Changelog for PROBOTIX LinuxCNC Configurator

## Given a version number MAJOR.MINOR.PATCH, increment the:
- MAJOR version when you make incompatible API changes,
- MINOR version when you add functionality in a backwards-compatible manner, and
- PATCH version when you make backwards-compatible bug fixes.

## Types of changes
- Added for new features.
- Changed for changes in existing functionality.
- Deprecated for soon-to-be removed features.
- Removed for now removed features.
- Fixed for any bug fixes.
- Security in case of vulnerabilities.

## Todo:
- Fix missing NGC startup file causes o100 to not be found
- Fix RS274_STARTUP_CODE to clear tool and offset
- Make insmod edimax permanent
- Probe from shorter height
- Finish ngc2 filter
- Rotate g-code functions
- Increase debounce time for limits only
- Add camera tab
- Fix laser off must be pressed before laser test
- add rmmod lp to prevent parport claim errors
- add probe input to UNITY2 hal file





## [Unreleased]

## [4.0] 2019-10-01 - Len Takes Back The Configurator
### Changed/Fixed
- Added back in Edimax wifi driver and added it to rc.local for autostart
- Fixed extra hidden characters in probotix/bin/ files
- Laser Functionality to add 10% test mode
- Fix numlockx not compiling, copy precompiled numlockx to /usr/bin/
- Added CONTROLLER to ini and changed chooser from drivers to controller

## [3.1.2] - 2019-02-14
### Fixed
- Recreated tool.tbl again and retained formatting to avoid further issues
- Needed sudo to copy GX Tooleditor to /usr/bin
### Changed
- Reduced width of current coordinate system area in bottom info bar to help with lower resolution screens

## [3.1.1] - 2019-02-12
### Fixed
- Correctly clear previous value for SWAP_PARPORTS to allow prompting
- Recreated tool.tbl file from working LinuxCNC installation
- Better check for running directory of Configurator
### Changed
- Moved php files into .bin folder
- Formatting for config dump in preparation for future feature
- Updated ToolEdit for future usage
- Updated sample programs in /nc_files
### Removed
- Outdated screenshot of interface
- Custom program for previous customer

## [3.1.0] - 2018-12-29
### Changed
- Descriptions to be more descriptive. Hopefully.
### Added
- Check for True/False values in older config files.
### Removed
- Limit for only GX3750 machines having a laser.

## [3.0.0] - 2018-10-28
### Changed
- Desktop icon filename changed to "probotix.desktop" but will still display as machine name
### Added
- Series selection with new defaults
- Series determines which PROBOTIX Axis Interface version is installed
- Reset Offsets button to sidebar for current coordinate system
### Fixed
- Possible fix for custom StepConf to be tested later
- Possible fix for mysterious growing tool-lengths in ATLaS
### Removed
- Unused MDI_COMMANDs from ini file

## [2.6.0] - 2018-10-23
### Changed
- More POSIX friendly condition testing
- Only accept floating point numbers for custom machine travel and ZPUCK
- Cleaned up SENSORS section to remove redundant code
- Moved all system file changes to end of script in case of early termination
- Move logging before action for better issue tracking
- Corrected references to mist/flood to AUX/Outlet in PROBOTIX Axis Interface
- Grouped items in PyVCP.xml sidebar in PROBOTIX Axis Interface
- PROBOTIX Axis Interface no longer replaces default Axis
- Switched back to older version of PROBOTIX Axis Interface for Fireball/Galaxy Series machines
- Removed Z offsets from example tools in tool.tbl
- Rewrote Z-Puck subroutine (102.ngc)
- Always save known values to ATLaS (100.ngc) and Z-Puck (102.ngc) files
- Config dump file naming convention updated
### Added
- Ability to read previous config file and allow changing individual options
- Check for DEBUG file to prevent clearing screen between prompts
- Save lspci -v output for each config dump
### Removed
- No longer log screen size to config
- Duplicate buttons on PyVCP.xml sidebar

## [2.5.0] - 2018-08-27
### Fixed
- Parallel card search function updated to support non-NetMos cards
### Changed
- Reverted handling EMC2 folder to only show warning and exit
### Removed
- No longer overwrite installed tooledit with broken version

## [2.4.2] - 2018-07-29
### Fixed
- Corrected ATLAS_Y for tall uprights

## [2.4.1] - 2018-07-24
### Changed
- Reverted back to gedit for tool table editing as tooledit seems broken
- Updated tool table to LinuxCNC v2.5 formatting
### Added
- Archive linuxcnc folder with errors in grab_errors.sh
### Fixed
- SPID code was still being copied when VFD was selected

## [2.4.0] - 2018-07-16
### Changed
- Set default options for some machines like V90MK2 to prevent prompting
- Reverted hard-coding ATLaS X and Y coordinates to 100.ngc instead of emc.var file
- Initial prompt now asks to configure machine or update software
- Placed prompt for router mount after sensor prompt as we only need to know mount type for ATLaS usage
### Added
- More descriptions for questions
- Force system REBOOT when needed
### Fixed
- Only accept numbers for ORDER_NO

## [2.3.2] - 2018-06-13
### Added
- Descriptions for parts
### Fixed
- Z-puck travel now correctly uses max travel determined by uprights
- Remove ATLaS code from probotix.hal when not used to prevent tripping probe
### Changed
- Function for prompting now handles descriptions
- Reordered prompts
- New logo desktop background
- Prompt to remove emc2 directory and continue
- Pause on error instead of waiting 10 seconds

## [2.3.1] - 2018-04-23
### Added
- Router Speed indicator for use with SPID
### Changed
- Save ATLaS X and Y coordinates to emc.var file instead of hard-coding to 100.ngc
### Fixed
- Reverted or2 count in probotix.hal to properly handle gamepads
- Reverted loading mux4 at top of probotix.hal to account for gamepads/MPGs
- Table Extents ATLaS X&Y locations

## [2.2.2] - 2018-03-21
### Added
- Some on-screen logging so user knows script has not stalled
- Function to simplify logging
- Check to prevent empty Order Number
### Changed
- Only inject sudo password if running as user probotix
- When using router show the mist checkbox
- Separated prompt for probes and swapping parallel ports so that it is possible to have both
- Cleaned up more formatting in PROBOTIX.HAL
### Removed
- Disabled installing custom StepConf as it seems broken

## [2.2.1] - 2018-03-06
### Fixed
- Bug stuck in mm caused by units in CAPS so changed back to lowercase
- Commented out parport.1.reset-time line as input only now

## [2.2.0] - 2018-03-02
### Changed
- Moved CONFIG_DUMP location outside of Configurator dir to persist across updates

## [2.1.0] - 2018-03-01
### Added
- More action logging
- Prompt for number of bearings on Z-axis to determine travel distance
- Prompt for type of install (new or upgrade)
### Changed
- Moved CHANGELOG into this separate file
- Created exit function
- Rearranged some sections
- Delayed CONFIG file creation
- Rearranged options so default is always "1"
### Removed
- StepConf Only option as it left behind temp files
### Fixed
- Bug caused by missing space in IF condition
- Bug caused by leftover backslash on line for saving PARPORT addresses

## [2.0.0] - 2018-02-12
### Changed
- Major Axis GUI update
- Clear Axis preview history after homing
- ZMIN to 5.7 to match new taller machines
### Removed
- PARPORT2, joined it into PARPORT1, set PARPORT1 to "in"

## [1.10.0] - 2018-02-10
## Changed
- Created function to handle printing prompts

## [1.9.2] - 2018-01-18
### Changed
- Windows end of line CRLF with Unix LF
- Minor syntax corrections
### Removed
- Quotes from literal numbers
- Duplicate code in HAL for Router when using SPID
### Fix
- Incorrectly writing to existing log before backing up

## [1.9.0] - 2018-01-09
### Added
- Prompt for which PARPORT to use for pendant and remove unused PARPORT2 if necessary
- HAL code for A-axis rotation jogging
- Prompt for up-rights type/height
- Prompt for SuperPID
### Changed
- General code cleanup and unified formatting
### Removed
- Second e-stop code if not in use
- References to a-axis if no rotary present
- YEAR from shortcut name

## [1.8]
### Added
- Log file
- MPG pendant support on PARPORT2
- Discovered 8192cu.ko module installation procedure
### Changed
- Started separating prompts from other stuff so that we can implement defaults and load prior config
- Increased max velocity on rotary axis to 2 revs/second
### Removed
- Turned off g-zip stdout output
### Fixed
- Case issue with panel.xml

## [1.7]
### Added
- o130 helical interpolation subroutine
### Changed
- Z min to 10 to check possible G43 problems

## [1.6]
### Added
- Key binding "q" to pause/resume toggle
### Changed
- Set G28 and G30 locations in emc.var

## [1.5]
### Added
- grab_errors.sh script to copy startup errors to thumb drive
- Custom show_errors.tcl to display location of debug files

## [1.4]
### Added
- PHP installer
- LSPCI dump to text file
- Router mount chooser to fix ATLaS Y offset
### Fix
- o100: check for already tool loaded and measured
- Misc bug fixes

## [1.3]
### Added
- PyVCP buttons
### Changed
- Hard Coded G28 & G30 buttons to G53 coordinates
- Hard Coded ATLaS location to G53 coordinates
- Consolidated o100 & o101
### Fixed
- o102 bug

## [1.2]
- Bug Fixes

## [1.1]
- Bug fixes

## [1.0] - 2016-03-29
