XHC-WHB04B-6 LinuxCNC not working
- StormBP
- Offline
- New Member
- 
				  
		Less
		More
		
			
	
		- Posts: 9
- Thank you received: 1
			
	
						23 Apr 2020 10:52		 -  23 Apr 2020 18:13		#165212
		by StormBP
	
	
		
			
	
	
	
			 		
													
	
				Replied by StormBP on topic XHC-WHB04B-6 LinuxCNC not working			
			
				Hi,
i have a problem to with my new XHC-WHB04B-4. Mayby anyone is able to help me.
I did the following steps:
i compiled:
git clone github.com/LinuxCNC/linuxcnc linuxcnc-dev
cd linuxcnc-dev
cd src
./autogen.sh
./configure --with-realtime=uspace
make
sudo make setuid
with no errors.
than copy the BIN-File XHC-WHB04B-6
from /linuxcnc-dev/bin/
to /usr/bin/
I make a rule. in etc/udev/rules.d/
ATTR{idProduct}=="eb93", ATTR{idVendor}=="10ce", MODE="0666", OWNER="root", GROUP="plugdev"
Than I run halrun in Terminal:
loadusr xhc-whb04b-4
....nothing happens...
only on the display from mpg switch all coordinates to zero...
If i run:
loadusr xhc-whb04b-4 -ec
then following message appeared in the terminall:
transmission failed, try to reconnect ...
transmission failed, try to reconnect ...
xhc-whb04b-6: hal/user_comps/xhc-whb04b-6/xhc-whb04b6.cc:526: void XhcWhb04b6::XhcWhb04b6Component::process(): Assertion `(0 == r) || (r == LIBUSB_ERROR_NO_DEVICE)' failed.
But if i press some buttons or twist the encoderwheel than comes some datas..
My problem ist thet LinuxCNC dont start. Debug information in attachment
 
 
Anyone a idea?
Debian Wheezy 3.4-9-rtai-686
LinuxCNC 2.9.0-pre0-1427
					i have a problem to with my new XHC-WHB04B-4. Mayby anyone is able to help me.
I did the following steps:
i compiled:
git clone github.com/LinuxCNC/linuxcnc linuxcnc-dev
cd linuxcnc-dev
cd src
./autogen.sh
./configure --with-realtime=uspace
make
sudo make setuid
with no errors.
than copy the BIN-File XHC-WHB04B-6
from /linuxcnc-dev/bin/
to /usr/bin/
I make a rule. in etc/udev/rules.d/
ATTR{idProduct}=="eb93", ATTR{idVendor}=="10ce", MODE="0666", OWNER="root", GROUP="plugdev"
Than I run halrun in Terminal:
loadusr xhc-whb04b-4
....nothing happens...
only on the display from mpg switch all coordinates to zero...
If i run:
loadusr xhc-whb04b-4 -ec
then following message appeared in the terminall:
transmission failed, try to reconnect ...
transmission failed, try to reconnect ...
xhc-whb04b-6: hal/user_comps/xhc-whb04b-6/xhc-whb04b6.cc:526: void XhcWhb04b6::XhcWhb04b6Component::process(): Assertion `(0 == r) || (r == LIBUSB_ERROR_NO_DEVICE)' failed.
But if i press some buttons or twist the encoderwheel than comes some datas..
My problem ist thet LinuxCNC dont start. Debug information in attachment
Anyone a idea?
Debian Wheezy 3.4-9-rtai-686
LinuxCNC 2.9.0-pre0-1427
		Last edit: 23 Apr 2020 18:13  by StormBP.			
			Please Log in or Create an account to join the conversation.
- alkabal
- Offline
- Platinum Member
- 
				  
		Less
		More
		
			
	
		- Posts: 476
- Thank you received: 52
			
	
						25 Apr 2020 22:27				#165583
		by alkabal
	
	
		
			
	
			
			 		
													
	
				Replied by alkabal on topic XHC-WHB04B-6 LinuxCNC not working			
			
				Hi
You use Run in place or buildbot instal ?
Have you try to do : sudo chmod +x /usr/bin/xhc-whb04b-6 ?
Have you try to see what report lsusb ?
					You use Run in place or buildbot instal ?
Have you try to do : sudo chmod +x /usr/bin/xhc-whb04b-6 ?
Have you try to see what report lsusb ?
Please Log in or Create an account to join the conversation.
- StormBP
- Offline
- New Member
- 
				  
		Less
		More
		
			
	
		- Posts: 9
- Thank you received: 1
			
	
						26 Apr 2020 14:55				#165668
		by StormBP
	
	
		
			
	
			
			 		
													
	
				Replied by StormBP on topic XHC-WHB04B-6 LinuxCNC not working			
			
				Hi,
i use buildbot instal.
I try:
sudo chmod +x /usr/bin/xhc-whb04b-6
but nothing happend.
lsusb list the dongel with the right adress:
Bus 002 Device 003: ID 10ce:eb93 Silicon Labs
I guess somehow the access rigth are not right. But im not sure. My linux skills are very low.
It amazes me that with the command "loadusr xhc-whb04b-6" nothing happend but if i run "loadusr xhc-whb04b-6 -ec" than data are transmit.
					i use buildbot instal.
I try:
sudo chmod +x /usr/bin/xhc-whb04b-6
but nothing happend.
lsusb list the dongel with the right adress:
Bus 002 Device 003: ID 10ce:eb93 Silicon Labs
I guess somehow the access rigth are not right. But im not sure. My linux skills are very low.
It amazes me that with the command "loadusr xhc-whb04b-6" nothing happend but if i run "loadusr xhc-whb04b-6 -ec" than data are transmit.
Please Log in or Create an account to join the conversation.
- alkabal
- Offline
- Platinum Member
- 
				  
		Less
		More
		
			
	
		- Posts: 476
- Thank you received: 52
			
	
						26 Apr 2020 20:35				#165694
		by alkabal
	
	
		
			
	
			
			 		
													
	
				Replied by alkabal on topic XHC-WHB04B-6 LinuxCNC not working			
			
				If you use fres buildbot you don't need to compil driver yourself (already included)
Maybee they are conflict with ~./source/bin and /usr/bin
you can try to open 2 terminal :
first :
halrun
loadusr -W xhc-whb04b-6 -Hsf
second :
watch -n0.4 halcmd show pin whb.*
					Maybee they are conflict with ~./source/bin and /usr/bin
you can try to open 2 terminal :
first :
halrun
loadusr -W xhc-whb04b-6 -Hsf
second :
watch -n0.4 halcmd show pin whb.*
Please Log in or Create an account to join the conversation.
- StormBP
- Offline
- New Member
- 
				  
		Less
		More
		
			
	
		- Posts: 9
- Thank you received: 1
			
	
						28 Apr 2020 10:11				#165940
		by StormBP
	
	
		
			
	
	
			 		
													
	
				Replied by StormBP on topic XHC-WHB04B-6 LinuxCNC not working			
			
				nothing happends with
loadusr -W xhc-whb04b-6 -Hsf. No chance.
I installed buildbot new. Now with stretch not wheezy. I used the included driver.
and it works with:
halrun
loadusr -W xhc-whb04b-6 -Hsf
exclude the handwheel.
LinuxCNC starts.
The buttons have a function, exclude the handwheel.
					loadusr -W xhc-whb04b-6 -Hsf. No chance.
I installed buildbot new. Now with stretch not wheezy. I used the included driver.
and it works with:
halrun
loadusr -W xhc-whb04b-6 -Hsf
exclude the handwheel.
LinuxCNC starts.
The buttons have a function, exclude the handwheel.
		The following user(s) said Thank You: Catch22 	
			Please Log in or Create an account to join the conversation.
- alkabal
- Offline
- Platinum Member
- 
				  
		Less
		More
		
			
	
		- Posts: 476
- Thank you received: 52
			
	
						28 Apr 2020 10:32				#165946
		by alkabal
	
	
		
			
	
			
			 		
													
	
				Replied by alkabal on topic XHC-WHB04B-6 LinuxCNC not working			
			
				You need to push Step or Con for mpg selection
default mode is feedrate override
					default mode is feedrate override
Please Log in or Create an account to join the conversation.
- StormBP
- Offline
- New Member
- 
				  
		Less
		More
		
			
	
		- Posts: 9
- Thank you received: 1
			
	
						28 Apr 2020 20:12				#166006
		by StormBP
	
	
		
			
	
			
			 		
													
	
				Replied by StormBP on topic XHC-WHB04B-6 LinuxCNC not working			
			
				Oh yes!
Now i have a MPG.
Thank you alkabal for you asistance!
					Now i have a MPG.
Thank you alkabal for you asistance!
Please Log in or Create an account to join the conversation.
- Diederik
- 
				  
- Offline
- Premium Member
- 
				  
		Less
		More
		
			
	
		- Posts: 142
- Thank you received: 2
			
	
						04 May 2020 21:43				#166682
		by Diederik
	
	
		
			
	
			
			 		
													
	
				Replied by Diederik on topic XHC-WHB04B-6 LinuxCNC not working			
			
				Thank you very much. This was very helpfull.
It would be great if all this could be automated somehow, or included standard in linuxcnc. I followed all these steps, and it works, but now, I need to do a few more machines, and this process takes very long, and a lot of steps.
					It would be great if all this could be automated somehow, or included standard in linuxcnc. I followed all these steps, and it works, but now, I need to do a few more machines, and this process takes very long, and a lot of steps.
Please Log in or Create an account to join the conversation.
- alkabal
- Offline
- Platinum Member
- 
				  
		Less
		More
		
			
	
		- Posts: 476
- Thank you received: 52
			
	
						04 May 2020 23:18		 -  30 Jun 2020 21:18		#166691
		by alkabal
	
	
		
			
	
	
			 		
													
	
				Replied by alkabal on topic XHC-WHB04B-6 LinuxCNC not working			
			
				Hi
The driver is now integrated in 2.8 and 2.9
I think the job is done for only needed to do with a buildbot instal :
Add the exemple hal file in your config folder (use exemple from src folder on github rename as you want and add the named file in your ini HAL section + add the correspondent MDI command)
Unfortunatly the file does not display correctly on the github viewer but open this one on your linux computer should work fine
github.com/LinuxCNC/linuxcnc/tree/master...r_comps/xhc-whb04b-6
help inside the exemple file :
The rest of the file is the HAL file and is ready to use with comon setup (i hope)
I suggest to all to not use this exemple but use the file from github !
I suggest to all to not use this exemple but use the file from github !
The exemple file is for 3 axis ! if you need to use with Lathe you need to edit and remove Y relevant line
If you need to use 4 axis or more you need to copy past and edit for put the other axes.
I have do some effort for make a ready to use exemple file but everybody are welcome for enhance this driver.
Br
Ps : if you are able to do this, i think your welcome for add this to stepconf and pnconf 
 
Edit if you have some difficulty, please try to use this post :
forum.linuxcnc.org/38-general-linuxcnc-q...king?start=90#164533
					The driver is now integrated in 2.8 and 2.9
I think the job is done for only needed to do with a buildbot instal :
Add the exemple hal file in your config folder (use exemple from src folder on github rename as you want and add the named file in your ini HAL section + add the correspondent MDI command)
Unfortunatly the file does not display correctly on the github viewer but open this one on your linux computer should work fine
github.com/LinuxCNC/linuxcnc/tree/master...r_comps/xhc-whb04b-6
help inside the exemple file :
#//////////////////////////////////////////////////////////////////////////
### Example edit your ini and add :
#
#[HAL]
#HALFILE = <your-machine-hal>.hal
#HALFILE = xhc-whb04b-6.hal
#
## This section is for button mapping, you need to create for your own use.
#[HALUI]
#MDI_COMMAND=(debug,macro0)
#MDI_COMMAND=(debug,macro1)
#MDI_COMMAND=(debug,macro2)
#MDI_COMMAND=(debug,macro3)
#MDI_COMMAND=(debug,macro4)
#MDI_COMMAND=(debug,macro5)
#MDI_COMMAND=(debug,macro6)
#MDI_COMMAND=(debug,macro7)
#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)The rest of the file is the HAL file and is ready to use with comon setup (i hope)
I suggest to all to not use this exemple but use the file from github !
# ######################################################################
# load pendant components
# ######################################################################
loadusr -W xhc-whb04b-6 -HsfB
# ######################################################################
# pendant signal configuration
# ######################################################################
# On/Off signals
net machine.is-on                         halui.machine.is-on                   whb.halui.machine.is-on
net pdnt.machine.on                       whb.halui.machine.on                  halui.machine.on
net pdnt.machine.off                      whb.halui.machine.off                 halui.machine.off
# program related signals
net pdnt.program.is-idle                  whb.halui.program.is-idle             halui.program.is-idle
net pdnt.program.is-paused                whb.halui.program.is-paused           halui.program.is-paused
net pdnt.program-is-running               whb.halui.program.is-running          halui.program.is-running
net pdnt.program.resume                   whb.halui.program.resume              halui.program.resume
net pdnt.program.pause                    whb.halui.program.pause               halui.program.pause
net pdnt.program.run                      whb.halui.program.run                 halui.program.run
net pdnt.program.stop                     whb.halui.program.stop                halui.program.stop
# machine mode related signals
net pdnt.mode.auto                        whb.halui.mode.auto                   halui.mode.auto
net pdnt.mode.manual                      whb.halui.mode.manual                 halui.mode.manual
net pdnt.mode.mdi                         whb.halui.mode.mdi                    halui.mode.mdi
net pdnt.mode.joint                       whb.halui.mode.joint                  halui.mode.joint
net pdnt.mode.teleop                      whb.halui.mode.teleop                 halui.mode.teleop
net pdnt.mode.is-auto                     halui.mode.is-auto                    whb.halui.mode.is-auto
net pdnt.mode.is-manual                   halui.mode.is-manual                  whb.halui.mode.is-manual
net pdnt.mode.is-mdi                      halui.mode.is-mdi                     whb.halui.mode.is-mdi
net pdnt.mode.is-joint                    halui.mode.is-joint                   whb.halui.mode.is-joint
net pdnt.mode.is-teleop                   halui.mode.is-teleop                  whb.halui.mode.is-teleop
# "selected axis" signals
net pdnt.axis.X.select                    whb.halui.axis.x.select               halui.axis.x.select
net pdnt.axis.y.select                    whb.halui.axis.y.select               halui.axis.y.select
net pdnt.axis.Z.select                    whb.halui.axis.z.select               halui.axis.z.select
net pdnt.axis.x.jog-scale                 whb.axis.x.jog-scale                  axis.x.jog-scale
net pdnt.axis.y.jog-scale                 whb.axis.y.jog-scale                  axis.y.jog-scale
net pdnt.axis.z.jog-scale                 whb.axis.z.jog-scale                  axis.z.jog-scale
net pdnt.axis.x.jog-counts                whb.axis.x.jog-counts                 axis.x.jog-counts
net pdnt.axis.y.jog-counts                whb.axis.y.jog-counts                 axis.y.jog-counts
net pdnt.axis.z.jog-counts                whb.axis.z.jog-counts                 axis.z.jog-counts
net pdnt.axis.x.jog-enable                whb.axis.x.jog-enable                 axis.x.jog-enable
net pdnt.axis.y.jog-enable                whb.axis.y.jog-enable                 axis.y.jog-enable
net pdnt.axis.z.jog-enable                whb.axis.z.jog-enable                 axis.z.jog-enable
net pdnt.axis.x.jog-vel-mode              whb.axis.x.jog-vel-mode               axis.x.jog-vel-mode
net pdnt.axis.y.jog-vel-mode              whb.axis.y.jog-vel-mode               axis.y.jog-vel-mode
net pdnt.axis.z.jog-vel-mode              whb.axis.z.jog-vel-mode               axis.z.jog-vel-mode
# macro buttons to MDI commands
net pdnt.macro-1                          whb.button.macro-1                    halui.mdi-command-01             # use MDI command from main.ini
net pdnt.macro-2                          whb.button.macro-2                    halui.mdi-command-02             # use MDI command from main.ini or used for Hardcoded lube on/off
net pdnt.reserved.for.spindle+            whb.button.macro-3                                                     # Hardcoded for spindle+ whb.halui.spindle.increase
net pdnt.reserved.for.spindle-            whb.button.macro-4                                                     # Hardcoded for spindle- whb.halui.spindle.decrease
net pdnt.macro-5                          whb.button.macro-5                    halui.mdi-command-05             # use MDI command from main.ini
net pdnt.macro-6                          whb.button.macro-6                    halui.mdi-command-06             # use MDI command from main.ini
net pdnt.macro-7                          whb.button.macro-7                    halui.mdi-command-07             # use MDI command from main.ini
net pdnt.reserved.for.spindle.dir         whb.button.macro-8                                                     # Hardcoded for spindle direction inside pendant
net pdnt.macro-9                          whb.button.macro-9                    halui.mdi-command-09             # use MDI command from main.ini
net pdnt.reserved.for.ABS-REL             whb.button.macro-10                                                    # Hardcoded for swap Dro  Relative/Absolue
net pdnt.macro-14                         whb.button.macro-14                   halui.mdi-command-14             # use MDI command from main.ini
net pdnt.reserved.for.flood               whb.button.macro-15                                                    # Hardcoded for halui.flood on/off
net pdnt.reserved.for.mist                whb.button.macro-16                                                    # Hardcoded for halui.mist on/off
net pdnt.macro.11                         whb.button.macro-11                   halui.mdi-command-11             # use MDI command from main.ini
net pdnt.macro.12                         whb.button.macro-12                   halui.mdi-command-12             # use MDI command from main.ini
net pdnt.macro.13                         whb.button.macro-13                   halui.mdi-command-13             # use MDI command from main.ini
# flood and mist toggle signals
net  pdnt.flood.is-on                     whb.halui.flood.is-on                 halui.flood.is-on                #return signal is on or off
net  pdnt.flood.off                       whb.halui.flood.off                   halui.flood.off                  #reserved whb.button.macro-15
net  pdnt.flood.on                        whb.halui.flood.on                    halui.flood.on                   #reserved whb.button.macro-15
net  pdnt.mist.is-on                      whb.halui.mist.is-on                  halui.mist.is-on                 #return signal is on or off
net  pdnt.mist.off                        whb.halui.mist.off                    halui.mist.off                   #reserved whb.button.macro-16
net  pdnt.mist.on                         whb.halui.mist.on                     halui.mist.on                    #reserved whb.button.macro-16
#net  pdnt.lube.is-on                      whb.halui.lube.is-on                  halui.lube.is-on                 #return signal is on or off
#net  pdnt.lube.off                        whb.halui.lube.off                    halui.lube.off                   #reserved whb.button.macro-2
#net  pdnt.lube.on                         whb.halui.lube.on                     halui.lube.on                    #reserved whb.button.macro-2
# default function button signals
net pdnt.button.m-home                    whb.button.m-home                     halui.home-all                   # Homing use built-in halui home all
net pdnt.button.safe-z                    whb.button.safe-z                     halui.mdi-command-03             # Safe-z  use MDI command from main.ini
net pdnt.button.w-home                    whb.button.w-home                     halui.mdi-command-04             # Unpark  use MDI command from main.ini
net pdnt.button.probe-z                   whb.button.probe-z                    halui.mdi-command-08             # Probe-Z use MDI command from main.ini
# unused, just exposes pendant internal status or as basic button
#net pdnt.mode-lead                        whb.halui.feed.selected-lead
#net pdnt.mode-mpg-feed                    whb.halui.feed.selected-mpg-feed
#net pdnt.mode-continuous                  whb.halui.feed.selected-continuous
#net pdnt.mode-step                        whb.halui.feed.selected-step
#net pdnt.button.mode-mpg                  whb.button.mode-continuous
#net pdnt.button.mode-step                 whb.button.mode-step
#net pdnt.button.fn                        whb.button.fn
#net pdnt.button.reset                     whb.button.reset
#net pdnt.button.stop                      whb.button.stop
#net pdnt.button.start-pause               whb.button.start-pause
#net pdnt.button.s-on-off                  whb.button.s-on-off
#net pdnt.button.spindle-plus              whb.button.spindle-plus
#net pdnt.button.spindle-minus             whb.button.spindle-minus
#net pdnt.button.feed-plus                 whb.button.feed-plus
#net pdnt.button.feed-minus                whb.button.feed-minus
# spindle related signals
net pdnt.spindle.is-on                    whb.halui.spindle.is-on               spindle.0.on
net pdnt.spindle.start                    whb.halui.spindle.start               halui.spindle.0.start
net pdnt.spindle.stop                     whb.halui.spindle.stop                halui.spindle.0.stop
net pdnt.spindle.forward                  whb.halui.spindle.forward             halui.spindle.0.forward
net pdnt.spindle.reverse                  whb.halui.spindle.reverse             halui.spindle.0.reverse
net pdnt.spindle.increase                 whb.halui.spindle.increase            halui.spindle.0.increase         # reserved whb.button.macro-3
net pdnt.spindle.decrease                 whb.halui.spindle.decrease            halui.spindle.0.decrease         # reserved whb.button.macro-4
net pdnt.spindle-speed-abs                whb.halui.spindle-speed-cmd           spindle.0.speed-out-abs          # speed cmd from motion in rpm absolue
# spindle speed override signals
net pdnt.spindle-override.scale           whb.halui.spindle-override.scale      halui.spindle.0.override.scale   # needed for both spindle+/- and spindleoverride+/- button
net pdnt.spindle.override.value           halui.spindle.0.override.value        whb.halui.spindle-override.value # GUI feed rate related signals
net pdnt.spindle.override.increase        whb.halui.spindle-override.increase   halui.spindle.0.override.increase
net pdnt.spindle.override.decrease        whb.halui.spindle-override.decrease   halui.spindle.0.override.decrease
# GUI feed rate related signals can be used when program is running moving GUI slider
net pdnt.feed-override.scale              whb.halui.feed-override.scale         halui.feed-override.scale        # needed for both FeedOverride+/- and rotary knob button
net pdnt.max-velocity.value               whb.halui.max-velocity.value          halui.max-velocity.value         # needed for Mpg mode : button feed position% * max-velocity = Mpg feedrate
# take feed override min/max values from/to the GUI
net pdnt.feed-override.value              halui.feed-override.value             whb.halui.feed-override.value    # GUI feed rate related signals
net pdnt.feed-override.increase           whb.halui.feed-override.increase      halui.feed-override.increase
net pdnt.feed-override.decrease           whb.halui.feed-override.decrease      halui.feed-override.decrease
# axis position related signals feedback
net pdnt.axis.x.pos-feedback              halui.axis.x.pos-feedback             whb.halui.axis.x.pos-feedback
net pdnt.axis.y.pos-feedback              halui.axis.y.pos-feedback             whb.halui.axis.y.pos-feedback
net pdnt.axis.z.pos-feedback              halui.axis.z.pos-feedback             whb.halui.axis.z.pos-feedback
# axis position related signals relative
net pdnt.axis.x.pos-relative              halui.axis.x.pos-relative             whb.halui.axis.x.pos-relative
net pdnt.axis.y.pos-relative              halui.axis.y.pos-relative             whb.halui.axis.y.pos-relative
net pdnt.axis.z.pos-relative              halui.axis.z.pos-relative             whb.halui.axis.z.pos-relative
I suggest to all to not use this exemple but use the file from github !
The exemple file is for 3 axis ! if you need to use with Lathe you need to edit and remove Y relevant line
If you need to use 4 axis or more you need to copy past and edit for put the other axes.
I have do some effort for make a ready to use exemple file but everybody are welcome for enhance this driver.
Br
Ps : if you are able to do this, i think your welcome for add this to stepconf and pnconf
 
 
Edit if you have some difficulty, please try to use this post :
forum.linuxcnc.org/38-general-linuxcnc-q...king?start=90#164533
		Last edit: 30 Jun 2020 21:18  by alkabal.			
	
		The following user(s) said Thank You: MrFouFou 	
			Please Log in or Create an account to join the conversation.
- MrFouFou
- Offline
- Junior Member
- 
				  
		Less
		More
		
			
	
		- Posts: 27
- Thank you received: 3
			
	
						06 May 2020 19:51				#166887
		by MrFouFou
	
	
		
			
	
			
			 		
													
	
				Replied by MrFouFou on topic XHC-WHB04B-6 LinuxCNC not working			
			
				Many thanks alkabal, my pendant is now working !			
					Please Log in or Create an account to join the conversation.
		Time to create page: 0.194 seconds	
