Unable to exit Estop after upgrading to 2.10 (from 2.9)
- frayja2002
- Offline
- Premium Member
Less
More
- Posts: 151
- Thank you received: 11
03 Jan 2024 03:16 #289632
by frayja2002
Hi all
Please be advised this is a cross post from a different area.
I was wondering if some could have a look at my Estop setup, that has stopped working.
I am running debian Bookworm & had 2.9 running with no problems.
I have updated to 2.10.0-pre0-2499-g1b0a72c1f2 (using buildbot) & now when I press my hardware Estop button I cannot exit Estop.
I have another machine still running 2.9 & this setup works so I am guessing there is some change in the HAL semantics.
After having now spent some time messing around with this I can only think this must have something to do with the "Estop Set" button in QTdragon as the and function never becomes enabled again. In fact the Estop button doesn't seem to respond at all.
I couldn't be sure though as the whole Estop system in linuxCNC is frustratingly complicated. (Yes ther has been some creative English)
Thanks
Alex
Please be advised this is a cross post from a different area.
I was wondering if some could have a look at my Estop setup, that has stopped working.
I am running debian Bookworm & had 2.9 running with no problems.
I have updated to 2.10.0-pre0-2499-g1b0a72c1f2 (using buildbot) & now when I press my hardware Estop button I cannot exit Estop.
I have another machine still running 2.9 & this setup works so I am guessing there is some change in the HAL semantics.
After having now spent some time messing around with this I can only think this must have something to do with the "Estop Set" button in QTdragon as the and function never becomes enabled again. In fact the Estop button doesn't seem to respond at all.
I couldn't be sure though as the whole Estop system in linuxCNC is frustratingly complicated. (Yes ther has been some creative English)
Thanks
Alex
Please Log in or Create an account to join the conversation.
- tommylight
- Away
- Moderator
Less
More
- Posts: 19188
- Thank you received: 6430
03 Jan 2024 03:32 #289633
by tommylight
Replied by tommylight on topic Unable to exit Estop after upgrading to 2.10 (from 2.9)
Double posting is never a good idea, makes a mess.
Bumping the old post/topic would be better.
-
This is the second time i am staring at the same config files and wondering why the .... is there so much stuff about e-stop ???
Does Remora require that mess?
_
I am fully aware i am not helping, but i never ever used anything other than simple built in logic for e-stop, even on several tons heavy machines.
2 pins only ...
Bumping the old post/topic would be better.
-
This is the second time i am staring at the same config files and wondering why the .... is there so much stuff about e-stop ???
Does Remora require that mess?
_
I am fully aware i am not helping, but i never ever used anything other than simple built in logic for e-stop, even on several tons heavy machines.
2 pins only ...
Please Log in or Create an account to join the conversation.
- frayja2002
- Offline
- Premium Member
Less
More
- Posts: 151
- Thank you received: 11
03 Jan 2024 04:06 #289635
by frayja2002
Replied by frayja2002 on topic Unable to exit Estop after upgrading to 2.10 (from 2.9)
Unfortunately I don't really understand it at all. the remora part is 3 lines (from github)....
net user-enable-out <= iocontrol.0.user-enable-out => remora.enable
net user-request-enable <= iocontrol.0.user-request-enable => remora.reset
net remora-status <= remora.status => iocontrol.0.emc-enable-in
I used these lines to allow a hardware Estop button....
net remora-status <= remora.status => and2.0.in0
net estop-status <= estop-latch.0.ok-out => and2.0.in1
net user-enable-in <= and2.0.out => iocontrol.0.emc-enable-in
And as far as I can see the rest is some sort of glue logic.
Do you have a (simpler) example using a hardware input?
I posted here because this all works in 2.9 but does not work in 2.10. I have tested the exact same code & hardware, the only difference being the version of LinuxCNC.
If you can add anything I would appreciate it as it does all seem very convoluted to me.
Thanks
Alex
net user-enable-out <= iocontrol.0.user-enable-out => remora.enable
net user-request-enable <= iocontrol.0.user-request-enable => remora.reset
net remora-status <= remora.status => iocontrol.0.emc-enable-in
I used these lines to allow a hardware Estop button....
net remora-status <= remora.status => and2.0.in0
net estop-status <= estop-latch.0.ok-out => and2.0.in1
net user-enable-in <= and2.0.out => iocontrol.0.emc-enable-in
And as far as I can see the rest is some sort of glue logic.
Do you have a (simpler) example using a hardware input?
I posted here because this all works in 2.9 but does not work in 2.10. I have tested the exact same code & hardware, the only difference being the version of LinuxCNC.
If you can add anything I would appreciate it as it does all seem very convoluted to me.
Thanks
Alex
Please Log in or Create an account to join the conversation.
03 Jan 2024 07:41 #289639
by cmorley
Replied by cmorley on topic Unable to exit Estop after upgrading to 2.10 (from 2.9)
There is a difference - I haven't found out why yet.
2.9
with iocontrol.0.emc-enable-in false and push 'estop set' button:
iocontrol.0.user-request-enable goes true momentarily <<<
iocontrol.0.user-enable-out goes true
You can also ignore the above because:
when iocontrol.0.emc-enable-in goes true, estop loop is fully enabled (button goes green)
It's usual to connect iocontrol.0.user-enable-out to iocontrol.0.emc-enable-in in some way so both need to be true.
2.10:
with iocontrol.0.emc-enable-in false and push 'estop set' button:
iocontrol.0.user-request-enable goes true <<<
iocontrol.0.user-enable-out goes true
You can also ignore the above because:
when iocontrol.0.emc-enable-in goes true, estop loop is fully enabled (button goes green)
It's usual to connect iocontrol.0.user-enable-out to iocontrol.0.emc-enable-in in some way so both need to be true.
Chris
2.9
with iocontrol.0.emc-enable-in false and push 'estop set' button:
iocontrol.0.user-request-enable goes true momentarily <<<
iocontrol.0.user-enable-out goes true
You can also ignore the above because:
when iocontrol.0.emc-enable-in goes true, estop loop is fully enabled (button goes green)
It's usual to connect iocontrol.0.user-enable-out to iocontrol.0.emc-enable-in in some way so both need to be true.
2.10:
with iocontrol.0.emc-enable-in false and push 'estop set' button:
iocontrol.0.user-request-enable goes true <<<
iocontrol.0.user-enable-out goes true
You can also ignore the above because:
when iocontrol.0.emc-enable-in goes true, estop loop is fully enabled (button goes green)
It's usual to connect iocontrol.0.user-enable-out to iocontrol.0.emc-enable-in in some way so both need to be true.
Chris
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- frayja2002
- Offline
- Premium Member
Less
More
- Posts: 151
- Thank you received: 11
03 Jan 2024 17:51 #289680
by frayja2002
Replied by frayja2002 on topic Unable to exit Estop after upgrading to 2.10 (from 2.9)
Thanks for the reply.
I have re-writen the Estop code deleting the estop-latch stuff (it seems redundent)
I'm not quite sure why it was needed in the first plase.
Here is the code that is tested & working...
net remora-status <= remora.status => and2.0.in0
net estop-status <= remora.input.00.not => and2.0.in1
net user-enable-in <= and2.0.out => iocontrol.0.emc-enable-in
net user-enable-out <= iocontrol.0.user-enable-out => remora.enable
net user-request-enable <= iocontrol.0.user
Thanks
Alex
I have re-writen the Estop code deleting the estop-latch stuff (it seems redundent)
I'm not quite sure why it was needed in the first plase.
Here is the code that is tested & working...
net remora-status <= remora.status => and2.0.in0
net estop-status <= remora.input.00.not => and2.0.in1
net user-enable-in <= and2.0.out => iocontrol.0.emc-enable-in
net user-enable-out <= iocontrol.0.user-enable-out => remora.enable
net user-request-enable <= iocontrol.0.user
Thanks
Alex
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
07 Jan 2024 03:15 #290040
by tommieh
Replied by tommieh on topic Unable to exit Estop after upgrading to 2.10 (from 2.9)
Hi,
It seems I have also an ESTOP issue, but I’m not sure what’s going on.
I have a custom qtvcp UI based on qtdragon that is running fine in 2.9.0-pre0.
When I copied the UI to 2.9.2, I cannot get out of ESTOP. I also noticed that it took almost 30 seconds to get the UI coming up on the monitor.
Trying to figure out what’s going on, I went back to basics and made a UI in 2.9.2 as per QTVCP documentation called ‘tester’ with ESTOP action button and Machine On action button. I made the ESTOP and Machine On action button exactly the same as in qtdragon.ui from 2.9.2.
When I run tester UI in 2.9.2, I cannot get out of ESTOP as well.
When I click ESTOP in tester, it seems the UI freezes for a couple of seconds. Immediately after clicking ESTOP, I tried moving Gcode graphics, and only after 5 seconds or so it starts responding again.
I also tried editing qtdragon.ui by deleting the existing ESTOP action button, saving the file and then creating a new ESTOP action button. That all works ok, qdragon.ui starts quick, runs and gets out of ESTOP after I made the changes. Now I’m really confused.
I copied the tester.ui I made in 2.9.2 to 2.9.0-pre0.
In 2.9.0-pre0 the ESTOP button resets and I can get out of ESTOP.
Machine On works as well.
The .hal files are the same as well as the .ini files in 2.9.0-pre0 or 2.9.2
What am I missing or doing wrong?
Thanks
It seems I have also an ESTOP issue, but I’m not sure what’s going on.
I have a custom qtvcp UI based on qtdragon that is running fine in 2.9.0-pre0.
When I copied the UI to 2.9.2, I cannot get out of ESTOP. I also noticed that it took almost 30 seconds to get the UI coming up on the monitor.
Trying to figure out what’s going on, I went back to basics and made a UI in 2.9.2 as per QTVCP documentation called ‘tester’ with ESTOP action button and Machine On action button. I made the ESTOP and Machine On action button exactly the same as in qtdragon.ui from 2.9.2.
When I run tester UI in 2.9.2, I cannot get out of ESTOP as well.
When I click ESTOP in tester, it seems the UI freezes for a couple of seconds. Immediately after clicking ESTOP, I tried moving Gcode graphics, and only after 5 seconds or so it starts responding again.
I also tried editing qtdragon.ui by deleting the existing ESTOP action button, saving the file and then creating a new ESTOP action button. That all works ok, qdragon.ui starts quick, runs and gets out of ESTOP after I made the changes. Now I’m really confused.
I copied the tester.ui I made in 2.9.2 to 2.9.0-pre0.
In 2.9.0-pre0 the ESTOP button resets and I can get out of ESTOP.
Machine On works as well.
The .hal files are the same as well as the .ini files in 2.9.0-pre0 or 2.9.2
What am I missing or doing wrong?
Thanks
Please Log in or Create an account to join the conversation.
07 Jan 2024 04:47 #290044
by cmorley
Replied by cmorley on topic Unable to exit Estop after upgrading to 2.10 (from 2.9)
Do the qtdragon sim work properly?
Please Log in or Create an account to join the conversation.
07 Jan 2024 05:54 #290051
by tommieh
Replied by tommieh on topic Unable to exit Estop after upgrading to 2.10 (from 2.9)
Yes, qtdragon works properly.
Please Log in or Create an account to join the conversation.
08 Jan 2024 07:22 #290188
by tommieh
Replied by tommieh on topic Unable to exit Estop after upgrading to 2.10 (from 2.9)
I'm thinking to add some debug information, like some print statements, so I can trace what's going on.
Could you please let me know in what files and where in these files I can add these print statements?
Or is there a better way to trace?
Thanks
Could you please let me know in what files and where in these files I can add these print statements?
Or is there a better way to trace?
Thanks
Please Log in or Create an account to join the conversation.
09 Jan 2024 05:34 #290260
by cmorley
Replied by cmorley on topic Unable to exit Estop after upgrading to 2.10 (from 2.9)
Estop is an action button which subclasses indicator buttons:
github.com/LinuxCNC/linuxcnc/blob/master...ets/action_button.py
github.com/LinuxCNC/linuxcnc/blob/master...mple_widgets.py#L319
My guess is a small change in the indicator class did it. I will try to got bisect it by the weekend.
github.com/LinuxCNC/linuxcnc/blob/master...ets/action_button.py
github.com/LinuxCNC/linuxcnc/blob/master...mple_widgets.py#L319
My guess is a small change in the indicator class did it. I will try to got bisect it by the weekend.
Please Log in or Create an account to join the conversation.
Moderators: cmorley
Time to create page: 0.111 seconds