Tweaked Probe Basic UI fails to launch

More
14 Oct 2022 03:22 - 14 Oct 2022 03:59 #254097 by msrdiesel
So I have been trying to set up a Fadal VMC20 for lcnc, and we have been making a lot of progress. We are down to the final issue in the ATC config for putting the tool back into the carousel.

I know for certain late last year that I was able to modify the PB UI with QT5, I had made changes but decided to go with QT Dragon HD on a knee mill conversion with steppers and it was a breeze.

So then it comes time for the Fadal, so I think I will just use the QT Dragon that I had already tweaked for the knee mill. We get to the ATC, write it and the gearchange in C code and it all works excellent...until we actually run the G code, and it gets to the tool change and just looks at us.

Needless to say we can't figure out how to interrupt the G code in C to raise the spindle so we shelve that idea, for now at least (I am python illiterate).

Fast forward to now, I have said all this to point out a big issue with Probe Basic and tweaking the UI by replacing the .ui file in the folder. For me in version 2.8.2, 2.8.4 and 2.9, I have all these available now in a ProxMox VM. If you edit the ui file in Qt5 and replace the old one you are fine...until...you make a desktop shortcut from lcnc. Once you do that it will crash when you replace the ui file. I only figured this out because I had my new version just as I wanted it, and thought I would save myself some time by clicking the box for a desktop shortcut, it worky no more. Fortunately I had drank enough coffee to get may brain working so I could retrace my steps. I removed the launcher and viola! It works again. I assure you it was much more difficult and time consuming than a single cup of coffee would demonstrate!

Just to save some perhaps a very large dose frustration, "I have been there, might just take up residence in frustrationville, who knows!"

Please let me know if I am just nuts, or please! If you have figured this one out too, confirm my sanity.

* UPON FURTHER ATTEMPTS (or, overlooked), 2.9 ON DEBIAN 11 FAILS PERIOD, with an unchanged ui once it has gone through QT5 designer, with a fresh install.*
Last edit: 14 Oct 2022 03:59 by msrdiesel. Reason: New information

Please Log in or Create an account to join the conversation.

More
21 Oct 2022 12:22 #254666 by andypugh
It's been a long time with no answers, but have you made any more progress?
I might be able to help with the toolchange, but anything QT is a mystery to me.

What is the actual command that is ending up inside the launcher?

Please Log in or Create an account to join the conversation.

More
21 Oct 2022 12:22 #254667 by andypugh
It's been a long time with no answers, but have you made any more progress?
I might be able to help with the toolchange, but anything QT is a mystery to me.

What is the actual command that is ending up inside the launcher?

Please Log in or Create an account to join the conversation.

More
21 Oct 2022 16:13 - 21 Oct 2022 16:13 #254697 by msrdiesel
We have the machine fully operational now. The lack of documentation and examples for qtpyvcp / probe basic makes it very difficult, yet we were able to get it all figured out.

Some things still mystify me though, like getting the jog increment from the ui, as I added an mpg wheel, and would like the selected increment on the screen to translate to the mpg, but HAL does not expose it.

Also disabling the tool change buttons when it is in auto mode, or when the spindle is turning, then re-enabling them in MDI/Manual mode seems like it should have been an obvious inherent consideration.

Thank you for checking in on our progress, Andy.
Last edit: 21 Oct 2022 16:13 by msrdiesel.

Please Log in or Create an account to join the conversation.

More
21 Oct 2022 17:41 #254700 by Lcvette
for the jog increment, this would be a linuxcnc thing rather than a probe basic thing i think? it has been a while since i looked at that portion of PB, but from memory PB just runs the INI settings through a small py file to create the displayed increment buttons.

as for the documentation, I do plan on working on that but it will be after 2.9 or whenever the official py3 linuxcnc is released. it is too difficult keeping up with all the installation changes needed and deps etc to worry with it. once that release hits, I will go through and verify everything on PB and i have some work done locally that ties most of the buttons to a pop up definition to make it learn as you go, and with a stable official release it should be easy to write a set of installation instructions that does not need to be edited and updated so frequently. I myself have not even made the switch to 2.9/PB Py3 on my work machine and I very much look forward to it as there is more functionality and bug fixes, but i want the easy updating and not turn my production machine in to a test bed.

when i do make that change finally PB will be thoroughly gone through and most of the reported issues bugs will get sussed out and fixed quickly.

We also more than welcome and would very much appreciate any help with docs or other work that could be contributed in its development. many hands make light work so to speak! if you may have interest in that please let me know, I could help get you setup for it.

Please Log in or Create an account to join the conversation.

More
22 Oct 2022 15:09 #254758 by msrdiesel
So if you want to find answers where do you look? I would like to contribute based on solutions that I find, and will be happy to post the results.

Where would you find the settings for gremlin, to set the default zoom level and perspective, or perhaps set it to FIT ALL when you load a G code file? The default zoom in 2.8.4 seems to be microscopic by default, forcing you to press the zoom button many times.

Can you externally control the on screen e-stop from an input pin? What works in Qt Dragon, does not apply to Probe Basic.

Is it possible to disable and re-enable some buttons based on machine mode?

I certainly appreciate any direction that can be provided for a solution. I would also be happy to make a video and document the process. But I have no idea where to look, is it in a python file, or another and if so where is it located specifically?

Please Log in or Create an account to join the conversation.

More
22 Oct 2022 16:49 #254772 by tommylight


Can you externally control the on screen e-stop from an input pin?
Is it possible to disable and re-enable some buttons based on machine mode?

Yes and yes, everything within reason can be done with a bit of hal coding or editing.
Just take things step by step, everything falls in place after a while.

Please Log in or Create an account to join the conversation.

More
23 Oct 2022 22:14 - 23 Oct 2022 23:11 #254871 by msrdiesel
I would like the external estop to control the ui software estop button, how do I do this?  This is what I have now
# estop
loadrt estop_latch
addf estop-latch.0 servo-thread
net estop-loopout iocontrol.0.emc-enable-in <= estop-latch.0.ok-out
net estop-loopin iocontrol.0.user-enable-out => estop-latch.0.ok-in
net estop-reset iocontrol.0.user-request-enable => estop-latch.0.reset
net remote-estop estop-latch.0.fault-in <= hm2_5i25.0.7i77.0.0.input-15
Attachments:
Last edit: 23 Oct 2022 23:11 by msrdiesel.

Please Log in or Create an account to join the conversation.

More
24 Oct 2022 02:39 #254876 by spumco
I've set PB up to do what you want, sort-of.
  • External physical latching NC estop button and momentary NO reset button
    • Estop & reset buttons form holding circuit in a 24vdc DPDT relay
    • Relay contacts #1 control the main VFD & drive contactors
    • Relay contacts #2 send signal to LCNC through a Mesa input that estop is de-asserted.  It's the actual relay and not the button that does the signaling.
  • Also have an air pressure switch - ignore if you don't need it.
  • The one-shot & time-delay below is used as a slight delay - found I needed it to have the estop clear then the machine-on signal for everything to work smoothly.
  • Don't forget to loadrt and addf the additional oneshot, timedelay components (plus and2 if you want an air-switch in the estop chain)
#AIR SAFETY - comment out to bypass air safety
net AIR_PRESSURE_OK  <=  [HMOT](CARD0).7i76.0.0.input-24
net ESTOP_RELAY          <=    [HMOT](CARD0).7i76.0.0.input-20
net AIR_PRESSURE_OK  =>  and2.0.in0
net ESTOP_RELAY          =>  and2.0.in1
net estop-clear                 <=  and2.0.out
net estop-clear                 =>  iocontrol.0.emc-enable-in
net estop-out                    <=  iocontrol.0.user-enable-out

#MACHINE-ON WITH ESTOP CLEAR
setp oneshot.0.width            2
setp timedelay.0.off-delay      0.1
net estop-clear                     =>    oneshot.0.in
net MACHINE_ON_DELAY   <=  oneshot.0.out
net MACHINE_ON_DELAY   =>  timedelay.0.in
net MACHINE_ON               <=  timedelay.0.out
net MACHINE_ON               =>  halui.machine.on

The 'net estop-out' line is not needed, but I can use it for some other estop signaling (flashing light, disco ball, etc.)

However you set your machine up, it's the iocontrol.0.emc-enable-in and halui.machine.on pins that do what (I think) you want.

Nice Fadal, BTW.  And really nice panel.

Cheers,
Ralph
The following user(s) said Thank You: msrdiesel

Please Log in or Create an account to join the conversation.

More
24 Oct 2022 04:13 - 24 Oct 2022 04:14 #254880 by msrdiesel
Thank you Ralph, but on my machine the the halui.machine.on synchronizes the estop and machine on buttons to work together, is this how yours functions? I would like my external e stop to turn on and off the UI estop button.

It does turn it off when I hit the the external estop, but when I reset the external one, I must manually reset the button on the UI. Not a huge deal but I have another machine with QT Dragon and it does just that.
Last edit: 24 Oct 2022 04:14 by msrdiesel.

Please Log in or Create an account to join the conversation.

Moderators: KCJLcvette
Time to create page: 0.109 seconds
Powered by Kunena Forum