I've tried about everything I can here and can't get the GCODE System Commands plugin to execute commands asynchronously, even when executing from a script that returns normally.
I started by simply appending "&" to the end of the Python call, i.e.
/usr/bin/python3 /path/to/script/action.py&
This would (at the command line) run action.py then return the console prompt. What I would expect is that the plugin executes the Python script then continues GCODE execution. Instead it just halts.
I tried to get around this by creating a shell script that can execute the python script instead... something like:
#!/bin/bash
/usr/bin/python3 $1&
Then, in the plugin, use:
sh /path/to/script/shscript.sh /path/to/script/action.py
Which, when ran from the command prompt, will execute the python command in the background and immediately return. Instead the python script is ran and GCODE execution is halted.
I'm going to experiment with disown next but I don't hold out much hope.