Advanced Search

Search Results (Searched for: )

  • mBender
  • mBender
28 Jun 2025 21:57

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

Category: Computers and Hardware

Hi, 

after a few month working with my bread board set up, I am continuing to build up a PCB board. The pin connection is currently all over the place, but it works... I am cleaning that up and have a quick question about the Tang Nano 9k. I am palling to use Bank 1 and 2(3.3V) for the input and outputs. I don't need to use Bank 3 (1.8V) as my machine is not that complicated. 

Are all Pins from Bank 1 and 2 usable as Inputs and Outputs or are there special pins which need to be high or low at boot?? Similar to some Microcontroller?
  • vre
  • vre
28 Jun 2025 21:49

Using Mesa 7i95T for laser + galvo (xy2-100) control

Category: Driver Boards

Do you want galvo for engraving?
How you will implement this because
raster engraving with mesa not supported to linuxcnc.
  • Bertho
  • Bertho
28 Jun 2025 21:48 - 28 Jun 2025 21:49

How to write multipule data ( byte) mesambccc

Category: General LinuxCNC Questions

Just one more thought...

Is it necessary that the write command has pins? Does this data change real-time?
There are several side-effects to this being pins that can change. For example, the documentation lets on that it needs to be written as *one* modbus transaction. (that would mean I first need to fix the bug)

These parameters look like initialization values you set once and leave the same. If that is the case, you can simply make it a single command writing the necessary registers in the <initlist> in one command writing the 5 registers with static data/values in one transaction.
  • Bertho
  • Bertho
28 Jun 2025 21:29

How to write multipule data ( byte) mesambccc

Category: General LinuxCNC Questions

Hello, (author of the hm2_modbus driver calling...)

First, what is the error code generated? See the hm2_modbus.0.command.NN.error-code pins.

Second, what LCNC version are you using?

Just a comment on the attached documentation image:
Reading and writing registers are, in modbus terms, always multiples of word (2-byte) quantities. The image with the "Home position return speed" at register address 0x6099 states a /single byte/ and then two 4-byte words. The documentation is slightly misleading. It states in the next column that 5 registers are actually involved, so that would indicate that the first is masked to a byte sized value (masking is not supported or performed by the hm2_modbus driver). The 5-register statement in the table would also fix the problem of having 32-bit words seemingly on a odd address boundary. But with 5 registers, then the "number of entries" value is at address 0x6099 and the two 32-bit words are at 0x609a and 0x609c resp.. BTW, I notice the interesting mixed endianess of the 32-bit values...

The read operation seems to work as intended, but the write operation fails. The failure is apparently not a problem of the mbccs file. It is an error message of the hm2_modbus driver that indicates something odd is happening.

When compiling the mbccs file I get a couple of warnings (using first file below):
mrje70a.mbccs: warning: Multi-register type 'U_CDAB' not aligned to natural boundary in commands/command[1]/pin[2]
mrje70a.mbccs: warning: Multi-register type 'U_CDAB' not aligned to natural boundary in commands/command[1]/pin[3]
mrje70a.mbccs: warning: Multi-register type 'U_CDAB' not aligned to natural boundary in commands/command[2]/pin[2]
mrje70a.mbccs: warning: Multi-register type 'U_CDAB' not aligned to natural boundary in commands/command[2]/pin[3]

But, that should not be the case. This is an error in mesambccc not being able to count correctly. Using the --verbose option clearly shows the address to be even. I have to investigate and see what is happening. I am guessing that the hm2_modbus error is secondary to an error in mesambccc when setting the command and pin fields for the command lists. As a temporary fix: splitting the read and write commands into two separate commands makes the warnings go away (second source below). It /might/ fix the read/write issue you are having. The downside is that the read/write no longer is one single modbus transaction. That may or may not be a problem, depending the device.

The way you wrote the definition should work. I'd write it like:
[code][code][code]<?xml version="1.0" encoding="UTF-8"?>
[code]<mesamodbus baudrate="115200" parity="E" stopbits="1">
  <devices><device address="0x02" name="mrje70a"/></devices>
  <initlist />
  <commands>
    <command device="mrje70a" function="R_REGISTERS" address="0x6099" haltype="HAL_U32">
      <pin name="rnumentries" modbustype="U_AB"/>
      <pin name="rspeedss" modbustype="U_CDAB"/>
      <pin name="rspeedsz" modbustype="U_CDAB"/>
    </command>
    <command device="mrje70a" function="W_REGISTERS" address="0x6099" haltype="HAL_U32">
      <pin name="wnumentries" modbustype="U_AB"/>
      <pin name="wspeedss" modbustype="U_CDAB"/>
      <pin name="wspeedsz" modbustype="U_CDAB"/>
    </command>
  </commands>
</mesamodbus>

---

<?xml version="1.0" encoding="UTF-8"?>
<mesamodbus baudrate="115200" parity="E" stopbits="1">
  <devices><device address="0x02" name="mrje70a"/></devices>
  <initlist />
  <commands>
    <command device="mrje70a" function="R_REGISTERS" address="0x6099" haltype="HAL_U32">
      <pin name="rnumentries" modbustype="U_AB"/>
    </command>
    <command device="mrje70a" function="R_REGISTERS" address="0x609a" haltype="HAL_U32">
      <pin name="rspeedss" modbustype="U_CDAB"/>
      <pin name="rspeedsz" modbustype="U_CDAB"/>
    </command>
    <command device="mrje70a" function="W_REGISTERS" address="0x6099" haltype="HAL_U32">
      <pin name="wnumentries" modbustype="U_AB"/>
    </command>
    <command device="mrje70a" function="W_REGISTERS" address="0x609a" haltype="HAL_U32">
      <pin name="wspeedss" modbustype="U_CDAB"/>
      <pin name="wspeedsz" modbustype="U_CDAB"/>
    </command>
  </commands>
</mesamodbus>
[/code][/code][/code][/code]
  • pscott
  • pscott
28 Jun 2025 20:44
Replied by pscott on topic Blow back plasma torch start timing problem

Blow back plasma torch start timing problem

Category: Plasma & Laser

The timing problems are probably due to combining a ebay no-name torch with a aliexpress no-name inverter, and then unplugging the HF start from the inverter as it caused too much interference. But it runs good enough for our use when the torch gets its needed recovery time between starts.
I'll consider modifying the post, but I'll also take a look at the plasmac component to see if I can tweak it to do it like our MACH3 M3 macro does.
  • pscott
  • pscott
28 Jun 2025 20:36
Replied by pscott on topic Blow back plasma torch start timing problem

Blow back plasma torch start timing problem

Category: Plasma & Laser

Main thing is that MACH3 seems to have some problems blending moves together.
Our table is multi function and currently it is setup with a LED laser cutter head and at the speeds needed for that we could better see the lack of blending.

The second part is that it would be nice to have all the cut-recover features from plasmac.
  • PCW
  • PCW's Avatar
28 Jun 2025 20:20

How to write multipule data ( byte) mesambccc

Category: General LinuxCNC Questions

debug is described in the hm2_modbus manual page.
  • AdelRTP
  • AdelRTP
28 Jun 2025 19:40
Replied by AdelRTP on topic How to write multipule data ( byte) mesambccc

How to write multipule data ( byte) mesambccc

Category: General LinuxCNC Questions

Yes the second work perfect but when i want to add W_REGISTERS more then 2 byte i get hm2_modbus.0: error: Build data frame failed in write_flush for command 15, disabling

<command device="mrje70a" function="W_REGISTERS" address="0x2801">
<description>Write Point Table Data</description>
<pin name="wnumentries" modbustype="U_AB" haltype="HAL_U32"/>
<pin name="wposition" modbustype="U_CDAB" haltype="HAL_U32"/>
<pin name="wspeed" modbustype="U_AB" haltype="HAL_U32"/>
<pin name="wacceleration" modbustype="U_AB" haltype="HAL_U32"/>
<pin name="wdeceleration" modbustype="U_AB" haltype="HAL_U32"/>
<pin name="wdwell" modbustype="U_AB" haltype="HAL_U32"/>
<pin name="wsubfunction" modbustype="U_AB" haltype="HAL_U32"/>
<pin name="wmcode" modbustype="U_AB" haltype="HAL_U32"/>
</command>

Idont know how to use debug
  • jimmyrig
  • jimmyrig
28 Jun 2025 19:36
Replied by jimmyrig on topic Blow back plasma torch start timing problem

Blow back plasma torch start timing problem

Category: Plasma & Laser

Agreed, OP all you need to do is do a find/replace for m3 and replace it with g4 p15000 m3 (15 sec in millisecond)

G4 and m3 may need to be on different lines.

If that works then edit your post to include that.
  • PCW
  • PCW's Avatar
28 Jun 2025 19:33

How to write multipule data ( byte) mesambccc

Category: General LinuxCNC Questions

This is different from your first example:

<command device="mrje70a" function="W_REGISTERS" address="0x6099" >
<pin name= "hnumentries" modbustype="U_ABCD" haltype="HAL_U32" resend="1"/>

Do you have the same error?

Have you tried setting hm2_modbus's debug value to get a more detailed error? 
  • kubes
  • kubes
28 Jun 2025 19:12
Replied by kubes on topic Probing alert on missing parameters

Probing alert on missing parameters

Category: QtPyVCP

The loaded tool impacts the feed rate?

It will prompt later in the flow to load the correct tool. Based on the settings.

Why does it say 0 feed rate?

Lastly, how do I tell what version of PB I have installed?
  • AdelRTP
  • AdelRTP
28 Jun 2025 18:49
Replied by AdelRTP on topic How to write multipule data ( byte) mesambccc

How to write multipule data ( byte) mesambccc

Category: General LinuxCNC Questions

This is my complete code
<?xml version="1.0" encoding="UTF-8"?>
<mesamodbus baudrate="115200" parity="E" stopbits="1">
<devices>
<device address="0x02" name="mrje70a"/>
</devices>

<initlist>

</initlist>

<commands>

<command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x2b01" count ="2" name="cfp"/>
<command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x2b0f" count ="1" name="volt"/>
<command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x2b2d" count ="1" name="power"/>
<command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x2001" count ="2" name="rpa01"/>
<command device="mrje70a" function="R_REGISTERS" address="0x2801">
<pin name = "numbreent" modbustype="U_AB" haltype="HAL_U32"/>
<pin name = "position" modbustype="U_CDAB" haltype="HAL_U32" scale ="0"/>
<pin name = "speed" modbustype="U_AB" haltype="HAL_U32"/>
<pin name = "acce" modbustype="U_AB" haltype="HAL_U32"/>
<pin name = "dec" modbustype="U_AB" haltype="HAL_U32"/>
<pin name="dwell" modbustype="U_AB" haltype="HAL_U32"/>
<pin name="subfunc" modbustype="U_AB" haltype="HAL_U32"/>
<pin name="mcode" modbustype="U_AB" haltype="HAL_U32"/>
</command>
<command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x1010" count ="11" name="eeprom"/>
<command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x2c12" count ="9" name="input"/>
<command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x6041" count ="1" name="status"/>
<command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x6040" count ="1" name="rcontrolword"/>
<command device="mrje70a" modbustype="S_AB" haltype="HAL_S32" function="R_REGISTERS" address="0x6061" count ="1" name="mode"/>
<command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x2d60" count ="1" name="rtargetpt"/>
<command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x6099" count ="5" name="homingspeed"/>

<command device="mrje70a" function="W_REGISTERS" modbustype="U_AB" haltype="HAL_U32" address="0x6040" count="1" name="ctrlwordwt" resend="1"/>
<command device="mrje70a" function="W_REGISTERS" modbustype="S_AB" haltype="HAL_S32" address="0x6060" count="1" name="wopermode" resend="1"/>
<command device="mrje70a" function="W_REGISTERS" modbustype="U_AB" haltype="HAL_U32" address="0x2d60" count="1" name="wtargetpt" resend="1"/>

<command device="mrje70a" function="W_REGISTERS" address="0x6099" >
<pin name= "hnumentries" modbustype="U_ABCD" haltype="HAL_U32" resend="1"/>

</command>

</commands>
</mesamodbus>


as you see when i m using W_REGISTERS white registers 2 bytes (U_AB) it s work but i dont know how to us it with registers have 4 bytes or more
  • Marko6
  • Marko6
28 Jun 2025 18:05

HAL CiA402 Drive Interface for Can Bus,Ethercat etc...

Category: HAL

Hi everyone.

Does anyone have CSV mode working? I'm running CSP on XYZ without any problems, but CSV on the spindle is just running the drive (Delta C2000 + Ethercat + Encoder) and I can't send the speed/direction signal.

I've spent two days trying to get it running, but to no avail. Also, there is no sample hal/ini file that explains CSV and the spindle.

Thank you. BR,
Pavel
  • AdelRTP
  • AdelRTP
28 Jun 2025 17:34
Replied by AdelRTP on topic How to write multipule data ( byte) mesambccc

How to write multipule data ( byte) mesambccc

Category: General LinuxCNC Questions

<?xml version="1.0" encoding="UTF-8"?>
<mesamodbus baudrate="115200" parity="E" stopbits="1">
  <devices>
      <device address="0x02" name="mrje70a"/>
  </devices>
  <initlist>
  </initlist>
  <commands>
    <command device="mrje70a" modbustype="U_AB" haltype="HAL_U32" function="R_REGISTERS" address="0x6099" count ="5" name="homingread"/>  
    <command device="mrje70a" function="W_REGISTERS" modbustype="U_AB" haltype="HAL_U32" address="0x6099" count="5" name="hommingwrite"/>
 
    <!--<command device="mrje70a" function="W_REGISTERS" address="0x6099" >
       <pin name= "hnumentries" modbustype="U_AB" haltype="HAL_U32"    value="02"/>
       <pin name= "hspeedss" modbustype="U_CDAB" haltype="HAL_U32"/>
       <pin name= "hspeedsz" modbustype="U_CDAB" haltype="HAL_U32"/>
    </command>-->   
</commands>    
</mesamodbus>
  • Silverback
  • Silverback
28 Jun 2025 17:31 - 28 Jun 2025 17:31

[qt_dragon_hd] auto tool probe and gcode display issue

Category: Qtvcp

I am using 2.9.4

I attached the files I *think* are needed. If something else is needed, let me know.

 

File Attachment:

File Name: LCNC.zip
File Size:8 KB
Displaying 481 - 495 out of 25544 results.
Time to create page: 0.420 seconds
Powered by Kunena Forum