winder / Universal-G-Code-Sender

A cross-platform G-Code sender for GRBL, Smoothieware, TinyG and G2core.
http://winder.github.io/ugs_website/
GNU General Public License v3.0
1.89k stars 764 forks source link

Is there Scripting or Macro Functionality for External Control such as REST API? #2542

Open thebacons opened 3 months ago

thebacons commented 3 months ago

Description

I'm looking for a way to integrate my CNC workflow with external devices like Shelly relays, specifically the Shelly 1PM (https://kb.shelly.cloud/knowledge-base/shelly-plus-1pm).

My current CNC controller doesn't offer many built-in options for controlling external devices like a vacuum or air assist. Adding scripting or macro functionalities in UGS for external control via REST API would be a fantastic solution for several reasons:

Utilize Existing Hardware: I already have my vacuum and air assist connected to a Shelly 1PM, eliminating the need for additional relays and a dedicated 240-volt power supply. This keeps my setup simpler and more cost-effective. Reduced Complexity: Building in switching control functionalities directly into CNC controllers can introduce complexity and potentially increase the cost. Scripting or macro support in UGS would allow for more flexible control without modifying the core controller hardware. Minimized Noise: Integrating with external devices like Shelly relays can potentially help minimize Electro-Magnetic Field (EMF) noise that might be introduced by built-in switching circuits within the CNC controller. By enabling external control through scripting or macros, UGS could cater to various user scenarios and integrate seamlessly with existing setups like mine.

Is there currently a way to achieve external control through scripting or macros in UGS version? If not, would it be possible to implement such functionality in a future version?

I appreciate any insights or guidance the community can offer.

Regards Colin