Vista CNC and 2.9
31 May 2024 19:26 - 31 May 2024 19:28 #301984
by Aciera
Replied by Aciera on topic Vista CNC and 2.9
Apologies, I was trying to show how signals are different from pins.
Try this:
# 12---SPINDLE
net spindle-start <= vc-p4s.spindle.start => halui.spindle.0.start
net spindle-stop <= vc-p4s.spindle.stop => halui.spindle.0.stop
net spindle-is-on <= halui.spindle.0.is-on => vc-p4s.spindle.is-on => parport.0.pin-01-out
Try this:
# 12---SPINDLE
net spindle-start <= vc-p4s.spindle.start => halui.spindle.0.start
net spindle-stop <= vc-p4s.spindle.stop => halui.spindle.0.stop
net spindle-is-on <= halui.spindle.0.is-on => vc-p4s.spindle.is-on => parport.0.pin-01-out
Last edit: 31 May 2024 19:28 by Aciera. Reason: Change signal names to make them look less like pins
Please Log in or Create an account to join the conversation.
31 May 2024 21:56 #302010
by milu
Replied by milu on topic Vista CNC and 2.9
I replaced my section 12 with the code you suggest and linuxcnc aborts with:
./vc-p4s.hal:109: Pin 'parport.0.pin-01-out' was already linked to signal 'spindle-on'
So I commented this line out in the main hal:
#net spindle-on => parport.0.pin-01-out
and that fixes the error, but the spindle still does not operate.
Can I ask a basic question? If this section of src/emc/motion/command.c is reached (which it is) shouldn't the spindle turn on?
case EMCMOT_SPINDLE_ON:
rtapi_print_msg(RTAPI_MSG_DBG, "SPINDLE_ON: spindle %d/%d speed %d\n",
emcmotCommand->spindle, emcmotConfig->numSpindles, (int) emcmotCommand->vel);
spindle_num = emcmotCommand->spindle;
if (spindle_num >= emcmotConfig->numSpindles){
reportError(_("Attempt to start non-existent spindle"));
emcmotStatus->commandStatus = EMCMOT_COMMAND_INVALID_COMMAND;
break;
}
...
./vc-p4s.hal:109: Pin 'parport.0.pin-01-out' was already linked to signal 'spindle-on'
So I commented this line out in the main hal:
#net spindle-on => parport.0.pin-01-out
and that fixes the error, but the spindle still does not operate.
Can I ask a basic question? If this section of src/emc/motion/command.c is reached (which it is) shouldn't the spindle turn on?
case EMCMOT_SPINDLE_ON:
rtapi_print_msg(RTAPI_MSG_DBG, "SPINDLE_ON: spindle %d/%d speed %d\n",
emcmotCommand->spindle, emcmotConfig->numSpindles, (int) emcmotCommand->vel);
spindle_num = emcmotCommand->spindle;
if (spindle_num >= emcmotConfig->numSpindles){
reportError(_("Attempt to start non-existent spindle"));
emcmotStatus->commandStatus = EMCMOT_COMMAND_INVALID_COMMAND;
break;
}
...
Please Log in or Create an account to join the conversation.
01 Jun 2024 04:03 #302036
by Aciera
Replied by Aciera on topic Vista CNC and 2.9
I'm not sure that looking at the source code is the most efficient way of getting your spindle to turn. In your current situation it would be more straightforward to figure out how the hal language works because that is where the relevant connections are made to get signals to your parallel port. So I would strongly suggest to focus on your hal signal paths using the 'show hal configuration' tool.
My most immediate question would be:
What is the state of 'parport.0.pin-01-out'.
If that goes true and your spindle does not turn then your problem is likely in the wiring. If it does not go true then you would want to find out why by looking at 'halui.spindle.0.is-on'.
My most immediate question would be:
What is the state of 'parport.0.pin-01-out'.
If that goes true and your spindle does not turn then your problem is likely in the wiring. If it does not go true then you would want to find out why by looking at 'halui.spindle.0.is-on'.
Please Log in or Create an account to join the conversation.
Time to create page: 0.132 seconds