Advanced Search

Search Results (Searched for: )

  • Guytou
  • Guytou
10 Feb 2025 10:18

M-code to toggle macrobutton not working on QtDragon

Category: General LinuxCNC Questions

Hi, I think I am progressing, but not completely.Enclosed my new M100 and subroutine files.The purpose is to assign to a macrobutton in QtDragon an o-word script with a MDI-COMMAND that would allow me to toggle on and off a laser. (I have a 10W from Creality), besides my spindle that will of course be switched off.The laser is connected to an output pin (hal_pi_gpio.pin-10-out) and this pin is connected to a signal (laser-on). In the subroutine, I want to check what the status of this output pin is and then switching OFF if it is ON or switching ON if it is OFF.Since the hal-pi-gpio is connected to a signal, I cannot use getp and are using gets. But since subroutines do not accept halcmd gets commandes, I made a macro (M100) to fetch the status of the hal-pi-gpio. So far so good.Now when pushing the button, M100 does his job and stores the status of the hal-pi-gpio in a variable (

File Attachment:

File Name: M100.zip
File Size:0 KB

File Attachment:

File Name: laser_on.ngc
File Size:0 KB
  • pmchetan
  • pmchetan
10 Feb 2025 09:54 - 10 Feb 2025 11:11
Replied by pmchetan on topic Hal configuration for BISS encoder

Hal configuration for BISS encoder

Category: HAL

For people who might be looking to set similar hardware: The hm2_pci configuration string "biss_chan_0=start%1bxencoder%24ezero%2ueerror%1bwarning%1bcrc%6f" works correctly for my setup of Renishaw (RLS) AS10 scale with LA11 reader.
To set the right scale, I noted down the total raw counts the encoder was spitting on pin: hm2_5i25.biss.0.xencoder.rawcounts and divided the total count with physical length of the scale measured in millimeter in my case. It turned out to be 1000000 counts per millimeter. I tried setting the scale with setp hm2_5i25.0.biss.00.xencoder.scale 1000000 and the linuxcnc GUI showed correct measurement.

I solved setting up the linear scale part of the equation and now am trying to make a precision servo axis with the said scale system coupled with a low cost BLDC motor and drive: robokits.co.in/automation-control-cnc/br...rmcs-6611-750w-drive

{Buying this drive was a mistake but in my defence, it did mention it has pulse input mentioned in its listing: robokits.co.in/motor-drives-drivers/brus...odbus-rtu-compatible
The seller suggests using bc547 transistor based external circuit to pull the SV pin on the drive to ground at the step frequency from 7i76 but I am unable to understand why it's not working for me when the seller setup the same circuit and sent me the video of driving the motor using pulse signals from an arduino.}

@PCW if you could make exact same 3 channel BISS firmware but with 6i25_7i77_7i74 this time. I would like to try making the available components (the motor & drive) into closed loop servo axis.
Also can we use pwmgen instead of stepgen on 7i76 to interface with the drive I have?
  • tommy
  • tommy
10 Feb 2025 09:05
Replied by tommy on topic 7i95T + 7i78 spindle configuration

7i95T + 7i78 spindle configuration

Category: Basic Configuration

I ment hm2_7i95.0.gpio.050.outoutput which enable/disable vfd.

I solved it with additional near component, which outputs true when in my case spindle-ramped is at zero, and this output is inverted, so I can use it for VFD enable.

Code below, if someone in future faces similar problem:
# -------SPINDLE SOFT START --------------------------------------

# load the real time modules limit2 and near with names so it is easier to follow their connections
loadrt limit2 names=spindle-ramp
loadrt near names=spindle-at-speed,spindle-zero

# add the functions to a thread
addf spindle-ramp        servo-thread
addf spindle-at-speed    servo-thread

# spimdle-zero pin used for enabeling vfd and disabeling after decel is finished
addf spindle-zero        servo-thread

# set the parameter for max rate-of-change
# (max spindle accel/decel in units per second)
setp spindle-ramp.maxv 1100

# hijack the spindle speed out and send it to spindle ramp in
net spindle-cmd <= spindle.0.speed-out => spindle-ramp.in

# the output of spindle ramp is sent to the scale in
net spindle-ramped <= spindle-ramp.out => scale.0.in

# to know when to start the motion we send the near component
# (named spindle-at-speed) to the spindle commanded speed from
# the signal spindle-cmd and the actual spindle speed
# provided your spindle can accelerate at the maxv setting.
net spindle-cmd => spindle-at-speed.in1
net spindle-ramped => spindle-at-speed.in2

# setting first input of second near input to 0
setp spindle-zero.in1 0

# sending actual spindle speed to second input of second near module
net spindle-ramped => spindle-zero.in2

# the output from spindle-at-speed is sent to spindle.0.at-speed
# and when this is true motion will start
net spindle-ready <= spindle-at-speed.out => spindle.0.at-speed

# ---------- SPIDNLE OUT -----------

setp hm2_7i95.0.gpio.050.is_output 1

# spindle-zero.out is used for delaying VFD disable to wait spindle ramp down till stops spining
net sindle-enbl spindle-zero.out => hm2_7i95.0.gpio.050.out

setp hm2_7i95.0.pwmgen.00.out0.invert_output true
setp hm2_7i95.0.pwmgen.pwm_frequency 2000
setp hm2_7i95.0.pwmgen.00.scale 16500
net spindle-on <= spindle.0.on
net spindle-on => hm2_7i95.0.pwmgen.00.enable
net spindle-ramped => hm2_7i95.0.pwmgen.00.value
  • meister
  • meister
10 Feb 2025 08:53

LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)

Category: Computers and Hardware

i have released a new version (dev->main),

but remember, never change a running system :)

If you update you also have to rebuild the gateware.

if you use i2c devices you probably have to change your config, it no longer runs individually but really as a bus (or several).

github.com/multigcs/riocore/blob/main/CHANGELOG.md
  • partec
  • partec
10 Feb 2025 08:41 - 10 Feb 2025 08:54
  • automata
  • automata
10 Feb 2025 08:35
Replied by automata on topic scurve trajectory planner

scurve trajectory planner

Category: General LinuxCNC Questions

Hi Grotius,
I feel that for 3 axis Gcode, your earlier method of applying 2D bi-clothoids by considering them in the plane holding the two lines should be sufficient for line-line, line-arc and arc-line cases. Only in arc-arc case, you may run into this 3D clothoid / torsion scenario.
-automata
Displaying 19381 - 19386 out of 19386 results.
Time to create page: 0.505 seconds
Powered by Kunena Forum