Contenu | Rechercher | Menus

Annonce

Ubuntu-fr vend de superbes t-shirts et de belles clés USB 32Go
Rendez-vous sur la boutique En Vente Libre

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#126 Le 04/08/2019, à 16:11

nicknemme

Re : Wacom Cintiq 24HD reconnue comme joystick

Merci pour le partage MJJM.
D'après moi, et ce que j'ai fait, ce sont sur les touches "express keys" (si tu en as) de ta tablette que tu dois appuyer et voir ce que cela te renvoie comme lettre sur un logiciel de traitement de texte (moi j'ai pris Kate ).
Ensuite il faut attendre une réponse de Naziel pour savoir ce qu'il en est.

Hors ligne

#127 Le 04/08/2019, à 17:21

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

Vu que le programme qui est censé permettre de paramétrer la tablette graphique n'a pas décidé de fonctionner, je propose qu'on le fasse dans un terminal. L'idée de la grosse commande, c'est de mettre la lettre a sur le bouton 1, la lettre b sur le bouton 2, ... (les numéros des boutons sont pas forcément logiques, c'est pas parce qu'on a 4 boutons que ce sera les boutons 1 2 3 et 4)

Ceci me permet donc d'annoncer ceci:
nicknemme:
Haut Gauche : c   ->  3
Haut Droit : i   -> 9
Bas Gauche : a   ->  1
Bas Droite : h   -> 8

MJJM:
abchijklmnopqrst correspond aux numéros suivants: 1 2 3 8 9 10 11 12 13 14 15 16 17 18 19 20

_______________________________
Maintenant on peut passer au paramétrage de la bestiole, en tout cas pour les boutons dans un premier temps. Je vais relire la doc, je vous laisse annoncer les raccourcis que vous voulez pour les boutons de la tablette. Et j'ai codé un programme en python pour paramétrer les tablettes graphiques compatibles avec xsetwacom mais je l'ai pas fini, et il est mal codé, je sais plus où je m'étais arrêté, je vais essayer de le retrouver


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#128 Le 04/08/2019, à 17:43

nicknemme

Re : Wacom Cintiq 24HD reconnue comme joystick

A vrai dire Naziel je ne sais pas trop quel raccourcis choisir, vu que je n'ai jamais pût la configurer correctement cette tablette. Ce serait pour utiliser essentiellement Krita et Blender. Je vais y réfléchir et essayer de te répondre au plus vite, ou bien y a t'il moyen de changer à l'envie, histoire de tester, merci.

Hors ligne

#129 Le 04/08/2019, à 17:54

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

Oui, la commande est la suivante (à adapter pour ce qu'on veut faire, le + devant ctrl signifie: on laisse appuyé sur ctrl et on appuie sur z et on relâche les deux (ce qu'on appelle communément ctrl+z)):

xsetwacom set "Wacom Intuos PT S Pad pad" Button 3 "key +ctrl z"
xsetwacom set "Wacom Intuos PT S Pad pad" Button 9 "key d"
xsetwacom set "Wacom Intuos PT S Pad pad" Button 1 "key a"
xsetwacom set "Wacom Intuos PT S Pad pad" Button 8 "key z"

Tu peux passer les commandes autant de fois que tu veux.

Je trouve pas mon foutu programme

Dernière modification par Naziel (Le 04/08/2019, à 17:54)


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#130 Le 04/08/2019, à 18:14

nicknemme

Re : Wacom Cintiq 24HD reconnue comme joystick

Ok merci beaucoup Naziel ! Peut-on configurer de la même manière la fonction tactile de la tablette?

Hors ligne

#131 Le 04/08/2019, à 18:18

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

Oui, il y a un tas de paramètres à passer à xsetwacom: rotate, ...

naziel@naziel-desktop:~$ xsetwacom list parameters
Area             - Valid tablet area in device coordinates. 
Button           - X11 event to which the given button should be mapped. 
ToolDebugLevel   - Level of debugging trace for individual tools (default is 0 [off]). 
TabletDebugLevel - Level of debugging statements applied to shared code paths between all tools associated with the same tablet (default is 0 [off]). 
Suppress         - Number of points trimmed (default is 2). 
RawSample        - Number of raw data used to filter the points (default is 4). 
PressureCurve    - Bezier curve for pressure (default is 0 0 100 100 [linear]). 
Mode             - Switches cursor movement mode (default is absolute). 
TabletPCButton   - Turns on/off Tablet PC buttons (default is off for regular tablets, on for Tablet PC). 
Touch            - Turns on/off Touch events (default is on). 
HWTouchSwitchState - Touch events turned on/off by hardware switch. 
Gesture          - Turns on/off multi-touch gesture events (default is on). 
ZoomDistance     - Minimum distance for a zoom gesture (default is 50). 
ScrollDistance   - Minimum motion before sending a scroll gesture (default is 20). 
TapTime          - Minimum time between taps for a right click (default is 250). 
CursorProximity  - Sets cursor distance for proximity-out in distance from the tablet (default is 10 for Intuos series, 42 for Graphire series). 
Rotate           - Sets the rotation of the tablet. Values = none, cw, ccw, half (default is none). 
RelWheelUp       - X11 event to which relative wheel up should be mapped. 
RelWheelDown     - X11 event to which relative wheel down should be mapped. 
AbsWheelUp       - X11 event to which absolute wheel up should be mapped. 
AbsWheelDown     - X11 event to which absolute wheel down should be mapped. 
AbsWheel2Up      - X11 event to which absolute wheel up should be mapped. 
AbsWheel2Down    - X11 event to which absolute wheel down should be mapped. 
StripLeftUp      - X11 event to which left strip up should be mapped. 
StripLeftDown    - X11 event to which left strip down should be mapped. 
StripRightUp     - X11 event to which right strip up should be mapped. 
StripRightDown   - X11 event to which right strip down should be mapped. 
Threshold        - Sets tip/eraser pressure threshold (default is 27). 
ResetArea        - Resets the bounding coordinates to default in tablet units. 
ToolType         - Returns the tool type of the associated device. 
ToolSerial       - Returns the serial number of the current device in proximity.
ToolID           - Returns the tool ID of the current tool in proximity.
ToolSerialPrevious - Returns the serial number of the previous device in proximity.
BindToSerial     - Binds this device to the serial number.
TabletID         - Returns the tablet ID of the associated device. 
PressureRecalibration - Turns on/off Tablet pressure recalibration
PanScrollThreshold - Adjusts distance required for pan actions to generate a scroll event
MapToOutput      - Map the device to the given output. 
all              - Get value for all parameters. 
naziel@naziel-desktop:~$ 

Sinon on peut aussi paramétrer le stylet, et l'effaceur

J'essaierai de passer un peu de temps sur mon programme python pour refaire une interface qui fonctionne

Dernière modification par Naziel (Le 04/08/2019, à 18:18)


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#132 Le 04/08/2019, à 19:03

nicknemme

Re : Wacom Cintiq 24HD reconnue comme joystick

Ok, j'avoue que personnellement ça m'aiderait un peu car le terminal c'est pas très intuitif pour moi. En tout cas merci de ton aide. On attend le retour de MJJM pour sa tablette.

Dernière modification par nicknemme (Le 04/08/2019, à 20:53)

Hors ligne

#133 Le 04/08/2019, à 20:54

MJJM

Re : Wacom Cintiq 24HD reconnue comme joystick

OK je suis de retour,
un programme python!!!!! la grande classe, moi aussi je craint la ligne de commande et les paramétrages xsetwacom a garder dans un fichier .sh exécutable etc....
alors là naziel respect to you!!!! Merci mille fois merci

Hors ligne

#134 Le 05/08/2019, à 20:46

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

Bon, j'ai retrouvé le code, effectivement il est vraiment dégueu. J'ai pas de tablette graphique pour le tester, en d'autres termes je ne peux avancer dessus que lorsque des personnes ayant des tablettes graphiques non reconnues passent sur le forum. Le bouton "sauvegarder" sert à créer un script bash qui permet de récupérer la configuration de la tablette.Normalement ce qui est affiché est implémenté et possiblement fonctionnel smile (je vois déjà une grosse bêtise sur le stylet)
Je laisse le code ici pour pas galérer autant pour le retrouver

# -*- coding: utf-8 -*-

global nomPad
global nomStylet
nomPad="Wacom Intuos S 2 Pad pad"
nomStylet="Wacom Intuos S 2 Pen stylus"

global listeBoutonsPad
global listeBoutonsStylet

from tkinter import *
import subprocess
import os
import pickle

fen = Tk()
#entrée: liste de lettres correspondant aux boutons pour en trouver leurs ID
#sortie: liste des id associées
def listeID(liste):
    l=[]
    for lettre in list(liste):
        l+=[ord(lettre)-97+1] # 97=ord("a")
    l.sort()
    return (l)


def appliquer(): # récupère l'état des boutons et applique la configuration à la tablette
    global listeBoutonsPad
    global listeBoutonsStylet
    #rotation du pad
    os.system("xsetwacom set '"+nomPad+"' Rotate "+valeurRot.get())
    #Threshold
    os.system("xsetwacom set '"+nomPad+"' Threshold "+boxThreshold.get())
    #Boutons du pad
    for i in range(0,len(entryboutonsPad)):
        os.system("xsetwacom set '"+nomPad+"' Button "+ str(listeBoutonsPad[i])+" "+entryboutonsPad[i].get())
    for i in range(0,len(entryboutonsStylet)):
        os.system("xsetwacom set '"+nomPad+"' Button "+ str(listeBoutonsStylet[i])+" "+entryboutonsStylet[i].get())


def sauvegarder():
    monport=open("wacomGUI.sh","w")
    global listeBoutonsPad
    global listeBoutonsStylet
    monport.write("#!/bin/bash\n")
    #rotation du pad
    monport.write("xsetwacom set '"+nomPad+"' Rotate "+valeurRot.get())
    monport.write("\n")
    #Threshold
    monport.write("xsetwacom set '"+nomPad+"' Threshold "+boxThreshold.get())
    monport.write("\n")
    #Boutons du pad
    for i in range(0,len(entryboutonsPad)):
        monport.write("xsetwacom set '"+nomPad+"' Button "+ str(listeBoutonsPad[i])+" "+entryboutonsPad[i].get())
        monport.write("\n")
    for i in range(0,len(entryboutonsStylet)):
        monport.write("xsetwacom set '"+nomPad+"' Button "+ str(listeBoutonsStylet[i])+" "+entryboutonsStylet[i].get())
        monport.write("\n")
    
    monport.close()



def creer():
    #gestion des widgets
    BoutonCreer.grid_forget()
    labelinfo.config(text="Cliquez sur l'entrée devant entreePad, et appuyez sur chaque bouton du pad.\n Ne faites pas de même avec le stylet (la mine qui touche le pad est considéré comme un bouton aussi")
    labelBoutonsPad.grid(row=2, column=1)
    labelBoutonsStylet.grid(row=3, column=1)
    entreePad.grid(row=2,column=2)
    entreeStylet.grid(row=3,column=2)
    BoutonOK.grid(row=4,column=2)
    #correpondance boutons <-> lettres alphabet
    alphabet=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
    
    for i in range(1,20):
        os.system("xsetwacom set '"+nomPad+"' Button "+str(i)+" 'key "+alphabet[i-1]+"'")
    
    for i in range(2,6):
        os.system("xsetwacom set '"+nomStylet+"' Button "+str(i)+" 'key "+alphabet[i-1]+"'")

def ok():
    global listeBoutonsPad
    global listeBoutonsStylet
    listeBoutonsPad=listeID(list(entreePad.get()))
    listeBoutonsStylet=listeID(list(entreeStylet.get()))
    labelBoutonsPad.grid_forget()
    labelBoutonsStylet.grid_forget()
    entreePad.grid_forget()
    entreeStylet.grid_forget()
    BoutonOK.grid_forget()
    Etape3(listeBoutonsPad, listeBoutonsStylet)

def Etape3(listeBoutonsPad, listeBoutonsStylet):
    labelinfo.config(text="Sauvegarder permet d'enregistrer la configuration dans un fichier (pour l'instant pas appliquée au branchement de la tablette) et appliquer permet d'appliquer la configuration")
    frameThreshold.grid(row=3,column=1)
    BoutonAppliquer.grid(row=3,column=2)
    frameRot.grid(row=2, column=1)
    global entryboutonsPad
    entryboutonsPad=[]
    k=0
    for i in listeBoutonsPad:
        entryboutonsPad.append(Entry(frameBoutonsPad, textvariable="", width=30))
        labelBoutonsPadEtape3=Label(frameBoutonsPad, text="Bouton du pad "+str(i))
        labelBoutonsPadEtape3.grid(row=i, column=1)
        entryboutonsPad[k].grid(row=i, column=2)
        k=k+1
    frameBoutonsPad.grid(row=4,column=1)
    global entryboutonsStylet
    entryboutonsStylet=[]
    k=0
    for i in listeBoutonsStylet:
        entryboutonsStylet.append(Entry(frameBoutonsStylet, textvariable="", width=30))
        labelBoutonsStyletEtape3=Label(frameBoutonsStylet, text="Bouton du stylet "+str(i))
        labelBoutonsStyletEtape3.grid(row=i, column=1)
        entryboutonsStylet[k].grid(row=i, column=2)
        k=k+1
    frameBoutonsStylet.grid(row=5,column=1)
    BoutonSauvegarder.grid(row=3,column=3)
        


############################# Initialisation des widgets ##############################
#Etape 1: accueil

labelinfo=Label(fen, text="Cliquez sur Créer pour commencer la configuration de la tablette")

BoutonCreer=Button(fen,text="Créer",font=("courier",18,"bold"),command=creer)

#Etape 2: après appui sur créer
labelBoutonsPad=Label(fen, text="Pad:")
labelBoutonsStylet=Label(fen, text="Stylet:")

valeurPad = StringVar() 
entreePad = Entry(fen, textvariable=valeurPad, width=30)

valeurStylet = StringVar() 
entreeStylet = Entry(fen, textvariable=valeurStylet, width=30)

BoutonOK=Button(fen,text="OK",font=("courier",18,"bold"),command=ok)

#Etape 3:  après avoir rempli les champs de "créer"
frameThreshold=Frame(fen, borderwidth=2, relief=GROOVE)
labelThreshold=Label(frameThreshold, text="Threshold:")
boxThreshold=Spinbox(frameThreshold, from_=0, to=2047)
labelThreshold.grid(row=1,column=1)
boxThreshold.grid(row=1,column=2)

frameRot=Frame(fen, borderwidth=2, relief=GROOVE)
valeurRot = StringVar()
valeurRot.set("none")
boutonrot1 = Radiobutton(frameRot, text="Pas de rotation", variable=valeurRot, value="none")
boutonrot2 = Radiobutton(frameRot, text="Rotation à 180 degrés", variable=valeurRot, value="half")
boutonrot3 = Radiobutton(frameRot, text="Rotation à 90 degrés", variable=valeurRot, value="cw")
boutonrot4 = Radiobutton(frameRot, text="Rotation à -90 degrés", variable=valeurRot, value="ccw")
labelRot=Label(frameRot, text="rotation du pad:")
boutonrot1.grid(row=1,column=2)
boutonrot2.grid(row=2,column=2)
boutonrot3.grid(row=3,column=2)
boutonrot4.grid(row=4,column=2)
labelRot.grid(row=2, column=1)

BoutonAppliquer=Button(fen,text="Appliquer",font=("courier",18,"bold"),command=appliquer)
BoutonSauvegarder=Button(fen,text="Sauvegarder",font=("courier",18,"bold"),command=sauvegarder)

frameBoutonsPad=Frame(fen, borderwidth=2, relief=GROOVE)
frameBoutonsStylet=Frame(fen, borderwidth=2, relief=GROOVE)

########################### placement des widgets (etape 1) #####################################

labelinfo.grid(row=1,column=1)
BoutonCreer.grid(row=2,column=2)


fen.mainloop()

#subprocess.check_output(["xsetwacom", "list", "devices"])==b'':

Je pense que le code est à réécrire entièrement


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#135 Le 07/08/2019, à 01:10

MJJM

Re : Wacom Cintiq 24HD reconnue comme joystick

Naziel a écrit :

Bon, j'ai retrouvé le code, effectivement il est vraiment dégueu. J'ai pas de tablette graphique pour le tester, en d'autres termes je ne peux avancer dessus que lorsque des personnes ayant des tablettes graphiques non reconnues passent sur le forum. Le bouton "sauvegarder" sert à créer un script bash qui permet de récupérer la configuration de la tablette.Normalement ce qui est affiché est implémenté et possiblement fonctionnel smile (je vois déjà une grosse bêtise sur le stylet)
Je laisse le code ici pour pas galérer autant pour le retrouver

# -*- coding: utf-8 -*-

global nomPad
global nomStylet
nomPad="Wacom Intuos S 2 Pad pad"
nomStylet="Wacom Intuos S 2 Pen stylus"

global listeBoutonsPad
global listeBoutonsStylet

from tkinter import *
import subprocess
import os
import pickle

fen = Tk()
#entrée: liste de lettres correspondant aux boutons pour en trouver leurs ID
#sortie: liste des id associées
def listeID(liste):
    l=[]
    for lettre in list(liste):
        l+=[ord(lettre)-97+1] # 97=ord("a")
    l.sort()
    return (l)


def appliquer(): # récupère l'état des boutons et applique la configuration à la tablette
    global listeBoutonsPad
    global listeBoutonsStylet
    #rotation du pad
    os.system("xsetwacom set '"+nomPad+"' Rotate "+valeurRot.get())
    #Threshold
    os.system("xsetwacom set '"+nomPad+"' Threshold "+boxThreshold.get())
    #Boutons du pad
    for i in range(0,len(entryboutonsPad)):
        os.system("xsetwacom set '"+nomPad+"' Button "+ str(listeBoutonsPad[i])+" "+entryboutonsPad[i].get())
    for i in range(0,len(entryboutonsStylet)):
        os.system("xsetwacom set '"+nomPad+"' Button "+ str(listeBoutonsStylet[i])+" "+entryboutonsStylet[i].get())


def sauvegarder():
    monport=open("wacomGUI.sh","w")
    global listeBoutonsPad
    global listeBoutonsStylet
    monport.write("#!/bin/bash\n")
    #rotation du pad
    monport.write("xsetwacom set '"+nomPad+"' Rotate "+valeurRot.get())
    monport.write("\n")
    #Threshold
    monport.write("xsetwacom set '"+nomPad+"' Threshold "+boxThreshold.get())
    monport.write("\n")
    #Boutons du pad
    for i in range(0,len(entryboutonsPad)):
        monport.write("xsetwacom set '"+nomPad+"' Button "+ str(listeBoutonsPad[i])+" "+entryboutonsPad[i].get())
        monport.write("\n")
    for i in range(0,len(entryboutonsStylet)):
        monport.write("xsetwacom set '"+nomPad+"' Button "+ str(listeBoutonsStylet[i])+" "+entryboutonsStylet[i].get())
        monport.write("\n")
    
    monport.close()



def creer():
    #gestion des widgets
    BoutonCreer.grid_forget()
    labelinfo.config(text="Cliquez sur l'entrée devant entreePad, et appuyez sur chaque bouton du pad.\n Ne faites pas de même avec le stylet (la mine qui touche le pad est considéré comme un bouton aussi")
    labelBoutonsPad.grid(row=2, column=1)
    labelBoutonsStylet.grid(row=3, column=1)
    entreePad.grid(row=2,column=2)
    entreeStylet.grid(row=3,column=2)
    BoutonOK.grid(row=4,column=2)
    #correpondance boutons <-> lettres alphabet
    alphabet=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
    
    for i in range(1,20):
        os.system("xsetwacom set '"+nomPad+"' Button "+str(i)+" 'key "+alphabet[i-1]+"'")
    
    for i in range(2,6):
        os.system("xsetwacom set '"+nomStylet+"' Button "+str(i)+" 'key "+alphabet[i-1]+"'")

def ok():
    global listeBoutonsPad
    global listeBoutonsStylet
    listeBoutonsPad=listeID(list(entreePad.get()))
    listeBoutonsStylet=listeID(list(entreeStylet.get()))
    labelBoutonsPad.grid_forget()
    labelBoutonsStylet.grid_forget()
    entreePad.grid_forget()
    entreeStylet.grid_forget()
    BoutonOK.grid_forget()
    Etape3(listeBoutonsPad, listeBoutonsStylet)

def Etape3(listeBoutonsPad, listeBoutonsStylet):
    labelinfo.config(text="Sauvegarder permet d'enregistrer la configuration dans un fichier (pour l'instant pas appliquée au branchement de la tablette) et appliquer permet d'appliquer la configuration")
    frameThreshold.grid(row=3,column=1)
    BoutonAppliquer.grid(row=3,column=2)
    frameRot.grid(row=2, column=1)
    global entryboutonsPad
    entryboutonsPad=[]
    k=0
    for i in listeBoutonsPad:
        entryboutonsPad.append(Entry(frameBoutonsPad, textvariable="", width=30))
        labelBoutonsPadEtape3=Label(frameBoutonsPad, text="Bouton du pad "+str(i))
        labelBoutonsPadEtape3.grid(row=i, column=1)
        entryboutonsPad[k].grid(row=i, column=2)
        k=k+1
    frameBoutonsPad.grid(row=4,column=1)
    global entryboutonsStylet
    entryboutonsStylet=[]
    k=0
    for i in listeBoutonsStylet:
        entryboutonsStylet.append(Entry(frameBoutonsStylet, textvariable="", width=30))
        labelBoutonsStyletEtape3=Label(frameBoutonsStylet, text="Bouton du stylet "+str(i))
        labelBoutonsStyletEtape3.grid(row=i, column=1)
        entryboutonsStylet[k].grid(row=i, column=2)
        k=k+1
    frameBoutonsStylet.grid(row=5,column=1)
    BoutonSauvegarder.grid(row=3,column=3)
        


############################# Initialisation des widgets ##############################
#Etape 1: accueil

labelinfo=Label(fen, text="Cliquez sur Créer pour commencer la configuration de la tablette")

BoutonCreer=Button(fen,text="Créer",font=("courier",18,"bold"),command=creer)

#Etape 2: après appui sur créer
labelBoutonsPad=Label(fen, text="Pad:")
labelBoutonsStylet=Label(fen, text="Stylet:")

valeurPad = StringVar() 
entreePad = Entry(fen, textvariable=valeurPad, width=30)

valeurStylet = StringVar() 
entreeStylet = Entry(fen, textvariable=valeurStylet, width=30)

BoutonOK=Button(fen,text="OK",font=("courier",18,"bold"),command=ok)

#Etape 3:  après avoir rempli les champs de "créer"
frameThreshold=Frame(fen, borderwidth=2, relief=GROOVE)
labelThreshold=Label(frameThreshold, text="Threshold:")
boxThreshold=Spinbox(frameThreshold, from_=0, to=2047)
labelThreshold.grid(row=1,column=1)
boxThreshold.grid(row=1,column=2)

frameRot=Frame(fen, borderwidth=2, relief=GROOVE)
valeurRot = StringVar()
valeurRot.set("none")
boutonrot1 = Radiobutton(frameRot, text="Pas de rotation", variable=valeurRot, value="none")
boutonrot2 = Radiobutton(frameRot, text="Rotation à 180 degrés", variable=valeurRot, value="half")
boutonrot3 = Radiobutton(frameRot, text="Rotation à 90 degrés", variable=valeurRot, value="cw")
boutonrot4 = Radiobutton(frameRot, text="Rotation à -90 degrés", variable=valeurRot, value="ccw")
labelRot=Label(frameRot, text="rotation du pad:")
boutonrot1.grid(row=1,column=2)
boutonrot2.grid(row=2,column=2)
boutonrot3.grid(row=3,column=2)
boutonrot4.grid(row=4,column=2)
labelRot.grid(row=2, column=1)

BoutonAppliquer=Button(fen,text="Appliquer",font=("courier",18,"bold"),command=appliquer)
BoutonSauvegarder=Button(fen,text="Sauvegarder",font=("courier",18,"bold"),command=sauvegarder)

frameBoutonsPad=Frame(fen, borderwidth=2, relief=GROOVE)
frameBoutonsStylet=Frame(fen, borderwidth=2, relief=GROOVE)

########################### placement des widgets (etape 1) #####################################

labelinfo.grid(row=1,column=1)
BoutonCreer.grid(row=2,column=2)


fen.mainloop()

#subprocess.check_output(["xsetwacom", "list", "devices"])==b'':

Je pense que le code est à réécrire entièrement

ok naziel peux-tu m'expliquer comment je doit tester ton programme, as-tu prévue des sortie debugs  sur fichier à interchanger? je dis peut-être des grosse bêtises?

Hors ligne

#136 Le 07/08/2019, à 09:00

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

Je vais le recommencer.

Si tu veux tester ça, tu copies colles le code dans un fichier wacom.py (enfin peu importe le nom). Perso j'utilise IDLE pour coder en python, mais un

python3 wacom.py

devrait fonctionner (si le fichier wacom.py est dans le home, sinon faut adapter le chemin)


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#137 Le 07/08/2019, à 13:06

MJJM

Re : Wacom Cintiq 24HD reconnue comme joystick

salut naziel,
une demande avant de me lancer, y a-t-il un risque de mettre la panique dans mon système?
autre question y a-t-il un debug de lignes pour localiser les lignes problématiques ?
j'ai vérifié dans synaptic python3 est bien installé mais pas les paquets suggérés python3-doc, python3-tk, python3-venv

Dernière modification par MJJM (Le 07/08/2019, à 13:16)

Hors ligne

#138 Le 07/08/2019, à 15:52

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

y a-t-il un risque de mettre la panique dans mon système?
autre question y a-t-il un debug de lignes pour localiser les lignes problématiques ?

non et pas de debug, je vais le refaire de toute façon

python3-tk est utile vu que ça doit être tkinter et que mon programme utilise tkinter


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#139 Le 13/08/2019, à 21:32

nicknemme

Re : Wacom Cintiq 24HD reconnue comme joystick

Up, si Naziel passe par là...
Si tu réécris le code, envoie un message sur ce topic stp, histoire de nous tenir au courant. Quand tu auras le temps, merci à toi Naziel.
à plus

Hors ligne

#140 Le 13/08/2019, à 21:35

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

Je n'ai pas encore commencé, actuellement je suis un mooc python très bien fait sur fun mooc, je vais le commencer en parallèle comme projet. Je posterai des nouvelles


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#141 Le 16/08/2019, à 00:13

nicknemme

Re : Wacom Cintiq 24HD reconnue comme joystick

Ok pas de soucis, merci Naziel

Hors ligne

#142 Le 19/08/2019, à 21:22

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

C'est bon, j'ai fini le mooc en question, je devrais commencer le projet demain


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#143 Le 22/08/2019, à 16:58

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

J'avance tranquillement, j'aurais besoin d'un retour de commande (je ne peux pas tester directement vu que j'ai pas de tablette graphique)

for i in `seq 1 30`; do xsetwacom get "Wacom Intuos PT S Pad pad" Button $i;done

(à adapter selon la tablette)


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#144 Le 22/08/2019, à 18:39

MJJM

Re : Wacom Cintiq 24HD reconnue comme joystick

bonjours naziel,
heureux de te relire je te renvoie le retour de ta commande que j'ai adapté a ma tablette

mjjm@mjjm-System-Product-Name:~$ for i in `seq 1 30`; do xsetwacom get "Wacom Cintiq 24HD Pad pad" Button $i;done
button +1 
button +2 
button +3 
4
5
6
7
button +8 
button +9 
button +10 
button +11 
button +12 
button +13 
button +14 
button +15 
button +16 
button +17 
button +18 
button +19 
button +20 
Button number does not exist on device.
Button number does not exist on device.
Button number does not exist on device.
Button number does not exist on device.
Button number does not exist on device.
Button number does not exist on device.
Button number does not exist on device.
Button number does not exist on device.
Button number does not exist on device.
Button number does not exist on device.
mjjm@mjjm-System-Product-Name:~$

en espérant qu'il te soit utile

Hors ligne

#145 Le 22/08/2019, à 20:47

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

Nickel, ça évitera mon ancienne commande crade


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#146 Le 22/08/2019, à 21:14

MJJM

Re : Wacom Cintiq 24HD reconnue comme joystick

naziel, quels sont les paquets que je dois installer pour pouvoir utiliser ton programme?
j'avais essayé le code que tu a laissé à #134, mais il ne fonctionnait pas je suppose par manque de paquet installé

Dernière modification par MJJM (Le 22/08/2019, à 21:25)

Hors ligne

#147 Le 22/08/2019, à 21:14

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

Normalement rien, j'utilise xsetwacom, c'est tout. Pour l'instant, il est pas utilisable

Edit: euh si, python 3, mais j'indiquerai comment l'installer s'il ne l'est pas

Reedit: et tkinter normalement, mais j'indiquerai aussi comment l'installer s'il n'est pas déjà installé

Dernière modification par Naziel (Le 22/08/2019, à 21:16)


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#148 Le 22/08/2019, à 21:22

MJJM

Re : Wacom Cintiq 24HD reconnue comme joystick

ok, python3 est bien installé mais les paquets suggérés python3-tk et python3-venv non

Hors ligne

#149 Le 22/08/2019, à 21:24

Naziel

Re : Wacom Cintiq 24HD reconnue comme joystick

Actuellement, j'ai pas commencé la partie interface graphique, je n'en suis qu'au début

Et de toute façon si ça marche pas à cause d'un truc manquant, l'erreur sera explicite

Dernière modification par Naziel (Le 22/08/2019, à 21:24)


[ poster correctement un retour de commande ] [ poster correctement une photo ]
Nouvel adhérent FDN
thinkpad x220, Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Pour reprendre le contrôle des semences: https://kokopelli-semences.fr/fr/

Hors ligne

#150 Le 22/08/2019, à 21:26

MJJM

Re : Wacom Cintiq 24HD reconnue comme joystick

ok naziel je te laisse travailler et je surveille tes messages en cas de besoin de retours commandes.

Hors ligne