1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.

"HanWheel" XHC-HB04 et LinuxCNC

Discussion dans 'EMC2 / LinuxCNC' créé par SkippyLeChat, 3 Mars 2014.

  1. SkippyLeChat

    SkippyLeChat Compagnon

    Messages:
    996
    Inscrit:
    20 Août 2011
    Localité:
    Nantes
    "HanWheel" XHC-HB04 et LinuxCNC
    Bonjour,
    Avant de bosser pour rien (ça s'est vu !), est-ce que ça intéresse quelqu'un de savoir comment configurer LinuxCNC pour utiliser une "handwheel" prévue pour Mach3 ?
    C'est faisable, la preuve :
    A+
    Skippy

    XHC-HB04 LinuxCNC.jpg
     
  2. rddt

    rddt Ouvrier

    Messages:
    464
    Inscrit:
    25 Avril 2010
    Localité:
    toit du Var
    "HanWheel" XHC-HB04 et LinuxCNC
    Salut SkippyLeChat

    Oui oui, ça m'intéresse fortement, j'espere qu'il y aura d'autres candidats. :smt023
    @++
     
  3. SkippyLeChat

    SkippyLeChat Compagnon

    Messages:
    996
    Inscrit:
    20 Août 2011
    Localité:
    Nantes
    "HanWheel" XHC-HB04 et LinuxCNC
    Bon ben ça va être mon boulot de demain...
    Pour ce qui est de l'affichage et de la commande des déplacements X,Y,Z avec la handwheel, ça marche...
    Pour de qui est des boutons, je suis à faire une adaptation... à mes habitudes. Qui ne conviendront pas forcément à tout le monde. J'essayerai d'expliquer le principe.
    La Handwheel en question est la XHC-HB04. J'utilise celle-là, mais il y a en a d'autres (sans fil par exemple) qui iront pareil !
    A suivre...
    Skippy
     
  4. SkippyLeChat

    SkippyLeChat Compagnon

    Messages:
    996
    Inscrit:
    20 Août 2011
    Localité:
    Nantes
    "HanWheel" XHC-HB04 et LinuxCNC
    HandWheel" XHC-HB04 et LinuxCNC

    C’est parti !

    Tout d’abord, une précision : je ne suis pas l’auteur la chose. Celle-ci est l’œuvre d’un développeur anglophone qui a mis à disposition ses travaux dans le wiki de Linuxcnc.org. Malheureusement, comme beaucoup de dieux vivants de l’informatique, il est très fort pour réaliser un soft complexe, mais semble ne pas voir la nécessité d’explications basiques pour les simples mortels comme vous et moi.

    J’ai donc essayé de ramener ça à une dimension plus humaine – et en bon français - pour que l’adaptation soit réalisable par quelqu’un dont le niveau correspond à savoir comment lancer le terminal de Linux, se doute à quoi sert une commande comme « sudo gedit… » et est capable de se balader dans les répertoires avec « cd ..» et « dir ». Ce qui est à peu près mon niveau sous Linux ! Petit rappel : contrairement à DOS, Linux fait la différence entre majuscule et minuscule… Ne pas s’énerver et se relire avant de taper Entrèe !

    La Handwheel Xhc-HB04

    Si aujourd’hui (le 3/3/2014) on tape « handwheel » dans la fenêtre de recherche d’ebay, on trouve un ancien modèle venant de Hong-kong et pour lequel a été développé le soft. Il a 16 boutons dont X=0, Y=0, Z=0. Si on étend la recherche au monde entier, on trouve un modèle chinois plus récent, avec cordon usb et équipé de 18 boutons. En cherchant encore un peu on trouve des modèles similaires « whireless ». Sur les modèles récents les boutons X=0, Y=0, Z=0 ne sont plus là et ce sera une des causes de nos petits soucis. Il existe également un modèle avec pleins de boutons et pas de molette = pas ça !
    Les prix, whireless ou pas se situent entre 75€ et 90€
    J’utilise le modèle chinois avec 18 boutons, une molette et un cordon Usb. C’est celui-là dont au sujet duquel je vais causer. Pour l’anecdote, il a mis 2 ½ mois à venir à pied de la Chine, parce que j’ai été assez couillon pour le commander au moment du nouvel an chinois !

    On va procéder en 2 étapes :
    1 - D’abord faire marcher la handwheel proprement dite et son affichage de position.
    2 - Ensuite voir ce que l’on peut faire avec les boutons qui, s’ils conviennent à Mach3 ne sont pas adaptés à l’interface Axis de LinuxCNC.

    J’ai supposé que l’installation de Linuxcnc a été faite de façon standard (nom des répertoires, etc.) Sinon, faudra s’adapter…

    Les liens utiles :
    => la page wiki de LinuxCNC.org où est – succinctement - décrite la manip.
    => un échange sur le forum LinuxCNC.org où l’auteur papote avec des amis.
    => la liste de Pins Halui qui sera bien utile pour configurer sur les boutons.
    => je ne vous fais pas l'injure d'un lien vers le manuel Gcode :-D Mais personnellement j'en ai toujours besoin !

    I- Faire marcher la Handwheel et l’affichage

    a) Installer les outils et bibliothèques nécessaires. Dans le terminal, passer les commandes suivantes :

    sudo apt-get install linuxcnc-dev
    sudo apt-get install libc6-dev
    sudo apt-get install libusb-1.0-0-dev


    (Si ces modules sont déjà installés, ça le dira, mais ce n’est pas grave…)

    b) Créer un fichier « 90-xhc.rules » dans le répertoire protégé « /etc/udev/rules.d ». Pour cela, dans le terminal, passer la commande :

    sudo gedit /etc/udev/rules.d/90-xhc.rules


    L’éditeur Gedit ouvre le nouveau fichier, copier la ligne suivante et coller-là dans le nouveau fichier :

    SYSFS{idProduct}=="eb70", SYSFS{idVendor}=="10ce", MODE="666", OWNER="root", GROUP="users"


    Ce fichier est indispensable pour permettre l’accès au port USB. Un reboot de la machine est nécessaire pour qu’il soit pris en compte.

    c) Dans le terminal, créer un répertoire réservé aux fichiers sources de la XHC-HB04 avec les 2 commandes suivantes :

    cd linuxcnc
    mkdir XHC-HB04


    d) Télécharger le fichier archive upload:xhc-hb04-V06.tgz

    e) Extraire les fichiers dans le répertoire nouvellement créé : XHC-HB04. L’extracteur créé un sous-répertoire \src… tant pis !

    f) Avec le terminal, aller dans ce sous-répertoire et lancer les make suivants

    (cd linuxcnc) <= si nécessaire
    cd src
    make
    make install

    (A noter que pour revenir en arrière, la commande est make clean)

    A partir d'ici, si vous souhaiter adopter ma config, ou vous en servir de base pour créer la vôtre, vous pouvez sauter les étapes suivantes et passer à "II- Configuration des boutons"

    g) Copier les fichiers xhc-hb04.hal et xhc-hb04-layout*.ini dans le répertoire « config » de la machine CNC qui utilisera la handwheel

    h) Pour commencer les tests, il va vous falloir rajouter a minima une ligne dans la section [HAL] du fichier <mamachine>.ini :

    [HAL]
    ...
    HALFILE = xhc-hb04.hal


    A noter que si vous utilisez stepconf pour modifier la config de cette machine, cette ligne (et les autres que vous aurez été amené à rajouter) disparaitra. Il est donc prudent d’archiver les modifications du fichier <mamachine>.ini dans un autre fichier pour pouvoir les récupérer !

    Dans le fichier xhc-hb04.hal on peut choisir si on utilise un modèle 16 boutons (layout1.ini) ou 18 boutons (layout2.ini) en adaptant la ligne :

    loadusr -W xhc-hb04 -I xhc-hb04-layoutN.ini -H

    Premiers tests

    Si toutes les étapes précédentes ont été menées correctement, lorsque vous allez lancer Linuxcnc... Et ça ne marchera pas ! Ha ha ! Je vous ais bien eu ! :lol: Non, je déconne. Ça ne marchera probablement pas, mais avec les informations de débogage, on peut s’en sortir.

    Dans le fichier Linuxcnc errors (qui s’ouvre automatiquement quand ça plante), à la rubrique « debug file information » et après des chouineries can’t find gna gna, on trouve des lignes utiles comme :

    xhc-hb04.hal:31: Pin ‘halui.jog.3.plus’ does not exist

    Cette ligne veut dire qu’il y a une erreur dans le fichier hal à la ligne 31. On va en ligne 31, on met un caractère # devant la ligne (elle devient un commentaire) et on refait un test.

    Comme annoncé plus haut, il est probable que toutes les lignes relatives aux boutons X=0, Y=0, Z=0 vont devoir être passées en commentaires : normal, ces boutons n'existent pas

    Si la ligne d’erreur parle d’autre chose que les Pins de hal (accès à l’usb par exemple, c’est que vous avez loupé une étape… vérifiez et recommencez)

    Normalement, ça va finir par marcher et à ce stade de l’affaire on doit pouvoir commander les déplacements en X, Y, et Z. L’affichage est mis à jour avec les positions absolues et relatives.

    Pour les boutons, c’est une autre paire de manche.

    II- Configuration des boutons

    La configuration des boutons dépendra des habitudes et préférences de chacun. L'un voudra ci, l'autre ça... Et puis je ne suis pas sûr d'être le plus représentatif des utilisateurs de LinuxCNC. Donc, ce que je vous propose : vous téléchargez ma config (fichier joint), je vous la commente, et si elle vous plaît tel quel vous l'adoptez sinon vous l'adaptez :-D

    Donc, pour mettre la config que je vous propose en service, il faut :
    - supprimer du répertoire config de la machine qui utilisera le handwheel tous les fichiers qu'on a pu y mettre lors de la première étape (ça fera du ménage). C'est à dire les fichier xhc-hb04-layout*.ini, le fichier xhc-hb04.ini, xhc-hb04.hal, etc.
    - décompresser le fichier xhc-hb04-skippy.tar dans le répertoire config
    - aller dans le fichier Lisez-moi-xhc-hb04.txt pour y chercher les lignes à copier dans le fichier <mamachine>.ini

    Il y a aussi le fichier bouton-xhc-hb04.pdf avec l'image qui m'a servi à faire un masque pour "habiller" la handwheel (photo)

    En résumant, les boutons du XBC-HB04 peuvent être associés à des Pins halui ou bien associés à des commandes manuelles en GCode (mdi commands) :
    - Ces commandes mdi sont écrites dans une section [HALUI] du fichier <mamachine>.ini
    - La déclaration (le nommage) des boutons est faite dans le fichier xhc-hb04.ini
    - l'association entre boutons et pins halui ou commandes mdi est faite dans le fichier xhc-hb04.hal (les 2 derniers paragraphes)

    A partir de là, le mieux est de regarder comment c'est fait ! Et puis, vu le déchaînement de passions pour ce topic :-D - je vais pas y passer la nuit non plus ! Félicitations à ceux qui m'ont lu jusqu'au bout. N'étant pas nombreux, ils ont le droit de faire un petit coucou en laissant un post : je me sentirai moins seul ! Si par miracle, mon boulot permet à quelqu'un d'adapter une handwheel... là ce serait la consécration !
    A+
    Skippy

    Normalement, tout est dans le fichier archive...
    Edit : si ça peut rassurer les inquiets : je viens de configurer une machine "vierge" en suivant la procédure pas à pas. = à peine 10 minutes, marche du premier coup.
    A noter que le module libc6-dev était déjà présent et qu'il manquait la ligne HALUI=halui dans le .ini Voir la pièce jointe xhc-hb04-skippy.tar
     
  5. pascalp

    pascalp Compagnon

    Messages:
    939
    Inscrit:
    30 Août 2007
    Localité:
    Agen, Sud-Ouest
    "HanWheel" XHC-HB04 et LinuxCNC
    Mais non, tu n'est pas seul ! Et merci pour m'avoir re-motivé.
    Je finirais bien un jour par installer un de ces appendices sur mon système.
    Ce type de commande m'inspire beaucoup plus qu'un gamepad bidouillé.

    edit : je viens de passer la phase 1, la commande du paddle

    Pour la fiche "boutons", une impression couleur plastifiée c'est bon ?
    Pour le Z, je préfère assigner un 0 origine en position haute (switch fin de course). C'est la seule position indépendante de l'outil installé.
     
  6. SkippyLeChat

    SkippyLeChat Compagnon

    Messages:
    996
    Inscrit:
    20 Août 2011
    Localité:
    Nantes
    "HanWheel" XHC-HB04 et LinuxCNC
    Ah mais je suis tout motivé là ! Miaou !
    Pour le "patch" des boutons... C'est pas très brillant non plus mon truc. En fait j'ai fait le dessin sur Autocad , j'ai imprimé à l'échelle sur du papier auto-collant et je fais tenir le tout par dessus les boutons d'origine avec du BelnDerm qui trainait sur l'établi.
    C'est sûr que si il a moyen un jour de faire sérigraphier un truc en plastique, ce serait royal !
    Si tu veux, je peux te dessiner une config personnalisée... C'est pas le temps que ça prend. Suffit de me dire où tu veux tes boutons
    Je me remets à faire préparer les fichiers .ini et .hal
    A+
    Skippy

    Edit : C'est fait... le dossier doit être complet . A vous de jouer !
     
  7. toff

    toff Compagnon

    Messages:
    712
    Inscrit:
    1 Novembre 2008
    Localité:
    60157 Oise
    "HanWheel" XHC-HB04 et LinuxCNC
    Je n'ai toujours pas de quoi tester mais je garde ton post sous le coude. Et merci pour le travail fourni :wink:
     
  8. rddt

    rddt Ouvrier

    Messages:
    464
    Inscrit:
    25 Avril 2010
    Localité:
    toit du Var
    "HanWheel" XHC-HB04 et LinuxCNC
    Bonjour a tous

    Skippy
    Merci d'avoir partager tes connaissances sur le sujet, il ne me reste plus qu'a achetez une handweel, le nouvelle ans Chinois étant passer ca devrait arriver plus vite que la tienne.
    Une fois quelle sera la, un verre d'eau un tube d'aspirine et je m'attaquerais a Linux, a hal, ini et toute sa bande :mrgreen:

    Il est vrai qu'il y a pas foule, mais je pense que beaucoup de cniste utile Mach3 car la plupart des pc sont équipe de windobe, et de trifouiller dans des fichiers systèmes n'est pas donner a tout le monde quand on a peu de connaissance en la matière, et il y a ceux qui on Linux simplement pour faire fonctionner leur bécane sans trop vraiment savoir ce que ce soft a dans le ventre, puis il y a ceux qui reste dans l'ombre.
    Perso je trouve dommage qu'il n'y ai pas plus de monde qui s’intéresse a ce soft, car en plus d’être génial, performant, il est open source.

    Je ne pense pas que sa soit une question de miracle mais plutôt de motivation, car quand il y a motivation la consécration suis. :wink:

    ++
     
  9. SkippyLeChat

    SkippyLeChat Compagnon

    Messages:
    996
    Inscrit:
    20 Août 2011
    Localité:
    Nantes
    "HanWheel" XHC-HB04 et LinuxCNC
    Bonsoir Rddt !
    Si tu n'as pas encore commandé ta HandWheel...
    J'utilise celle avec un fil. Et je me demande si je n'ai pas fait une erreur : c'est long, chiant et ça traîne partout.
    A tout hasard, je te signale que les wireless ne coûtent pas beaucoup plus cher.
    Il y a aussi un truc pratique sur ces boitiers : il y a des aimants sur le fond et c'est bien pour peu qu'on fixe un bout de ferraille là ousqu'on veut le ranger.
    Bref,
    Dès que que tu as reçu le bazar, n'hésite pas à me relancer par un MP si tu as besoin d'aide. L'aspirine ne sera pas nécessaire : ce matin j'ai fait la manip sur une machine "vierge" et cela m'a pris à peine 10mn. Recommandations : suivre scrupuleusement mon doc et surtout se relire avant de faire "entrée"
    A+
    Skippy
     
  10. pascalp

    pascalp Compagnon

    Messages:
    939
    Inscrit:
    30 Août 2007
    Localité:
    Agen, Sud-Ouest
  11. pascalp

    pascalp Compagnon

    Messages:
    939
    Inscrit:
    30 Août 2007
    Localité:
    Agen, Sud-Ouest
    "HanWheel" XHC-HB04 et LinuxCNC
    J'ai reçu le paddle. La première impression à l'ouverture du carton est bonne.
    Je viens de le brancher et de vérifier la connexion avec mach3 (sans la cnc), ça fonctionne.
    Prochaine étape linuxcnc, puis le fonctionnement avec la CNC en ligne.
     
  12. vax

    vax Modérateur

    Messages:
    3 470
    Inscrit:
    5 Mars 2008
    Localité:
    Guipavas (près de Brest)
    "HanWheel" XHC-HB04 et LinuxCNC
    Coucou Skippy, merci merci beaucoup pour ce partage,

    Promis que si j'avais vu ton post avant je me serais manifesté plus tôt pour t'encourager dans ce travail de rédaction très clair.
    Encore un grand merci.
     
  13. Barbidou

    Barbidou Compagnon

    Messages:
    605
    Inscrit:
    1 Novembre 2012
    Localité:
    Yvelines
    "HanWheel" XHC-HB04 et LinuxCNC
    Bonsoir,

    N'étant pas très régulier ici ces derniers temps, je découvre tout juste ce sujet...

    Eh bien ce "handwheel" sera certainement une des premières option que l'on s'offrira quand notre machine de la SAF tournera...

    Un grand merci pour ce tuto qui nous servira très certainement.

    Il nous reste quand même à finir la machine à mettre au bout du fil...
     
  14. pascalp

    pascalp Compagnon

    Messages:
    939
    Inscrit:
    30 Août 2007
    Localité:
    Agen, Sud-Ouest
    "HanWheel" XHC-HB04 et LinuxCNC
    Ca dialogue/fonctionne avec linuxcnc.
    J'ai pas pris trop de risque, c'est dans une machine virtuelle avec la cnc AXIS de test !
     
  15. SkippyLeChat

    SkippyLeChat Compagnon

    Messages:
    996
    Inscrit:
    20 Août 2011
    Localité:
    Nantes
    "HanWheel" XHC-HB04 et LinuxCNC
    Vraiment content d'avoir fait avancer le schmiliblic...
    Dans vos actions de grâces, n'oubliez pas cependant l'auteur principal : un certain Frederic dont le pseudo est f1oat sur le forum Linuxcnc :prayer:

    Pour le clavier, j'avais fait ailleurs un appel aux idées et suite à la suggestion de notre ami Coredump le problème me semble résolu :
    J'ai trouvé en grande surface (Leclerc) un produit qui est très bien : Autocollant extérieur. C'est compatible avec une imprimante jet d'encre.
    Destiné à un usage agressif (clavier) j'ai collé par dessus un autre plastique transparent autocollant pour le protéger.
    Coté collage, ça à l'air de bien accrocher.

    Skippy

    XHC-HB04 LinuxCNC.jpg
     

Partager cette page