Es gab hier diverse Ansätze und auch immer wieder Sackgassen oder Projekte, die ich angefangen und über Bord geworfen habe. Angefangen habe ich mit gmocappy als VCP bin inzwischen aber bei qtpyvcp bzw. Probe Basic angekommen, das auf qtpyvcp basiert.

Fangen wir an mit der Installation von linuxcnc. Hier die Version, die am schnellsten funktioniert hat:

http://www.linuxcnc.org/testing-stretch-rtpreempt/

Passende Iso aus suchen, runter laden und auf einen USB Stick flashen. Nach der Installation geht es dann weiter. Ich habe linuxcnc auf version 2.8 gehoben:

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install dirmngr
sudo apt-get install software-properties-common
sudo apt-key adv --keyserver hkp://keys.gnupg.net --recv-key E0EE663E
sudo add-apt-repository "deb http://buildbot.linuxcnc.org/ stretch 2.8-rtpreempt"
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt install python-pyqt5 python-pyqt5.qtquick python-dbus.mainloop.pyqt5 python-pyqt5.qtopengl python-pyqt5.qsci python-pyqt5.qtmultimedia qml-module-qtquick-controls gstreamer1.0-plugins-bad libqt5multimedia5-plugins pyqt5-dev-tools python-dev python-setuptools python-pip git apt install qttools5.dev qttools5-dev-tools python-pip locate mc build-essential autoconf glib* pkg-config libmodbus-dev libusb-1.0-0-dev glib glib-dev libc libc-dev libgtk2.0 libgtk2.0-dev yapps2 intltool-extract intltool tcl-dev tk-dev libreadline-gplv2-dev libboost-python-dev Xmu Xmu-dev libxmu libxmu-headers libxmu* autoconf

Damit müsste eigentlich alles installiert sein, was benötigt wird um Linuxcnc mit Probe Basic ans laufen zu bekommen und noch etwas mehr. Was folgt ist die Installation von qtpyvcp und ein Neustart

git clone https://github.com/kcjengr/qtpyvcp qtpyvcp
cd qtpyvcp
pip install --editable .
cd ~/qtpyvcp/pyqt5designer/Qt5.7.1-64bit/
sudo ./install.sh
cp ~/qtpyvcp/scripts/.xsessionrc ~/
sudo reboot

Nach dem Neustart geht es an Probe Basic:

git clone https://github.com/kcjengr/probe_basic.git
cd probe_basic/
pip install -e .
cp -r ~/probe_basic/probe_basic/fonts/ ~/.local/share/
cp -r ~/probe_basic/config/probe_basic/ ~/linuxcnc/configs/

Damit sind die ersten Installationen abgeschlossen. Wir haben ein Linux mit Echtzeit-Kernel und Linuxcnc. Den ganzen Latenzkram hatte ich schon lit nem live system getestet und das ist eigentlich recht gut beschreiben, daher machen wir mit den Mesa Karten weiter. Meine Mesakarte wird per Ethernet angesprochen also musste zunächst eine Netzwerk Karte dafür reserviert werden. Ich verwende die Standard-IP der 7i92 (192.168.1.121) die Netzwerkschnittstelle wurde manuell konfiguriert und auf RT umbenannt, IPv4 manual, 192.168.1.100 mit netmask 255.255.255.2 und gateway 192.168.1.100 eingestellt. IPv6 wird auf ignore gestellt. Wenn alle Kabel und Jumper überprüft sind, kann man die Stromversorgung einschalten. Danach sollte sich Lunux schon mal melden, dass RT verbunden wurde.

ping 192.168.1.121 
PING 192.168.1.121 (192.168.1.121) 56(84) bytes of data.
64 bytes from 192.168.1.121: icmp_seq=1 ttl=64 time=0.577 ms
64 bytes from 192.168.1.121: icmp_seq=2 ttl=64 time=0.338 ms
64 bytes from 192.168.1.121: icmp_seq=3 ttl=64 time=0.313 ms
64 bytes from 192.168.1.121: icmp_seq=4 ttl=64 time=0.361 ms


Damit ist die erste Kontaktaufnahme geglückt. Jetzt muss die Mesa 7I92 noch geflashed werden. Die passenden Software gibt es von Mesa:

http://www.mesanet.com/software/parallel/7i92.zip

Das ganze auspacken und dann die passende Firmware raus suchen in meinem Fall mit der Default IP und 7i77 und 7i72 Bords die Firmware 7i92_7i77_7i74D.bit

cd ~/Downloads/7i92/utils/linux/ 
chmod +x mesaflash 
sudo ./mesaflash --device 7i92 --write ../../configs/7i92_7i77_7i74D.bit 
sudo ./mesaflash --device 7i92 --verify ../../configs/7i92_7i77_7i74D.bit

Damit sind alle Grundvoraussetzungen erfüllt, das wir mit der Konfiguration starten können.