Updating LinuxCNC to a new minor release (ie to a new version in the same stable series, for example from 2.9.7 to 2.9.8) is an automatic process if your PC is connected to the internet. You will see an update prompt after a minor release along with other software updates. If you don’t have an internet connection to your PC see Updating without Network.
1. Upgrade to the new version
Esta sección describe cómo actualizar LinuxCNC de la versión 2.8.x a la nueva versión 2.9.y. Se supone que tiene una instalación 2.8 existente que quiere actualizar.
To upgrade LinuxCNC from a version older than 2.8, you have to first upgrade your old install to 2.8, then follow these instructions to upgrade to the new version.
If you do not have an old version of LinuxCNC to upgrade, then you’re best off making a fresh install of the new version as described in the section Getting LinuxCNC.
Furthermore, if you are running Ubuntu Precise, Debian Wheezy or Debian Buster it is well worth considering making a backup of the "linuxcnc" directory on removable media and performing a clean install of a newer OS and LinuxCNC version as these releases were EOL in 2017, 2018 and 2022 respectively. If you are running on Ubuntu Lucid then you will have to do this, as Lucid is no longer supported by LinuxCNC (it was EOL in 2013).
To upgrade major versions like 2.8 to 2.9 when you have a network connection at the machine you need to disable the old linuxcnc.org apt sources in the file /etc/apt/sources.list and add a new linuxcnc.org apt source for 2.9, then upgrade LinuxCNC.
The details will depend on which platform you’re running on. Open a terminal then type lsb_release -ic to find this information out:
lsb_release -ic
Distributor ID: Debian
Codename: Trixie
You should be running on Debian Bullseye, Bookworm or Trixie or Ubuntu 20.04 "Focal Fossa" or newer. LinuxCNC 2.9.y will not run on older distributions than these.
You will also need to check which realtime kernel is being used:
uname -r
6.1.0-10-rt-amd64
Si ve (como arriba) -rt- en el nombre del kernel, entonces está ejecutando el preempt-rt kernel y debería instalar la versión "uspace" de LinuxCNC. También debe instalar uspace para configuraciones "sim" en kernels que no son en tiempo real.
Si ve -rtai- en el nombre del kernel entonces está ejecutando RTAI tiempo real. Consulte a continuación la versión de LinuxCNC a instalar. Los paquetes RTAI están disponibles para Bookworm y Buster pero no actualmente para Bullseye.
1.1. Configuración de fuentes apt
-
Abra la ventana
Fuentes de software. El proceso para hacer esto se diferencia ligeramente en las tres plataformas soportadas:-
Debian:
-
Haga clic en
Menú de aplicaciones, luego enSistema, luego enAdministrador de paquetes Synaptic. -
In Synaptic, click on the
Settingsmenu, then clickRepositoriesto open theSoftware Sourceswindow.
-
-
Ubuntu Precise:
-
Click on the
Dash Homeicon in the top left. -
In the
Searchfield, type "software", then click on theUbuntu Software Centericon. -
In the Ubuntu Software Center window, click on the
Editmenu, then click onSoftware Sources...to open theSoftware Sourceswindow.
-
-
Ubuntu Lucid:
-
Click the
Systemmenu, thenAdministration, thenSynaptic Package Manager. -
In Synaptic, click on the
Settingsmenu, then click onRepositoriesto open theSoftware Sourceswindow.
-
-
-
In the
Software Sourceswindow, select theOther Softwaretab. -
Delete or un-check all the old linuxcnc.org entries (leave all non-linuxcnc.org lines as they are).
-
Click the
Addbutton and add a new apt line. The line will be slightly different on the different platforms:
| SO / Versión tiempo real | Repositorio |
|---|---|
Debian Bullseye - preempt |
|
Debian Bookworm - preempt |
|
Debian Bookworm - RTAI |
|
Debian Trixie - preempt |
|
Debian Trixie - RTAI |
|
-
Click
Add Source, thenClosein the Software Sources window. If it pops up a window informing you that the information about available software is out-of-date, click theReloadbutton.
1.2. Upgrading to the new version
Ahora su computadora sabe dónde obtener la nueva versión del software. A continuación tenemos que instalarlo.
The process again differs depending on your platform.
1.2.1. Debian Bullseye, Bookworm and Trixie
Debian uses the Synaptic Package Manager.
-
Open Synaptic using the instructions in Setting apt sources above.
-
Click the
Reloadbutton. -
Use the Search function to search for
linuxcnc. -
The package is called "linuxcnc" for RTAI kernels and "linuxcnc-uspace" for preempt-rt.
-
Haga clic en la casilla de verificación para marcar los paquetes linuxcnc y linuxcnc-doc-* para actualización. El administrador de paquetes puede seleccionar un número de paquetes adicionales que también se instalarán, para satisfacer las dependencias que tiene el nuevo paquete linuxcnc.
-
Haga clic en el botón
Aplicary deje que su computadora instale el nuevo paquete. El viejo paquete linuxcnc se actualizará automáticamente al nuevo.
1.3. Ubuntu
-
Click on the
Dash Homeicon in the top left. -
In the
Searchfield, type "update", then click on theUpdate Managericon. -
Click the
Checkbutton to fetch the list of packages available. -
Click the
Install Updatesbutton to install the new versions of all packages.
2. Updating without Network
Para actualizar sin una conexión de red, necesita descargar un paquete .deb y luego instalarlo con dpkg. Los .deb se pueden encontrar en https://linuxcnc.org/dists/ .
Tiene que profundizar en el enlace anterior para encontrar el deb correcto para su instalación. Abra una terminal y escriba lsb_release -ic para encontrar el nombre de su sistema operativo.
> lsb_release -ic
Distributor ID: Debian
Codename: trixie
Pick the OS from the list then pick the major version you want like 2.9-rt for RTAI or 2.9-uspace for preempt-rt.
Next pick the type of computer you have: binary-amd64 for 64-bit PC or binary-arm64 (64bit) for Raspberry Pi.
Next pick the version you want from the bottom of the list like linuxcnc-uspace_2.9.8_amd64.deb (choose the latest by date). Download the deb and copy it to your home directory. You can rename the file to something a bit shorter with the file manager like linuxcnc_2.9.8.deb then open a terminal and install it with the package manager with this command:
sudo dpkg -i linuxcnc_2.9.8.deb
3. Updating Configuration Files for 2.9
3.1. Manejo estricto de intérpretes enchufables
Si sólo ejecutas código G normal y no sabes qué es un intérprete enchufable entonces esta sección no te afecta.
Una prestación de LinuxCNC que se usa rara vez es el soporte de intérpretes enchufables, controlados por la configuración INI no documentada [TASK]INTERPRETER.
Versiones de LinuxCNC anteriores a 2.9.0 manejaban una configuración incorrecta de [TASK]INTERPRETER que caía en automático de vuelta al uso del intérprete de código G predeterminado.
Desde 2.9.0, un valor incorrecto de [TASK]INTERPRETER provocará que LinuxCNC se niegue a arrancar. La situación se arregla eliminando dicha configuración del archivo INI, para que LinuxCNC use el intérprete de código G predeterminado.
3.2. Canterp
Si sólo ejecutas código G normal y no usas el intérprete enchufable canterp entonces esta sección no te afecta.
En el extremadamente improbable evento de usar canterp, debes saber que el módulo has sido movido de /usr/lib/libcanterp.so a /usr/lib/linuxcnc/canterp.so, y por lo tanto se necesita modificar la configuración correspondiente [TASK]INTERPRETER de libcanterp.so a canterp.so.
3.3. Spindle limits in the INI
It is now possible to add settings to the [SPINDLE] section of the INI file
MAX_FORWARD_VELOCITY = 20000 The maximum spindle speed (in rpm)
MIN_FORWARD_VELOCITY = 3000 The minimum spindle speed (in rpm)
MAX_REVERSE_VELOCITY = 20000 This setting will default to MAX_FORWARD_VELOCITY if omitted.
MIN_REVERSE_VELOCITY = 3000` This setting is equivalent to MIN_FORWARD_VELOCITY but for reverse spindle rotation. It will default to the MIN_FORWARD_VELOCITY if omitted.
INCREMENT = 200 Sets the step size for spindle speed increment / decrement commands. This can have a different value for each spindle. This setting is effective with AXIS and Touchy but note that some control screens may handle things differently.
HOME_SEARCH_VELOCITY = 100 - Accepted but currently does nothing
HOME_SEQUENCE = 0 - Accepted but currently does nothing
4. Updating Configuration Files for 2.10.y
Touchy: las entradas de Touchy MACRO ahora deben ser colocadas en la sección [MACROS] de INI, en vez de la sección [TOUCHY]. Esto es parte de un proceso de encomunar las configuraciones INI entre GUIs.
5. New HAL components
5.1. Non-Realtime
mdro mqtt-publisher pi500_vfd pmx485-test qtplasmac-cfg2prefs qtplasmac-materials qtplasmac-plasmac2qt qtplasmac-setup sim-torch svd-ps_vfd
5.2. En tiempo real
anglejog div2 enum filter_kalman flipflop homecomp limit_axis mesa_uart millturn scaled_s32_sums tof ton
6. New Drivers
A framework for controlling ModBus devices using the serial ports on many Mesa cards has been introduced. http://linuxcnc.org/docs/2.9/html/drivers/mesa_modbus.html
A new GPIO driver for any GPIO which is supported by the gpiod library is now included: http://linuxcnc.org/docs/2.9/html/drivers/hal_gpio.html