Monday, 18 May 2026

"New" PC for the Bantam Linuxcnc machine - installing Trixie and Probe Basic Lathe

Here's the process recommended by Chris Polanski for installing Debian 13 "Trixie" and Probe Basic. This is what I followed.

Probe Basic Trixie APT Develop Install

Probe Basic APT development install guide for Debian 13 Trixie

Important Requirements

  • Probe Basic is currently designed for 1920x1080 screen sizes only.

  • Probe Basic requires graphics hardware that supports OpenGL 3.2 and OpenGL Shading Language (GLSL) 1.50 or later.

  • LinuxCNC must be installed before installing QtPyVCP and Probe Basic packages.

Installation Steps

1. Download the LinuxCNC Debian 13 Trixie PREEMPT-RT ISO

Download from:

https://www.linuxcnc.org/iso/linuxcnc_2.9.8-amd64.hybrid.iso

This Debian 13 Trixie ISO installs Debian with the required PREEMPT-RT kernel and LinuxCNC uspace package.

2. Update the system

sudo apt update
sudo apt upgrade

3. Install LinuxCNC (if not installed)

sudo apt install linuxcnc-uspace

4. Add the Trixie develop APT repository

AMD64 for PC installation repository:

sudo apt install curl
echo 'deb [arch=amd64] https://repository.qtpyvcp.com/apt trixie-dev main' | sudo tee /etc/apt/sources.list.d/kcjengr.list
curl -sS https://repository.qtpyvcp.com/repo/kcjengr.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/kcjengr.gpg
gpg --keyserver keys.openpgp.org --recv-key 2DEC041F290DF85A

ARM64 for Raspberry Pi 4 and 5 installation repository:

sudo apt install curl
echo 'deb [arch=arm64] https://repository.qtpyvcp.com/apt trixie-dev main' | sudo tee /etc/apt/sources.list.d/kcjengr.list
curl -sS https://repository.qtpyvcp.com/repo/kcjengr.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/kcjengr.gpg
gpg --keyserver keys.openpgp.org --recv-key 2DEC041F290DF85A

5. Update repositories

sudo apt update

6. Install QtPyVCP and Probe Basic

sudo apt install python3-qtpyvcp
sudo apt install python3-probe-basic

Updating and Configuration

Probe Basic and QtPyVCP update through normal APT upgrades.

sudo apt update
sudo apt upgrade

Done. Then use the configuration files I (ie Claude) saved to my github repository to get it working with my machine. The initial install is actually a simulation version, so the next step in the process is to replace the various sim files with "real" ones.

Here's what I have from the previous sessions:

  • Machine: Lenovo ThinkStation P330 Tiny (i7-8700T), replacing Bay Trail (which had the VLP52 Intel GPU errata)
  • Hardware: Mesa 5i25/7i76, not yet moved across
  • Software: PBL installed, sim working. Config files in GitHub (pb_lathe_murray/). Custom Qt Lathe Cycles tab on branch feature/qt-lathe-macros. All .ngc subroutines fixed and tested.
  • Pending: SVG label positioning for the cycles tab, CONVERSATIONAL tab hiding

Recommended migration sequence:

Phase 1 — Software (no hardware needed yet)

  1. Clone your GitHub repo onto this machine into the right location
  2. Point PBL at the pb_lathe_murray/ config and test in sim — this validates your ini/hal before any hardware is involved
  3. Audit /usr/lib/python3/dist-packages/probe_basic/vtk_backplot.py — the new PBL install may already have the upstream fixes; compare before re-patching
  4. Check probe_basic_lathe.py for the BACK_TOOL_LATHE default view fix
  5. Verify SPINDLES=1 in [TRAJ] in your ini
  6. Hide the CONVERSATIONAL tab (the sudo python3 one-liner from previous notes)
  7. Check display config (VGA-1 primary at x=1920, HDMI-1 at x=0) — adjust xrandr/monitor setup if needed

Phase 2 — Hardware swap

  1. Power off both machines, move Mesa 5i25/7i76 (and any cabling to 7i76)
  2. Boot new machine, verify lspci shows the Mesa card
  3. Check grub params — i915.enable_rc6=0 etc. probably not needed on the P330's UHD 630; remove if present
  4. Check /etc/X11/xorg.conf.d/SWcursor/AccelMethod=none workarounds probably not needed either; remove and test
  5. Run LinuxCNC with your hardware ini, check axis homing and motion

Phase 3 — Finish up

  1. Run latency test — P330 should be significantly better than Bay Trail; tune servo thread if needed
  2. Continue SVG label positioning session for the cycles tab

Before you power anything off, let's do the pre-swap checks on this machine while it's running.

All clear:

  • Grub: clean — no old Bay Trail i915 workarounds to remove
  • Xorg: no config files — no SWcursor/AccelMethod hacks needed (good, P330 GPU is fine)
  • mesaflash 3.5.11: already installed

Hardware swap procedure:

  1. Power off old machine, remove Mesa 5i25 from PCIe slot

  2. Install 5i25 in the P330 (it has a PCIe x1/x4/x16 slot — any will work)

  3. Re-connect the ribbon cable to the 7i76

  4. Power on the P330, then run:

    lspci | grep -i mesa
    

    You should see the 5i25 listed. If not, reseat the card before going further.

  5. Then launch LinuxCNC with your config:

    linuxcnc /home/murray/linuxcnc/configs/pb_lathe_murray/probe_basic_lathe.ini

The 5i25 stores the bitfile in onboard flash, so it survives power cycles and the move. As long as you're not changing the firmware configuration (same 7i76 + 8i85 setup), mesaflash won't be needed at all.

That worked fairly well, although some finessing of the lathe cycles was required - more on this later.

Worst of all, adding the lathe cycles seems to have pushed the bottom row of buttons off the screen.

This will require some work....

No comments:

Post a Comment

Tidy up the cabinet wiring

Previously (when I started this build a few years ago), I put work on hold while I wrestled with trying to implement Andy Pugh's macros....