I'm excited to announce that we now have experimental packages of the
2.7 prerelease branch for Debian Jessie which work with "uspace"
realtime.  Seb Kuzminsky recently did the required work on the debian
packaging and buildbot setup to enable this. Thanks Seb!

"uspace" realtime is for systems which don't need a "base thread", such
as systems using FPGA motion control cards.  Configurations which
require software step generators or encoders are generally not suitable.

Unfortunately, the installation process is not (yet) friendly, and due
to the missing "aufs.ko" kernel module it doesn't look like a live
install iso is feasible at this time.  Please only try these
instructions if you feel confident you understand what each instruction
is doing, and don't replace a working stable linuxcnc installation with
this version yet.

Reportedly, the -rt kernel version packaged for Debian (4.1.3-rt3)
crashes for some people, see reports here

    http://mid.gmane.org/55C39E5E.3060500%40ccrma.stanford.edu
    http://mid.gmane.org/55CB8FAE.9020309%40ti.com
    http://mid.gmane.org/loom.20150817T051749-439%40post.gmane.org

There's a newer patch (4.1.5-rt5) but that hasn't been picked up in
jessie-backports yet.  I have 16 days of uptime on 4.1.3-rt1 on my
laptop (including lots of suspend-resume cycles), so these problems
don't seem to affect everyone.  Incidentally, that laptop (lenovo t530)
tops out at about 100us latency after a few hours but seems to run
warmer than with a non-rt kernel.


Steps for installation:

1. Install Debian Jessie for x86 or amd64
2. Enable the "jessie-backports" repository
3. Add linuxcnc signing keys
4. Enable wheezy packages from the primary linuxcnc repository
5. Enable the linuxcnc buildbot 2.7-uspace repository
6. Install linuxcnc-uspace (optionally linuxcnc-uspace-dev)
7. Reboot into realtime kernel and use linuxcnc
8. Report your results on the mailing list.


1. Install Debian Jessie for x86 or amd64

Select an installer from
https://www.debian.org/releases/jessie/debian-installer/ and follow
Debian's instructions.  Reboot into your freshly installed system.
I recommend using the "xfce" desktop installation.


2. Enable the "backports" repository

As root, put the following lines in the new file
/etc/apt/sources.list.d/backports.list with your favorite plain-text
editor:

    deb     http://ftp.us.debian.org/debian/ jessie-backports main
    deb-src http://ftp.us.debian.org/debian/ jessie-backports main


3. Add linuxcnc signing keys

Debian uses GPG to ensure that the packages you receive are not altered
either accidentally or maliciously.  The LinuxCNC project uses one key
for regular releases and another key for buildbot releases.  Since only
a buildbot release is available initially, you will want to trust both
keys.

Run the following commands as root:

    # This command adds the buildbot signing key
    apt-key adv --keyserver hkp://keys.gnupg.net --recv-key E0EE663E 

    # This command adds the regular linuxcnc.org signing key
    apt-key adv --keyserver hkp://keys.gnupg.net --recv-key 8F374FEF
    

4. Enable wheezy packages from the primary linuxcnc repository

As root, put the following lines in the new file
/etc/apt/sources.list.d/linuxcnc.list with your favorite plain-text
editor:

    deb     http://www.linuxcnc.org/ wheezy base
    deb-src http://www.linuxcnc.org/ wheezy base

Yes, these lines say "wheezy" and not "jessie".  After the first
(pre)release of 2.7 is officially made for jessie, you will want to
change this file to

    deb     http://www.linuxcnc.org/ jessie base 2.7-uspace
    deb-src http://www.linuxcnc.org/ jessie base 2.7-uspace

5. Enable the linuxcnc buildbot 2.7-uspace repository

As root, put the following lines in the new file
/etc/apt/sources.list.d/linuxcnc-buildbot.list with your favorite plain-text
editor:

    deb     http://buildbot.linuxcnc.org/ jessie 2.7-rtpreempt
    deb-src http://buildbot.linuxcnc.org/ jessie 2.7-rtpreempt

Once the next LinuxCNC 2.7 (pre)release is made, you need to decide
whether you want the latest release version (in which case you remove
this file or comment out its contents) or a version with proposed
bugfixes which is updated frequently (in which case you can leave this
file as-is)


6. Install linuxcnc-uspace (optionally linuxcnc-uspace-dev)

As root, run these two commands:

    apt-get update
    apt-get install linuxcnc-uspace

If the first command encounters an error, it is probably because
something went wrong in steps 2-5.  In the second step you should expect
to see that apt-get is going to install a -rt kernel image such as
linux-image-4.1.0-0.bpo.1-rt-amd64, along with linuxcnc and a raft of
other required packages.


7. Reboot into realtime kernel and use linuxcnc

In most systems, the -rt kernel will be the default kernel but you may
have to interrupt your normal boot process to select it, particularly if
you use a multi-boot system where another OS installation manages the
bootloader.  You can check your kernel version and latency by starting
LinuxCNC and selecting the configuration "apps.latency.latency-histogram-1"


8. Report your results on the mailing list.

I've been using Debian Jessie as a development platform for LinuxCNC for
several months, and I've been using the 4.1.0-rt kernel for a couple of
weeks.  However, I haven't run any real CNC yet.  Be cautious and when
you run into trouble please make good bug reports about it, whether
formally on sourceforge or informally on the mailing list.

Jeff

------------------------------------------------------------------------------
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to