jak na hidcomp

Odpovědět
pavlos
Příspěvky: 17
Registrován: 15. 8. 2011, 10:55
Bydliště: Rozseč nad Kunštátem ,okr.Blansko

9. 6. 2013, 3:17

Zdravím ,koupil jsem si numerickou klavesnici ,chtěl bych si udělat ovladací panel,nakonfiguovat tlačítka. Potřeboval bych pomoct s HIDCOMP.
Pomocí popisu http://hidcomp.sourceforge.net/" onclick="window.open(this.href);return false; jsem nainstaloval hidcomp ,pomocí hidconfig jsem vygeneroval konfigurační soubor sav.hid.
do -hal jsem dopsal :
loadusr hidcomp -ini my-mill.ini sav.hid/home/tygrik/linuxcnc/configs/my-mill/sav.hid

do -ini lsem nic nedopisoval ,dal s tim nemužu hnout :( ,nemam ještě něco dopsat do ini ?

Když spustím linuxcnc a podívám se do ,,Show Hal Configuration" ,tak v záložce components u Hidcomp mě to píše initializing.
Potřeboval bych popostrčit ,už nevím jak dál :? .Nebo kdyby měl někdo funkční konfiguraci a hodil sem hal a ini abych se mohl odpichnout
předem dík Pavel
fupe
Příspěvky: 645
Registrován: 27. 5. 2008, 9:10
Bydliště: Praha

9. 6. 2013, 5:01

Ahoj,
uz sem si s tim hodne dlouho nehral, ale tady jsou nejaky moje stary konfiguraky. Treba pomuzou.
http://www.c-n-c.cz/viewtopic.php?f=34& ... =60#p56201
M
pavlos
Příspěvky: 17
Registrován: 15. 8. 2011, 10:55
Bydliště: Rozseč nad Kunštátem ,okr.Blansko

11. 6. 2013, 8:38

DIky ,,fupe"",ale to vlakno už jsem měl pročteny :( ,nějak se s tím zkusím poprat .myslím že je to tim, že hidconfig spouštím jako správce (sudo hidconfig),nepovedlo se mě změnit oprávnění jak se zde píše:

When you insert a USB device, by default, the device is owned by root. As mentioned above, a quick and dirty fix is to run hidconfig as root but that will only allow a configuration file to be built, not run hidcomp.

The correct solution is to create a udev rules file. A file is create in /etc/udev/rules.d which tells udev (the dynamic device management system) what to do when the device is inserted. We only need to set permissions.

Here is an example of a udev rules file. In my /etc/udev/rules.d/ folder I have created the file 99-hid.rules. The name of the file is not important, as long as it has the extension .rules.

# Generic HID device
SYSFS{idProduct}=="04d9", SYSFS{idVendor}=="1c40", MODE="0660", GROUP="plugdev"
# Logitech dual action
SYSFS{idProduct}=="c216", SYSFS{idVendor}=="046d", MODE="0660", GROUP="plugdev"
# Contour design, shuttle pro
SYSFS{idProduct}=="0030", SYSFS{idVendor}=="0b33", MODE="0660", GROUP="plugdev"
In my file, each data line has 4 parts. The first two specify the PID and VID of the USB device that this line applies to. The last 2 parts refer to the commands to run when a device is found. In this case, we set the permissions on the device to 0660 (owner=read/write, group=read/write), and we set the group of the device to plugdev.

The lines beginning with # are comments.

For this file to work, there must also be a group on the system called plugdev, and the user account that runs EMC/LinuxCNC must belong to this group. This can be done with the commands...

sudo addgroup plugdev
sudo addgroup myloginname plugdev

Spíš jsem myslel jestli někdo nemá srozumitelný (podrobný) návod v čestině,jistě by se hodil i někomu jinému

Pavel
fupe
Příspěvky: 645
Registrován: 27. 5. 2008, 9:10
Bydliště: Praha

11. 6. 2013, 8:49

Jeste muzes zkusit pustit linuxcnc jako root, ale bacha kdyz to neco prepise, tak to pak nepustis pod sebou.
Povedlo se ti pridat prava do rules aby zarizeni videl i obycejny user?
co si tam dal? a co ti pise lsusb? sedi ti pid a vid.

Klidne bych to zkusil rozbehat znova ale nemam ten ovladac doma. :(
M
fupe
Příspěvky: 645
Registrován: 27. 5. 2008, 9:10
Bydliště: Praha

11. 6. 2013, 9:27

Jeste me napadla jedna moznost.
poustis to ve vyvojovy verzi, nebo ne?

jestli vyvojova tak....
pust si terminal, nastav prostredi a pust linuxcnc bez toho loadusr v konfiguraci a v druhym okne se udelej rootem "sudo -s" opet nastav prostredi a zavolej ten hidcomp
halcmd loadusr hidcomp -ini ......xxx.ini xxxx.hid
hidcomp je klasicka spustitelna binarka ktera ale ke svemu behu potrebuje nejaky knihovny jako treba linuxcnchal.so a podobne takze by se to melo spustit, protoze RT knihovny uz sou natazeny z prvniho okna kde bezi linuxcnc.

kdyz to spustis bez opravneni root dle predchoziho postupu, co to napise? ze nemuze pristupovat k zarizeni?

jestli nepouzivas vyvojovou verzi, tak je to stejny jenom nenastavis prostredi...

M
pavlos
Příspěvky: 17
Registrován: 15. 8. 2011, 10:55
Bydliště: Rozseč nad Kunštátem ,okr.Blansko

12. 6. 2013, 9:31

Ještě jednou díky,po spuštení linuxucnc jako root se už hidcomp načetl ,takže problem asi bude v právech ve složce rules.d .
vypis lsusb :

Bus 002 Device 002: ID 1130:3101 Tenx Technology , Inc.

V souboru rules.d jsem v geditu jako root vytvořil hid.rules
a v něm:

SYSFS{idProduct}=="1130", SYSFS{idVendor}=="3101", MODE="0660", GROUP="plugdev"
potom v terminalu:

sudo addgroup plugdev
sudo addgroup tygrik plugdev (muj loginname tygrik )

Ale stejně musím spustit hidconfig jako root abych mohl klavesnici konfigurovat .

Ještě jedna otazka ,v hidconfigu ,je to hola numericka klavesnice se dá nastavit pouze jmeno pinu takže potom v linuxucnc se ukáže klavesnice jako jeden pin,
na kterem se mění hodnota podle kodu klaves . jdou tyto hodnoty propojit s hal koliky (např halui.mode.auto , halui.mode.mdi) dík Pavel
fupe
Příspěvky: 645
Registrován: 27. 5. 2008, 9:10
Bydliště: Praha

13. 6. 2013, 11:11

pavlos píše:Ještě jednou díky,po spuštení linuxucnc jako root se už hidcomp načetl ,takže problem asi bude v právech ve složce rules.d .
vypis lsusb :

Bus 002 Device 002: ID 1130:3101 Tenx Technology , Inc.

V souboru rules.d jsem v geditu jako root vytvořil hid.rules
a v něm:

SYSFS{idProduct}=="1130", SYSFS{idVendor}=="3101", MODE="0660", GROUP="plugdev"
potom v terminalu:

sudo addgroup plugdev
sudo addgroup tygrik plugdev (muj loginname tygrik )

Ale stejně musím spustit hidconfig jako root abych mohl klavesnici konfigurovat .

Ještě jedna otazka ,v hidconfigu ,je to hola numericka klavesnice se dá nastavit pouze jmeno pinu takže potom v linuxucnc se ukáže klavesnice jako jeden pin,
na kterem se mění hodnota podle kodu klaves . jdou tyto hodnoty propojit s hal koliky (např halui.mode.auto , halui.mode.mdi) dík Pavel
Vsecko jde kdyz se chce.
mas dve moznosti, teda asi jich je vic, ale me napadaj dve.
jestlize ti z hidcompu leze jedina hodnota, tak je potreba ji nejak rosekat na jednotlive potrebne piny a ty pak pripojit kam potrebujes. Predpokladam ze ti z hidcompu leze float, jestli ne musis to na nej prevezt treba pomoci conv_s32_float a ten pak pripojit k tolika komponentam comp, kolik mas klaves a pro kazdou priradit odpovidajici hodnotu, kterou zjistis stisknutim klavesy.
kdyz to porovna hodnotu co leze z hidcompu s tebou nastavenou a bude to sedet nahodi na vystupu comp.x.out log 1 a to je to co potrebujes.
takze ti v konfigu prubude hromada component comp, kazdou musis jeste spustit pomoci addf a pak pro kazdou nastavit hodnotu . proste hromada radku.

druha a podle me v tomhle pripade lepsi varianta je vykaslat se na hidcomp, kterej je spis urcenej na trochu jiny veci a pouzit hal_input, kterej ma vse co potrebujes.
ten rovnou vygeneruje hromadu pinu. pro kazdou klavesu jeden a ty pak muzes prirazovat. dokonce muzes ovladat treba i ledku numlock, jestli ji tam mas.
Ted nevim zhlavy kolik to vygeneruje pinu, ale mozna jich bude vic nez ma klavesnice klaves. ale to nevadi, pouzijes jenom ty potrebne
Je potreba najit spravny identifikacni retezec pri loadovani ale je to popsany v man strankach......


Martin
M
pavlos
Příspěvky: 17
Registrován: 15. 8. 2011, 10:55
Bydliště: Rozseč nad Kunštátem ,okr.Blansko

16. 6. 2013, 8:04

Ahoj ,až budu mit čas tak zkusim Hal_input a když tak napíšu ještě jednou dík Pavel
pavlos
Příspěvky: 17
Registrován: 15. 8. 2011, 10:55
Bydliště: Rozseč nad Kunštátem ,okr.Blansko

17. 6. 2013, 7:29

Zdravím ,tak pomocí hal_input se mi podařilo numerickou klávesnici nakonfiguovat a nalinkovat hal kolíky (zatím jenom zkušebně ale jde to :) ).Mám ještě jeden problém ,nevím jestli je to špatnou klavesnicí :( . když se podívám do hal meter tak po stisknutí klavesy (pokud ji trvale držím)se nezmění stav z false na true ,ale podobu stisku neustale mění stav true false periodicky stále dokola .U tlačítek jako mode ..... to nevadí ,ale pro posuv (např. halui.jog.2.minus) to samozřejmě jede trhavě podle toho jak se měni true a false. Neexistuje v linuxcnc nějaka komponenta co to změní ? Nebo musím zkusit jinou klávesnici ?
Pavel
Odpovědět

Zpět na „LinuxCNC - drive pod nazvem EMC2“