Advanced Search

Search Results (Searched for: )

  • esmurf
  • esmurf
09 Jun 2025 13:03
Replied by esmurf on topic qtdragon_hd: Cant set units to metric

qtdragon_hd: Cant set units to metric

Category: Qtvcp

Thanks for your help, that was the problem
  • cmorley
  • cmorley
09 Jun 2025 12:53
Replied by cmorley on topic qtdragon_hd: Cant set units to metric

qtdragon_hd: Cant set units to metric

Category: Qtvcp

Qtdragon changes displayed units based on g20/21 modes
  • deltafox24
  • deltafox24
09 Jun 2025 12:53
SANGE elec IO was created by deltafox24

SANGE elec IO

Category: EtherCAT

Hi everyone,
I bought this device: SG-ELC-ADIO-DI16-DO16-PNP.
I wrote a custom XML file for it, but for some reason, after I load it, there's a 90% chance that EtherCAT crashes with an error.
I suspect that it might be slowing down the entire system, or maybe I wrote the XML incorrectly.Here’s what I wrote:
 <slave idx="4" type="generic" vid="EE000002" pid="00010205" configPdos="true" >
            <dcConf assignActivate="0000" sync0Cycle="0" sync0Shift="0"/>
        
            <syncManager idx="0" dir="out">
                <pdo idx="1a00">
                    <pdoEntry idx="3101" subIdx="1" bitLen="8" halType="complex">
                        <complexEntry bitLen="1" halPin="out-00" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-01" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-02" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-03" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-04" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-05" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-06" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-07" halType="bit"/>
                    </pdoEntry>
                </pdo>
                <pdo idx="1a01">
                    <pdoEntry idx="3101" subIdx="2" bitLen="8" halType="complex">
                        <complexEntry bitLen="1" halPin="out-08" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-09" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-10" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-11" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-12" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-13" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-14" halType="bit"/>
                        <complexEntry bitLen="1" halPin="out-15" halType="bit"/>
                    </pdoEntry>
                </pdo>
            </syncManager>
        
            <syncManager idx="2" dir="in">
                <pdo idx="1600">
                    <pdoEntry idx="3001" subIdx="1" bitLen="8" halType="complex">
                        <complexEntry bitLen="1" halPin="in-00" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-01" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-02" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-03" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-04" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-05" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-06" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-07" halType="bit"/>
                    </pdoEntry>
                </pdo>
                <pdo idx="1601">
                    <pdoEntry idx="3001" subIdx="2" bitLen="8" halType="complex">
                        <complexEntry bitLen="1" halPin="in-08" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-09" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-10" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-11" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-12" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-13" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-14" halType="bit"/>
                        <complexEntry bitLen="1" halPin="in-15" halType="bit"/>
                    </pdoEntry>
                </pdo>
            </syncManager>
        </slave>

And I’m also attaching the original XML file.
  • esmurf
  • esmurf
09 Jun 2025 12:36
Replied by esmurf on topic weird behavior: homing X messes up Y

weird behavior: homing X messes up Y

Category: EtherCAT

as per manual there is only one variable receive and one variable transmit PDO : 0x1600 and 0x1A00.
Each is limited to 10 entries.
You should see some error messages in /var/log/messages.
If you need more than 10 entries, you can use SDO instead of the 0x1600 PDO.
SDOs can be queried/set with "ethercat upload" or "ethercat download".
SDOs are permanently saved to the servo controller, so this is useful for nonchanging config parameters only.
  • esmurf
  • esmurf
09 Jun 2025 12:19

qtdragon_hd: Cant set units to metric

Category: Qtvcp

Hi,

i try to get qtdragon_hd in metric mode.
in my .ini file i have: 
[TRAJ]
LINEAR_UNITS = metric

Debug output has the line
QTvcp.QTVCP.QT_ISTAT - DEBUG - Machine is METRIC based. unit Conversion constant=0.03937007874015748

Some of the menus have mm as units. 
However the main screen shows Units = IN. 

What is wrong with my config?
The qtdragon_hd sample configs with metric seem to work fine.
  • SwitchWitch
  • SwitchWitch
09 Jun 2025 12:05
Replied by SwitchWitch on topic xml and hal - I am lost

xml and hal - I am lost

Category: EtherCAT

Finally all my Motors are joggable. The key was this part of the hal-file where I had to add some entries:
addf lcec.read-all servo-thread
addf cia402.0.read-all servo-thread
addf cia402.1.read-all servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf cia402.0.write-all servo-thread
addf cia402.1.write-all servo-thread
addf lcec.write-all servo-thread

The amp-error still pops up from time to time but this is something wich could be caused of the not yet tuned motors I think.
Thx a lot (!!!!) for all you help and hints!!
  • Jens23
  • Jens23
09 Jun 2025 12:00
Replied by Jens23 on topic Tool in spindle memory

Tool in spindle memory

Category: General LinuxCNC Questions

Hello,

today I stumbled across this error and I might be able to provide a useful hint.

I am using Probe Basic 2.9.3 and if I have NO_FORCE_HOMING = 1 in my ini, it remembers the tool.
If I have NO_FORCE_HOMING = 0 in my ini, it won't remeber it.

I guess it sets the tool in the background with some MDI command and it can't execute this command, if it is not allowed to execute a MDI command because it is not homed.

I added #5400 in my .var and with every toolchange it changed that value to the toolnumber.
Whenever I started PB with NO_FORCE_HOMING = 0, it changed the value of #5400 to 0 right after PB started.

I don't mind using NO_FORCE_HOMING = 1 but that causes Issues with the "REF-ALL / HOMED" Button in the Probe Basic UI because that one uses the "status:all_axes_homed" from the QTDesigner and this status only works with NO_FORCE_HOMING = 0...

If someone knows any workaroud, let me know :)
  • Aciera
  • Aciera's Avatar
09 Jun 2025 11:49

Five-Axis RTCP Features: G43.4 and G43.5 Equivalents in LinuxCNC

Category: G&M Codes

If that function works for you and your setup can handle the calculated angles then I don't see a problem there.
I would stick with the fanuc format since it uses ijk words which are already handled in linuxcnc. The A3/B3/C3 words of the siemens style would first have to be built into the interpreter.
  • ring
  • ring
09 Jun 2025 10:03

Five-Axis RTCP Features: G43.4 and G43.5 Equivalents in LinuxCNC

Category: G&M Codes

Thank you for your answer!

Based on your reply, I understand that G43 tool length compensation depends entirely on which kinematic mode is active. I have implemented a conversion from vector format NC (IJK) to XYZAB for my machine, and it seems to work. However, I am concerned whether a simple conversion might misinterpret the intent of the CAM output, or if these two formats (IJK and AB) are truly equivalent and interchangeable.

Here is the logic of my transfer function:

def ijk_to_ab(self, i, j, k):
norm = math.sqrt(i**2 + j**2 + k**2)
i, j, k = i/norm, j/norm, k/norm

a_rad = math.atan2(j, k)
a_deg = math.degrees(a_rad)

b_rad = math.atan2(-i, math.sqrt(j**2 + k**2))
b_deg = math.degrees(b_rad)

return round(a_deg, 6), round(b_deg, 6)

I have two more questions:

Are there any problems with my transfer function (ijk_to_ab)? Although it works in practice, I am worried that a direct conversion might not fully capture all the intent or precision from the CAM output.
If I plan to extend the RS274 module to support vector input, which vector format would be better to implement: the FANUC-style IJK (G43.5) or the SIEMENS-style A3/B3/C3? Are there advantages or disadvantages to either format, especially regarding compatibility and ease of parsing?
Thank you again for your help and suggestions!
  • beauxnez
  • beauxnez
09 Jun 2025 09:54 - 09 Jun 2025 09:56

ESP32/S2/S3 LinuxCNC Controller (6 axis hardware step gen), USB plug-and-play

Category: Computers and Hardware

I have an error message

[code][HOMEMOD=
TASK=milltask
HALUI=halui
DISPLAY=axis
COORDINATES=X Y Z
KINEMATICS=trivkins coordinates=XYZ
Starting LinuxCNC...
Starting LinuxCNC server program: linuxcncsvr
Loading Real Time OS, RTAPI, and HAL_LIB modules
Starting LinuxCNC IO program: io
emc/iotask/ioControl.cc 786: can't load tool table.
Starting HAL User Interface program: halui
linuxcnc TPMOD=tpmod HOMEMOD=homemod EMCMOT=motmod
twopass:invoked with <> options
twopass:found ./UDP2.hal
twopass: Error in file ./UDP2.hal:
    setting parameter 'udp.0.dirsetup' to '20000   #100000'
parameter or pin 'udp.0.dirsetup' not found
Shutting down and cleaning up LinuxCNC...
Removing HAL_LIB, RTAPI, and Real Time OS modules
Removing NML shared memory segments

Debug file information:
Note: Using POSIX realtime
3725
Stopping realtime threads
Unloading hal components
Note: Using POSIX realtime/code]
  • TooTall18T
  • TooTall18T's Avatar
09 Jun 2025 09:48

Vorschau Berechnung der Grenzwerte passt nicht wenn M6 enthalten

Category: Deutsch

M6 ist nur der Befehl zum Wechseln des Werkzeugs, hat aber eigentlich mit der Längenkorrektur nichts zu tun.
Die Werkzeuglänge wird erst durch G43 H"Werkzeugnummer" geändert. Beim Aufruf von M6 wird in Linuxcnc eine Routine abgespult, die dies auch ausführt.
Wenn du keine Korrektur haben möchtest, setzt du G49 unter jeden Werkzeugwechsel.

Wenn du im G-Code alle Werkzeugwechsel auf das selbe Werkzeug machst, passt die Darstellung dann?

Welche Version benutzt du von LCNC und welche Oberfläche hast du?
Displaying 15301 - 15312 out of 15312 results.
Time to create page: 3.542 seconds
Powered by Kunena Forum