
Do instalacji zadajnika WHB04B potrzebujemy komputer z zainstalowanym i działającym LinuxCNC na systemie Debian 9 i ze stabilnym połączeniem z internetem.
Z urządzeniem firma MachMaker dostarcza spakowany katalog xhc-whb04b-6 DEB9 LCNC2_9.zip dostępny do pobrania pod adresem http://machmaker.pl/1_5_pliki-do-pobrania.html . Należy go rozpakować w wygodnym miejscu (np. na pulpicie).
Otwieramy terminal i wpisujemy w terminal kolejno następujące polecenia. Zatwierdzamy polecenia klawiszem ENTER, jeśli wymagane będą jakieś potwierdzenia to również je zatwierdzamy.
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install dirmngr
sudo apt-get install software-properties-common
sudo apt-get install gnome-commander
sudo apt-get install git
Instalujemy LinuxCNC 2.9 wpisując w terminal i zatwierdzając kolejno klawiszem Enter:
sudo apt-key adv --keyserver hkp://keys.gnupg.net --recv-key E0EE663E
sudo add-apt-repository "deb http://buildbot.linuxcnc.org/ stretch master-rtpreempt"
sudo apt-get update
sudo apt-get install linuxcnc-uspace
sudo apt install linuxcnc-uspace-dev
Uruchamiamy LinuxCNC i sprawdzamy czy działa poprawnie w wersji 2.9.
Podłączamy odbiornik USB naszego zadajnika do gniazda USB komputera. W terminalu wpisujemy następujące polecenie:
lsusb

Wyświetli się lista urządzeń a między innymi nasze urządzenie ( na obrazku powyżej zaznaczone w czerwonej ramce). Jeśli urządzenie się nie wyświetla, to należy sprawdzić czy jest poprawnie podłączone lub ewentualnie uruchomić ponownie komputer i powrócić do polecenia lsusb)
W ramce żółtej znajduje się adres naszego urządzenia. W tym przypadku jest to adres 10ce:eb93. Jeśli wyświetli się taki właśnie adres, to nic nie trzeba zmieniać ponieważ taki zapisany jest w pliku konfiguracyjnym. Jeśli natomiast znajduje się tam inny adres, to należy wejść do dostarczonego katalogu xhc-whb04b-6 DEB9 LCNC2_9 i w edytorze tekstu otworzyć plik 99-xhc-whb04b-6.rules.
Należy zmienic wartości odpowiedzialne za adres i zapisać plik:
ATTR{idProduct}=="eb93", ATTR{idVendor}=="10ce", MODE="0666", OWNER="root", GROUP="plugdev"
Uruchamiamy menadżer plików z uprawnieniami administratora wpisując w terminal:
sudo gnome-commander
Kopiujemy dostarczony plik 99-xhc-whb04b-6.rules do katalogu /etc/udev/rules.d/
Zamykamy gnome-commander
Następnie w terminalu uruchom polecenie
sudo udevadm trigger
Zamykamy terminal
Uruchamiany nowy terminal w katalogu użytkownika i wpisujemy:
sudo git clone https://github.com/LinuxCNC/linuxcnc linuxcnc-dev
W katalogu użytkownika powstanie nowy katalog linuxcnc-dev
Uruchamiamy menadżer plików z uprawnieniami administratora wpisując w terminal:
sudo gnome-commander
Kopiujemy dostarczony katalog hc-whb04b-6 do katalogu linuxcnc-dev/src/hal/user_comps/
Przez gnome-commander wchodzimy do katalogu linuxcnc-dev/src/
W edytorze tekstu otwieramy plik Makefile
Odszukujemy sekcję SUBDIRS i wklejamy ścieżkę do naszego hal
hal/user_comps/xhc-whb04b-6

Zapisujemy i zamykamy plik Makefile.
Zamykamy gnome-commander
Otwieramy nowy terminal i wklejamy kolejno polecenia, zatwierdzamy enterem, potwierdzamy jeśli konieczne:
sudo apt-get install autoconf automake pkg-config libgtk-3-dev
sudo apt-get install autoconf autogen
sudo apt-get install libmodbus-dev
sudo apt-get install libusb-1.0-0-dev
sudo apt-get update
sudo apt install libboost-python-dev netcat libmodbus-dev yapps2
sudo apt-get install yapps2
sudo apt install dh-python libudev-dev tcl8.6-dev tk8.6-dev
sudo apt install libreadline-gplv2-dev asciidoc dblatex docbook-xsl dvipng
sudo apt install graphviz groff imagemagick inkscape python-lxml source-highlight
sudo apt install texlive-extra-utils texlive-font-utils texlive-fonts-recommended
sudo apt install texlive-lang-cyrillic texlive-lang-french texlive-lang-german
sudo apt install texlive-lang-polish texlive-lang-spanish texlive-latex-recommended
sudo apt install w3c-linkchecker xsltproc asciidoc-dblatex python-dev libxmu-dev
sudo apt install libglu1-mesa-dev libgl1-mesa-dev libgtk2.0-dev intltool
cd linuxcnc-dev/src
sudo ./autogen.sh
sudo ./configure
sudo make
sudo make setuid
Uruchamiamy menadżer plików z uprawnieniami administratora wpisując w terminal:
sudo gnome-commander
Kopiujemy wygenerowany plik bin xhc-whb04b-6 z katalogu /linuxcnc-dev/bin/ do katalogu /usr/bin/
zamykamy gnome-commander
Zamykamy wszystko i otwieramy nowy terminal
W terminalu wpisujemy:
sudo udevadm trigger
Może to spowodować chwilowe przyblokowanie systemu, należy cierpliwie poczekać.
Następnie wklejamy w terminal:
halrun
Jeśli halrun będzie działać, wklejamy następnie
loadusr xhc-whb04b-6

i klikamy Enter.
Uruchamiamy nasz zadajnik i kręcimy kółkiem lub wciskamy przyciski, powinny się pojawiać w terminalu sygnały od zadajnika.

Naciskamy ctrl + c i zamykamy terminal.
Kopiujemy dostarczony plik xhc-whb04b-6.hal do swojego katalogu gdzie mamy ustawienia frezarki (tam gdzie między innymi znajduje się plik .ini)
Otwieramy w edytorze tekstu swój plik .ini i do sekcji [HAL] wklejamy
HALUI = halui
oraz
HALFILE = xhc-whb04b-6.hal
Do sekcji [HALUI] wklejamy
MDI_COMMAND=(debug,00)
MDI_COMMAND=(debug,macro1)
MDI_COMMAND=(debug,macro2)
MDI_COMMAND=(debug,macro3)
MDI_COMMAND=(debug,macro4)
MDI_COMMAND=G1 G53 X0 Y0 Z0 F4000
MDI_COMMAND=(debug,macro6)
MDI_COMMAND=G1 X0 Y0 Z0 F4000
MDI_COMMAND=(debug,macro8)
MDI_COMMAND=(debug,macro9)
MDI_COMMAND=(debug,macro10)
MDI_COMMAND=(debug,macro11)
MDI_COMMAND=(debug,macro12)
MDI_COMMAND=(debug,macro13)
MDI_COMMAND=(debug,macro14)
MDI_COMMAND=(debug,macro15)
MDI_COMMAND=(debug,macro16)
MDI_COMMAND=G1 G53 Z0 F4000
MDI_COMMAND=(debug,macro17)
MDI_COMMAND=(debug,macro18)
MDI_COMMAND=(debug,macro19)

Następnie należy zaktualizować sekcję [DISPLAY]
Jeśli nie wiesz co ustawić, na początek po prostu zamień to co masz w sekcji DISPLAY na następujący kod:
[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MIN_FEED_OVERRIDE = 0.000000
MAX_FEED_OVERRIDE = 1.200000
MAX_SPINDLE_OVERRIDE = 1.5
MIN_SPINDLE_OVERRIDE = 0.1
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/cnc/linuxcnc/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 6.000000
MAX_LINEAR_VELOCITY = 83.3333
MIN_LINEAR_VELOCITY = 0.500000
DEFAULT_ANGULAR_VELOCITY = 12.000000
MAX_ANGULAR_VELOCITY = 180.000000
MIN_ANGULAR_VELOCITY = 1.666667
EDITOR = gedit
GEOMETRY = xyz
Sprawdzamy jeszcze, czy mamy ustawioną sekwencję bazowania. W pliku .ini definiuje się te w dodając parametr HOME_SEQUENCE dla każdej osi. Jeśli w ustawieniach twojej maszyny jest już takie ustawienie to nie musisz nic robić. Jeśli natomiast nie masz ustawionych sekwencji bazowania wklej następującą wartość dla każdej z osi:
HOME_SEQUENCE = 0

Zapisz i zamknij plik .ini.
Uruchom LinuxCNC, zadajnik powinien już działać prawidłowo.
UWAGA!
Jeśli uruchomimy wbudowany w LinuxCNC kreator np. Stepconf Wizard to nadpisze on plik .ini i zadajnik przestanie działać. W takiej sytuacji trzeba zaktualizować na nowo plik .ini.