- Posts: 115
- Thank you received: 0
7i84 pin does not exist
5 years 11 months ago #188614
by lrak
7i84 pin does not exist was created by lrak
A little confusing --
In the main machine.hal file..
The config IS working with the first of the 7i84 boards - hm2_7i93.0.7i84.0.0
But with the second - hm2_7i93.0.7i84.0.1
If I reference
hm2_7i93.0.7i84.0.1.output-00-invert
I get as an command line erorr :
Pin 'hm2_7i93.0.7i84.0.1.output-00-invert' does not exist
Yet - if I start up linuxcnc without the offending line
I can:
# halcmd show all |grep hm2_7i93.0.7i84.0.1.output-00-invert
26 bit RW FALSE hm2_7i93.0.7i84.0.1.output-00-invert
So the pin really does exist - and I'm using a similar pin on the first board without any trouble?
( I can also see the pin with halmeter and set it true with halcmd.. )..
,.,.,.
These boards are loaded with :
loadrt hostmot2
loadrt hm2_eth board_ip="192.168.10.10" config=" num_encoders=4 num_pwmgens=4 num_stepgens=4 sserial_port_0=00000000"
In the main machine.hal file..
The config IS working with the first of the 7i84 boards - hm2_7i93.0.7i84.0.0
But with the second - hm2_7i93.0.7i84.0.1
If I reference
hm2_7i93.0.7i84.0.1.output-00-invert
I get as an command line erorr :
Pin 'hm2_7i93.0.7i84.0.1.output-00-invert' does not exist
Yet - if I start up linuxcnc without the offending line
I can:
# halcmd show all |grep hm2_7i93.0.7i84.0.1.output-00-invert
26 bit RW FALSE hm2_7i93.0.7i84.0.1.output-00-invert
So the pin really does exist - and I'm using a similar pin on the first board without any trouble?
( I can also see the pin with halmeter and set it true with halcmd.. )..
,.,.,.
These boards are loaded with :
loadrt hostmot2
loadrt hm2_eth board_ip="192.168.10.10" config=" num_encoders=4 num_pwmgens=4 num_stepgens=4 sserial_port_0=00000000"
Please Log in to join the conversation.
5 years 11 months ago #188621
by PCW
Replied by PCW on topic 7i84 pin does not exist
typo or editor issue maybe?
You might try accessing the pin via halcmd
(which has command completion)
You might try accessing the pin via halcmd
(which has command completion)
Please Log in to join the conversation.
5 years 11 months ago #188624
by lrak
Replied by lrak on topic 7i84 pin does not exist
I checked the file for non ascii characters..
I WAS able to access the pin via halcmd.. I can see it - read it - write to it.
Wondering if it takes time for the second boards to be ready?
It works if I comment it out of the machine.hal file..
Is there a way to put a delay in the hal file?
I WAS able to access the pin via halcmd.. I can see it - read it - write to it.
Wondering if it takes time for the second boards to be ready?
It works if I comment it out of the machine.hal file..
Is there a way to put a delay in the hal file?
Please Log in to join the conversation.
5 years 11 months ago #188625
by PCW
Replied by PCW on topic 7i84 pin does not exist
No, as soon as LinuxCNC has started, all pins will be available
Please Log in to join the conversation.
5 years 11 months ago #188628
by lrak
Replied by lrak on topic 7i84 pin does not exist
This works
But this does not
The second set returns -
./wells.hal:316: Pin 'hm2_7i93.0.7i84.0.1.output-00-invert' does not exist
I'm thinking the error is blaming the wrong pin? This does not make sense.
I've tried linuxcnc -d - I see
And later
Code:
# ---estop signals---
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
setp hm2_7i93.0.7i84.0.1.output-00-invert true
But this does not
Code:
# ---estop signals---
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
net estop-out => hm2_7i93.0.7i84.0.1.output-00-invert
The second set returns -
./wells.hal:316: Pin 'hm2_7i93.0.7i84.0.1.output-00-invert' does not exist
I'm thinking the error is blaming the wrong pin? This does not make sense.
I've tried linuxcnc -d - I see
Code:
Board hm2_7i93.0.7i84.0.1 Hardware Mode 0 = standard
Board hm2_7i93.0.7i84.0.1 Software Mode 0 = input_output
Board hm2_7i93.0.7i84.0.1 Software Mode 1 = io_analog_fieldvoltage
Board hm2_7i93.0.7i84.0.1 Software Mode 2 = io_encoder_analog
And later
Code:
hm2/hm2_7i93.0: IO Pin 045 (P1-43): IOPort
hm2/hm2_7i93.0: IO Pin 046 (P1-45): IOPort
hm2/hm2_7i93.0: IO Pin 047 (P1-47): IOPort
hm2/hm2_7i93.0: registered
./wells.hal:315: Pin 'hm2_7i93.0.7i84.0.1.output-00-invert' does not exist
Please Log in to join the conversation.
5 years 11 months ago #188631
by PCW
Replied by PCW on topic 7i84 pin does not exist
That's correct. sorry i missed it on the first reply
There is no such pin as hm2_7i93.0.7i84.0.1.output-00-invert
(its a parameter that conditionally inverts the corresponding output pin)
There is no such pin as hm2_7i93.0.7i84.0.1.output-00-invert
(its a parameter that conditionally inverts the corresponding output pin)
Please Log in to join the conversation.
5 years 11 months ago #188634
by lrak
Replied by lrak on topic 7i84 pin does not exist
OK - looks just like a pin from
$ halcmd show all
I should have used
$ halcmd show pin
And when I set it true - it toggled the output fooling me ..
Tested and working now.
$ halcmd setp
Sets both pins and parameters..
I'm using iocontrol.0.user-enable-out it control a relay in the physical estop loop.
Thanks for you patience and help..
,.,.
I dug through the source code a bit looking at etop - you might know if there is any internal function that detects software fail - like an old style watchdog - and hits estop?
The halui.estop pins don't seem to be connected to anything I can find and I didn't find anything suggesting that the iocontrol pins associated with estop reflect anything internal.
(I think there may be an historical reason for iocontrol vs halui ?)
$ halcmd show all
I should have used
$ halcmd show pin
And when I set it true - it toggled the output fooling me ..
Tested and working now.
$ halcmd setp
Sets both pins and parameters..
I'm using iocontrol.0.user-enable-out it control a relay in the physical estop loop.
Code:
# ---estop signals---
#set parameter
setp hm2_7i93.0.7i84.0.1.output-00-invert false
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
net estop-out => hm2_7i93.0.7i84.0.1.output-00
Thanks for you patience and help..
,.,.
I dug through the source code a bit looking at etop - you might know if there is any internal function that detects software fail - like an old style watchdog - and hits estop?
The halui.estop pins don't seem to be connected to anything I can find and I didn't find anything suggesting that the iocontrol pins associated with estop reflect anything internal.
(I think there may be an historical reason for iocontrol vs halui ?)
Please Log in to join the conversation.
5 years 11 months ago #188638
by PCW
Replied by PCW on topic 7i84 pin does not exist
Not built in but there is a watchdog hal component
Please Log in to join the conversation.
5 years 11 months ago #188643
by cmorley
Replied by cmorley on topic 7i84 pin does not exist
halui pins are connect to linuxcnc through NML messages.
If linuxcnc send an ESTOP NML message, halui's pins will reflect this.
IOcontrol does the same thing, it lets an integrator tap into the estop chain.
There are many reasons linuxcnc sets the estop - limit switches, following errors etc.
If linuxcnc send an ESTOP NML message, halui's pins will reflect this.
IOcontrol does the same thing, it lets an integrator tap into the estop chain.
There are many reasons linuxcnc sets the estop - limit switches, following errors etc.
Please Log in to join the conversation.
5 years 11 months ago #188647
by lrak
Replied by lrak on topic 7i84 pin does not exist
@cmorley
I think I get it now - i missed that the halui.estop inputs are edge activated. (not in the docs).
iocontrol.0.user-enable-out is the inverse of halui.estop.is-activated
halui.estop.activate on rising edge activates halui.estop.is-activated
halui.estop.reset on rising edge resets halui.estop.is-activated
Levels won't prevent one from overriding with the axis button.
,.,.
I found that iocontrol.0.user-request-enable outputs a pulse - which might have been for connect to the halui.estop input signal..
I think I get it now - i missed that the halui.estop inputs are edge activated. (not in the docs).
iocontrol.0.user-enable-out is the inverse of halui.estop.is-activated
halui.estop.activate on rising edge activates halui.estop.is-activated
halui.estop.reset on rising edge resets halui.estop.is-activated
Levels won't prevent one from overriding with the axis button.
,.,.
I found that iocontrol.0.user-request-enable outputs a pulse - which might have been for connect to the halui.estop input signal..
Please Log in to join the conversation.
Time to create page: 0.108 seconds
