Oppdatering av LinuxCNC til en ny mindre oppdatering (med andre ord, en ny versjon i samme stabile serie, for eksempel fra 2.9.1 til 2.9.2) er en automatisk prosess hvis din PC er koblet til Internett. Du vil se en oppdateringsmelding etter en liten oppdatering sammen med andre programvareoppdateringer. Hvis du ikke har en Internett-forbindelse for PC-en din, se oppdatering uten nettverk.

1. Oppgradering til den nye versjonen

Dette avsnittet beskriver hvordan oppgradere LinuxCNC fra versjon 2.8.x til en 2.9.y-versjon. Den antar at du har en eksisterende 2.8-installasjon som du ønsker å oppdatere.

For å oppgradere LinuxCNC fra en versjon eldre enn 2.8 så må du først oppgradere din gamle installasjon til 2.8 og så følge disse instruksjonene for å oppgradere til den nye versjonen.

Hvis du ikke har en gammel versjon av LinuxCNC å oppgradere så er det bedre tjent med å installere en ny versjon som beskrevet i avsnittet Skaffe LinuxCNC.

I tillegg, hvis du kjører Ubuntu Precise eller Debian Wheezy så er det absolutt verdt å vurdere å ta en sikkerhetskopi av «linuxcnc»-mappen til flyttbart medie og gjennomføre en installasjon fra bunnen av med nyere OS og LinuxCNC-versjon, da disse utgivelsene nådde sin levetid i henholdsvis 2017 og 2018. Hvis du kjører Ubuntu Lucid så må du dette, da Lucid ikke lenger støttes av LinuxCNC (den nådde sin levetid i 2013).

For å oppgradere hovedversjoner som 2.8 til 2.9 når du har en nettforbindelse på maskinen, så må du koble ut de gamle linuxcnc.org-apt-kildene i filen /etc/apt/sources.list og legge til en ny linuxcnc.org-apt-kilde for 2.9 for så å oppgradere LinuxCNC.

Detaljene avhenger av hvilken platform du kjører på. Åpne en terminal, skriv så `lsb_release -ic`for å finne informasjon om dette:

lsb_release -ic
Distributor ID: Debian
Codename:       Buster

Du bør kjøre på Debian Buster, Bullseye eller Bookworm eller Ubuntu 20.04 "Focal Fossa" eller nyere. LinuxCNC 2.9.y kjører ikke på eldre distribusjoner enn disse.

Du må også sjekke hvilken sanntidskjerne som brukes:

uname -r
6.1.0-10-rt-amd64

Hvis du ser (som over) -rt i kjernenavnet så kjører du en «preemt-rt»-kjerne og bør installere «uspace»-utgaven av LinuxCNC. Du bør også installere denne for simulert oppsett på ikkesanntidskjerner.

If you see -rtai- in the kernel name then you are running RTAI realtime. See below for the LinuxCNC version to install. RTAI packages are available for Bookworm and Buster but not currently for Bullseye.

1.1. Apt-kildeoppsett

  • Åpne Software Sources-vinduet. Prosessen for å gjøre dette varierer litt på de tre støttede platformene:

    • Debian:

      • Klikk på Applications Menu, deretter System, så Synaptic Package Manager.

      • Klikk på Oppsett-menyen i Synaptic, klikk så på Repositories for å åpne Software Sources-vinduet.

    • Ubuntu Precise:

      • Click on the Dash Home icon in the top left.

      • In the Search field, type "software", then click on the Ubuntu Software Center icon.

      • In the Ubuntu Software Center window, click on the Edit menu, then click on Software Sources... to open the Software Sources window.

    • Ubuntu Lucid:

      • Click the System menu, then Administration, then Synaptic Package Manager.

      • In Synaptic, click on the Settings menu, then click on Repositories to open the Software Sources window.

  • In the Software Sources window, select the Other Software tab.

  • Delete or un-check all the old linuxcnc.org entries (leave all non-linuxcnc.org lines as they are).

  • Click the Add button and add a new apt line. The line will be slightly different on the different platforms:

OS / Sanntidsversjon Depot

Debian Buster - preempt

deb https://linuxcnc.org buster base 2.9-uspace

Debian Buster - RTAI

deb https://linuxcnc.org buster base 2.9-rt

Debian Bullseye - preempt

deb https://linuxcnc.org bullseye base 2.9-uspace

Debian Bookworm - preempt

deb https://linuxcnc.org bookworm base 2.9-uspace

Debian Bookworm - RTAI

deb https://linuxcnc.org bookworm base 2.9-rt

Fastsette apt-kilder
  • Click Add Source, then Close in the Software Sources window. If it pops up a window informing you that the information about available software is out-of-date, click the Reload button.

1.2. Upgrading to the new version

Now your computer knows where to get the new version of the software, next we need to install it.

Igjen så er prosessen annerledes avhengig av platformen din.

1.2.1. Debian Buster, Bullseye og Bookworm

Debian uses the Synaptic Package Manager.

  • Open Synaptic using the instructions in Setting apt sources above.

  • Click the Reload button.

  • Use the Search function to search for linuxcnc.

  • The package is called "linuxcnc" for RTAI kernels and "linuxcnc-uspace" for preempt-rt.

  • Click the check box to mark the new linuxcnc and linuxcnc-doc-* packages for upgrade. The package manager may select a number of additional packages to be installed, to satisfy dependencies that the new linuxcnc package has.

  • Click the Apply button, and let your computer install the new package. The old linuxcnc package will be automatically upgraded to the new one.

1.3. Ubuntu

  • Click on the Dash Home icon in the top left.

  • In the Search field, type "update", then click on the Update Manager icon.

  • Click the Check button to fetch the list of packages available.

  • Click the Install Updates button to install the new versions of all packages.

2. Updating without Network

To update without a network connection you need to download the .deb then install it with dpkg. The .debs can be found in https://linuxcnc.org/dists/ .

You have to drill down from the above link to find the correct deb for your installation. Open a terminal and type in lsb_release -ic to find the release name of your OS.

> lsb_release -ic
Distributor ID: Debian
Codename:       bullseye

Pick the OS from the list then pick the major version you want like 2.9-rt for RTAI or 2.9-rtpreempt or 2.9-uspace for preempt-rt.

Next pick the type of computer you have: binary-amd64 for any 64-bit x86, binary-i386 for 32 bit, binary-armhf (32bit) or binary-arm64 (64bit) for Raspberry Pi.

Next pick the version you want from the bottom of the list like linuxcnc-uspace_2.9.2_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.2.deb then open a terminal and install it with the package manager with this command:

sudo dpkg -i linuxcnc_2.9.2.deb

3. Oppdatering av oppsettfiler for 2.9

3.1. Stricter handling of pluggable interpreters

If you just run regular G-code and you don’t know what a pluggable interpreter is, then this section does not affect you.

A seldom-used feature of LinuxCNC is support for pluggable interpreters, controlled by the undocumented [TASK]INTERPRETER INI setting.

Versions of LinuxCNC before 2.9.0 used to handle an incorrect [TASK]INTERPRETER setting by automatically falling back to using the default G-code interpreter.

Since 2.9.0, an incorrect [TASK]INTERPRETER value will cause LinuxCNC to refuse to start up. Fix this condition by deleting the [TASK]INTERPRETER setting from your INI file, so that LinuxCNC will use the default G-code interpreter.

3.2. Canterp

If you just run regular G-code and you don’t use the canterp pluggable interpreter, then this section does not affect you.

In the extremely unlikely event that you are using canterp, know that the module has moved from /usr/lib/libcanterp.so to /usr/lib/linuxcnc/canterp.so, and the [TASK]INTERPRETER setting correspondingly needs to change from libcanterp.so to canterp.so.

4. Updating Configuration Files (for 2.9.y)

No changes should be necessary to configuration files when moving from 2.8.x to 2.9.y.

4.1. 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 - Aksepteres men gjør for tiden ingen ting

5. Nye HAL-komponenter

5.1. Ikke-sanntid

mdro mqtt-publisher pi500_vfd pmx485-test qtplasmac-materials sim-torch svd-ps_vfd

5.2. Sanntid

anglejog div2 enum filter_kalman flipflop hal_parport homecomp limit_axis mesa_uart millturn scaled_s32_sums tof ton

6. Nye drivere

Et rammeverk for å kontrollere ModBus-enheter med serieporter på mange Mesakort har blitt introdusert. http://linuxcnc.org/docs/2.9/html/drivers/mesa_modbus.html

En ny GPIO-driver for enhver GPIO som støttes av gpiod-biblioteket er nå med: http://linuxcnc.org/docs/2.9/html/drivers/hal_gpio.html