Advanced Search

Search Results (Searched for: )

  • ziggi
  • ziggi's Avatar
30 Jun 2025 10:47

Troubles to get started with SD240 Retrofit

Category: Turning

Hi, though it seems to be rather a monologue I have still not given up  .  Ok mean while the error was found- the repaired 7i33 unfortunately still was not working correctly.
Now I have the two axis working properly and smoothly and would want to be able to implement a shared handwheel for the X and Z axis.
Therefore it was recommended to do a second config file with PC-Config and copy the necessary lines to the original HAL and INI files, sonot to overwrite the original config.
And so I did. But obviously I made some mistake and get an error message when starting LinuxCNC now telling me one infrmation is missing.
Can someone help me to get this corrected please? I am not able to find the mistake....

Thank you
Sigi
 
  • Ac1dburn
  • Ac1dburn
30 Jun 2025 10:10

Remora - Rpi Software Stepping Using External Microcontroller via SPI

Category: Computers and Hardware

Hey, sorry if this isn't the spot to ask for help with this issue. 

So I've decided to try to build a new controller for my CNC converted lathe. Did some searching around and found remora. I already had an SKR 1.4 Turbo sitting in a closet from an old Voron machine. As far as I remember, I was running Klipper on it, but didn't mess with the bootloader or anything. 
So far I have:
grabbed the firmware.bin from the "github.com/scottalford75/Remora/tree/mai.../FirmwareBin/LPC1769"
placed it on a freshly flashed FAT32 4GB SD card.
placed my extremely minimal config.txt on the SD  card as well
inserted into my SKR 1.4 Turbo and powered it for 10-20 seconds, cut power.
removed the SD card and inserted it into my card read on my windows machine and confirmed the firmware.bin did in fact change to firmware.cur
ejected the SD card, re-inserted it into the SKR 1.4 Turbo.
Powered on my raspberry pi 4 running the: LinuxCNC 2.9.4 Raspberry Pi 4 OS based on Debian Bookworm Raspberry Pi 4 Uspace compatible with Mesa Ethernet and SPI interface boards. Img. from the linuxcnc downloads page.
SPI enabled in the /boot/firmware/config.txt on the raspberry pi 4
SPI and Serial Debugging wired and configured in the SKR 1.4 Turbo config.txt
Hal file for my config is setup minimally to only include two axis's and the rest of the standard Remora hal related stuff. (I may have missed something but I followed the remora documentation as best I could)
Everything "seemed" okay at first, with the SKR not powered, I could launch my probe basic lathe config, but couldn't take it out of e-stop (expected as the hal file has a remora e-stop function that prevents this without an active SPI link)
Boot the SKR up, and launch my probe basic lathe config and I am able to take the machine out of e-stop. 
However, this is where I hit a dead end. I went to add my limit switches, I configured my hal file to reflect what was in my SKR's config.txt for those data bits and I was hit with "remora.input.00" does not exist and the obviously probe basic lathe doesn't launch. 
I double checked my config.txt to make sure I didn't having any duplicated data bits etc. etc. etc. 
That's when I "tried" to watch the serial debug in terminal by adding the serial debug section into my SKR's config.txt. 
booted the pi 4, ran: screen /dev/serial0 115200 in terminal, started watching the window, powered the SKR up and it showed some things, however, not what I was expecting. It sets up some pins for the limits, but they aren't what I had in my config.txt... not based on the data bits I had selected. I also tried a variation of different data bits etc. and still couldn't get it to load the correct ones. I ended up just updating the hal file to reflect what it DID assign those pins to and probe basic lathe did launch at that point. So I triggered the input pins for both limits on the SKR while monitoring halshow and it's not showing a trigger. I also don't even think my serial debug screen is displaying correctly. I've tried re-flashing the SD card, double checked I was using the correct firmware.bin for my board. triple check my SPI wiring, replaced with shorter wiring, etc. I'm really stumped. I was going to try flashing the default SKR 1.4 turbo firmware and try re-flashing after that, but I was having trouble finding a pre-built firmware.bin to flash and I'm terrible at building from source. Any help with getting this running correctly would be really appreciated. I've spent the last 4 days or so struggling to figure it out on my own. I've attached a copy of my current hal file (it's rough/ not complete yet but it launches)
a copy of my config.txt that is in the root directory of the SKR SD card, and a screenshot of what my serial debug monitoring is showing in screen. 
(note: I left the pins for the x and z limit in my hal setup to whatever it created for them based on the serial debug screen because that's what allowed me to launch)

thanks again in advance.


 
  • GuiHue
  • GuiHue's Avatar
30 Jun 2025 07:56
Replied by GuiHue on topic LinuxCNC and Beckhoff AX5000 servo drives

LinuxCNC and Beckhoff AX5000 servo drives

Category: EtherCAT

This is very interesting. Thank you for your efforts.
Could you elabroate a bit on this?
Where do the ax5106.xml/ax5203.xml originate from? A TC3 dump? If so, from where?
In which tool did you setup your motor? TC3 and then export?
  • MacKaye
  • MacKaye
30 Jun 2025 07:11
Replied by MacKaye on topic Weiler DZ26 Millturn Conversion

Weiler DZ26 Millturn Conversion

Category: Turning

thanks, i still don´t exactly know where the problem was, but i reflashed the 5i25_7i77x2 bitfile again and it just works..
  • Johnnysacalu
  • Johnnysacalu
30 Jun 2025 05:53 - 30 Jun 2025 09:17
Replied by Johnnysacalu on topic Lo ejes dejaron de moverse

Lo ejes dejaron de moverse

Category: General LinuxCNC Questions

 


la alimentacion del thc esta bien segun este diagrama por que mire el manual y esos no son para alimentacion. Si el diagrama esta mal a lo mejor el problema vino de allí.  Me lo podrias confirmar por que no veo otro fallo. Gracias 


edito:  no lo tengas en cuenta estaba equivocado ya he bisto que pin 9 y pin 12 son gnd y 5v
  • Lcvette
  • Lcvette's Avatar
30 Jun 2025 05:07

User error or a strange event on probing. Broken ruby tip.

Category: QtPyVCP

you can add all the logging you want in the subroutine, but its not an issue with the probing routines as i use them daily hundreds of times a week without issue. some folks have noisy systems or less rigid machines that may be problematic, moving head routers come to mind. but in most cases it is either debounce needs to be added in the halfile for that input to stop false triggers and force the signal to be solidly recognized and latched before accepting the probe trip as an actual event.
  • cmorley
  • cmorley
30 Jun 2025 03:16 - 30 Jun 2025 03:16

[qt_dragon_hd] auto tool probe and gcode display issue

Category: Qtvcp

yes select from the configuration pop up window:
sim/qtdragon/qtdragon_tool_probe/qtdragon_auto_tool_probe

A simulated configuration will run with a small window with a label and a button.
You turn on and home the machine like normal - all movements are simulated.
Run a program that has a tool change and use the button to simulate the probe.
The label will say 'probe' when you need to press the button, (in fact twice)
Then we can see if the remap subroutine is stuck showing.
  • PCW
  • PCW's Avatar
30 Jun 2025 02:52
Replied by PCW on topic Servo Driver Plasma Retrofit

Servo Driver Plasma Retrofit

Category: Plasmac

Yes, the THCAD2 replaces both the THCAD5 and THCAD10

And yes, you can use the 2 spare encoders for THCADs.

(if you needed more encoders, firmware that puts 2 or 3
'A' only encoders on one 7I97T 8 pin encoder connector
is possible)
  • kn612
  • kn612
30 Jun 2025 02:31
Replied by kn612 on topic Servo Driver Plasma Retrofit

Servo Driver Plasma Retrofit

Category: Plasmac

Thank you

I will refer to hypertherms controller manual on the drive enables.

It looks like the thcad2 has replaced the thcad5 and thcad10? Its been a few years since I've messed with this stuff. My 7i96s table just works with zero maintenance.

Since there are 6 encoder interfaces on a 7i97t can I use the 2 left over for thc and ohmic?
  • PedPEx
  • PedPEx
29 Jun 2025 22:21 - 30 Jun 2025 09:32

Problems switching PDO assignments (EP5101-0011)

Category: EtherCAT

Hello endian

I'm sorry for answering a little bit late, i was busy studying for my upcoming exams. I hope you are doing well and everything is good after the storm you mentioned?

I tried the config from the 23rd and had syntax issues with the InitCMD section. As far as i can tell, you removed it in the version you updated on the 25th. Without the InitCMDs, the encoder inputs indeed change over to their 32bit counter PDO, unfortunately they get stuck in a PREOP error state.
While starting the machine, it also threw error about the "<pdoEntry idx="0" bitLen="4" halPin="Control--194" halType="s32">" part, i just removed that part, because it's not used (gap), according to Beckhoffs docs. 

Do you know a solution to the "Slave does not support changing the PDO mapping!" problem, when the slave supports it for sure?
And thank you for your help so far :) 


dmesg output (grep EtherCAT) before starting the machine config
[code][    4.847665] EtherCAT: Master driver 1.6.0 1.6.0.gcafd367-1+1.1
[    4.848045] EtherCAT: 1 master waiting for devices.
[    4.865248] ec_generic: EtherCAT master generic Ethernet device module 1.6.0 1.6.0.gcafd367-1+1.1
[    4.865257] EtherCAT: Accepting B4:96:91:95:02:70 as main device for master 0.
[    4.896651] EtherCAT 0: Starting EtherCAT-IDLE thread.
[    7.436557] EtherCAT 0: Link state of ecm0 changed to UP.
[    7.445248] EtherCAT 0: 3 slave(s) responding on main device.
[    7.445250] EtherCAT 0: Slave states on main device: PREOP.
[    7.445535] EtherCAT 0: Scanning bus.
[    8.826355] EtherCAT 0: Bus scanning completed in 1380 ms.
[    8.826357] EtherCAT 0: Using slave 0 as DC reference clock.
[   11.980063] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1802:07!
[   11.980066] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   11.983003] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1802:09!
[   11.983004] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   11.997457] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1803:07!
[   11.997458] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   12.000886] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1803:09!
[   12.000887] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   12.015341] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1804:07!
[   12.015342] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   12.018526] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1804:09!
[   12.018527] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   12.033225] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1805:07!
[   12.033226] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   12.036410] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1805:09!
[   12.036411] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   12.599207] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1802:07!
[   12.599209] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   12.602392] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1802:09!
[   12.602393] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   12.617336] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1803:07!
[   12.617338] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   12.620521] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1803:09!
[   12.620523] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   12.634488] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1804:07!
[   12.634489] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   12.637701] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1804:09!
[   12.637702] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   12.652639] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1805:07!
[   12.652640] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   12.655578] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1805:09!
[   12.655579] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   13.214605] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1802:07!
[   13.214608] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   13.217545] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1802:09!
[   13.217546] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   13.231999] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1803:07!
[   13.232000] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   13.235428] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1803:09!
[   13.235429] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   13.249395] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1804:07!
[   13.249396] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   13.252582] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1804:09!
[   13.252583] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   13.267522] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1805:07!
[   13.267523] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   13.270952] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1805:09!
[   13.270953] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   22.277621] EtherCAT 0: Link state of ecm0 changed to DOWN.
[   22.285341] EtherCAT ERROR 0-1: Failed to receive AL state datagram: Datagram error.
[   22.293693] EtherCAT 0: 0 slave(s) responding on main device.
[   29.050914] EtherCAT 0: Link state of ecm0 changed to UP.
[   29.058887] EtherCAT 0: 3 slave(s) responding on main device.
[   29.058892] EtherCAT 0: Slave states on main device: INIT.
[   29.059186] EtherCAT 0: Scanning bus.
[   30.450244] EtherCAT 0: Bus scanning completed in 1388 ms.
[   30.450247] EtherCAT 0: Using slave 0 as DC reference clock.
[   30.455189] EtherCAT 0: Slave states on main device: PREOP.
[   33.606315] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1802:07!
[   33.606319] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   33.609254] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1802:09!
[   33.609256] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   33.623685] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1803:07!
[   33.623686] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   33.626894] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1803:09!
[   33.626895] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   33.641844] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1804:07!
[   33.641845] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   33.645513] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1804:09!
[   33.645514] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   33.659944] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1805:07!
[   33.659945] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   33.662908] EtherCAT WARNING 0-0: SDO information error response while fetching SDO entry 0x1805:09!
[   33.662909] EtherCAT ERROR 0-0: SDO abort message 0x06090011: "Subindex does not exist".
[   34.220767] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1802:07!
[   34.220770] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   34.223707] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1802:09!
[   34.223709] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   34.238408] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1803:07!
[   34.238410] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   34.241346] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1803:09!
[   34.241347] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   34.256045] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1804:07!
[   34.256047] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   34.258985] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1804:09!
[   34.258986] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   34.273194] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1805:07!
[   34.273196] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   34.276135] EtherCAT WARNING 0-1: SDO information error response while fetching SDO entry 0x1805:09!
[   34.276136] EtherCAT ERROR 0-1: SDO abort message 0x06090011: "Subindex does not exist".
[   34.838011] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1802:07!
[   34.838014] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   34.841463] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1802:09!
[   34.841465] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   34.855647] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1803:07!
[   34.855648] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   34.858587] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1803:09!
[   34.858588] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   34.873043] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1804:07!
[   34.873045] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   34.876006] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1804:09!
[   34.876007] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   34.890459] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1805:07!
[   34.890461] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[   34.893645] EtherCAT WARNING 0-2: SDO information error response while fetching SDO entry 0x1805:09!
[   34.893646] EtherCAT ERROR 0-2: SDO abort message 0x06090011: "Subindex does not exist".
[/code]
[code]dmesg output (grep EtherCAT) that was added after starting the machine config
[code][  190.676872] EtherCAT: Requesting master 0...
[  190.676875] EtherCAT: Successfully requested master 0.
[  190.677525] EtherCAT 0: Domain0: Logical address 0x00000000, 45 byte, expected working counter 9.
[  190.677527] EtherCAT 0:   Datagram domain0-0-main: Logical offset 0x00000000, 45 byte, type LRW.
[  190.677538] EtherCAT 0: Master thread exited.
[  190.677539] EtherCAT 0: Starting EtherCAT-OP thread.
[  190.677584] EtherCAT WARNING 0: 2 datagrams TIMED OUT!
[  190.677586] EtherCAT WARNING 0: 2 datagrams UNMATCHED!
[  190.798114] EtherCAT WARNING 0-0: Slave does not support changing the PDO mapping!
[  190.798116] EtherCAT WARNING 0-0: Currently mapped PDO entries: 0x7000:01/1 0x7000:02/1 0x7000:03/1 0x7000:04/1 0x0000:00/4 0x0000:00/8 0x7000:11/32. Entries to map: 0x7000:01/1 0x7000:02/1 0x7000:03/1 0x7000:04/1 0x7000:11/32
[  190.876116] EtherCAT WARNING 0-0: Slave does not support changing the PDO mapping!
[  190.876119] EtherCAT WARNING 0-0: Currently mapped PDO entries: 0x6000:01/1 0x6000:02/1 0x6000:03/1 0x6000:04/1 0x6000:05/1 0x6000:06/1 0x6000:07/1 0x6000:08/1 0x6000:09/1 0x6000:0A/1 0x6000:0B/1 0x6000:0C/1 0x6000:0D/1 0x1C32:20/1 0x1801:07/1 0x1801:09/1 0x6000:11/32 0x6000:12/32. Entries to map: 0x6000:01/1 0x6000:02/1 0x6000:03/1 0x6000:04/1 0x6000:05/1 0x6000:06/1 0x6000:07/1 0x6000:08/1 0x6000:09/1 0x6000:10/1 0x6000:11/1 0x6000:12/1 0x6000:13/1 0x1C32:32/1 0x1801:07/1 0x1801:09/1 0x6000:17/32 0x6000:18/32
[  195.888053] EtherCAT WARNING 0-0: Slave did not sync after 5000 ms.
[  195.892053] EtherCAT ERROR 0-0: Failed to set SAFEOP state, slave refused state change (PREOP + ERROR).
[  195.893053] EtherCAT ERROR 0-0: AL status message 0x001D: "Invalid output configuration".
[  195.895052] EtherCAT 0-0: Acknowledged state PREOP.
[  195.942054] EtherCAT WARNING 0-1: Slave does not support changing the PDO mapping!
[  195.942057] EtherCAT WARNING 0-1: Currently mapped PDO entries: 0x7000:01/1 0x7000:02/1 0x7000:03/1 0x7000:04/1 0x0000:00/4 0x0000:00/8 0x7000:11/32. Entries to map: 0x7000:01/1 0x7000:02/1 0x7000:03/1 0x7000:04/1 0x7000:11/32
[  196.011052] EtherCAT WARNING 0-1: Slave does not support changing the PDO mapping!
[  196.011054] EtherCAT WARNING 0-1: Currently mapped PDO entries: 0x6000:01/1 0x6000:02/1 0x6000:03/1 0x6000:04/1 0x6000:05/1 0x6000:06/1 0x6000:07/1 0x6000:08/1 0x6000:09/1 0x6000:0A/1 0x6000:0B/1 0x6000:0C/1 0x6000:0D/1 0x1C32:20/1 0x1801:07/1 0x1801:09/1 0x6000:11/32 0x6000:12/32. Entries to map: 0x6000:01/1 0x6000:02/1 0x6000:03/1 0x6000:04/1 0x6000:05/1 0x6000:06/1 0x6000:07/1 0x6000:08/1 0x6000:09/1 0x6000:10/1 0x6000:11/1 0x6000:12/1 0x6000:13/1 0x1C32:32/1 0x1801:07/1 0x1801:09/1 0x6000:17/32 0x6000:18/32
[  196.030052] EtherCAT ERROR 0-1: Failed to set SAFEOP state, slave refused state change (PREOP + ERROR).
[  196.031052] EtherCAT ERROR 0-1: AL status message 0x001D: "Invalid output configuration".
[  196.033050] EtherCAT 0-1: Acknowledged state PREOP.
[  196.080051] EtherCAT WARNING 0-2: Slave does not support changing the PDO mapping!
[  196.080053] EtherCAT WARNING 0-2: Currently mapped PDO entries: 0x7000:01/1 0x7000:02/1 0x7000:03/1 0x7000:04/1 0x0000:00/4 0x0000:00/8 0x7000:11/32. Entries to map: 0x7000:01/1 0x7000:02/1 0x7000:03/1 0x7000:04/1 0x7000:11/32
[  196.148050] EtherCAT WARNING 0-2: Slave does not support changing the PDO mapping!
[  196.148052] EtherCAT WARNING 0-2: Currently mapped PDO entries: 0x6000:01/1 0x6000:02/1 0x6000:03/1 0x6000:04/1 0x6000:05/1 0x6000:06/1 0x6000:07/1 0x6000:08/1 0x6000:09/1 0x6000:0A/1 0x6000:0B/1 0x6000:0C/1 0x6000:0D/1 0x1C32:20/1 0x1801:07/1 0x1801:09/1 0x6000:11/32 0x6000:12/32. Entries to map: 0x6000:01/1 0x6000:02/1 0x6000:03/1 0x6000:04/1 0x6000:05/1 0x6000:06/1 0x6000:07/1 0x6000:08/1 0x6000:09/1 0x6000:10/1 0x6000:11/1 0x6000:12/1 0x6000:13/1 0x1C32:32/1 0x1801:07/1 0x1801:09/1 0x6000:17/32 0x6000:18/32
[  198.251024] EtherCAT ERROR 0-2: Failed to set SAFEOP state, slave refused state change (PREOP + ERROR).
[  198.252024] EtherCAT ERROR 0-2: AL status message 0x001D: "Invalid output configuration".
[  198.254024] EtherCAT 0-2: Acknowledged state PREOP.
[/code]
[/code]
[code][code]ethercat-conf machine config
[code]<masters>
    <master idx="0" appTimePeriod="1000000" refClockSyncCycles="1000" name="m0">
    <!-- EP5101 - Incr. Encoder Input -->
        <slave idx="0" type="generic" vid="0x00000002" pid="0x13ED4052" name="EP5101-0" configPdos="true">
            <!-- IMPORTANT: sometime (sync1Cycle = n * sync0Cycle) sync1Cycle must be appTimePeriod - sync0Cycle) -->
            <!-- Check your DC config...generated is from impoted .xml but assignActivate is hard coded ... it should be different -->
            <dcConf assignActivate="1000" sync0Cycle="1000000" sync0Shift="0" sync1Cycle="0" sync1Shift="0"/>
            <sdoConfig idx="1C12" subIdx="complete">
                <sdoDataRaw data="01000116"/>
            </sdoConfig>
            <sdoConfig idx="1C13" subIdx="complete">
                <sdoDataRaw data="0100011A"/>
            </sdoConfig>
            <syncManager idx="0" dir="out"/>
            <syncManager idx="1" dir="in"/>
            <syncManager idx="2" dir="out">
            <pdo idx="1601">
                    <!-- Enable latch C -->
                    <pdoEntry idx="7000" subIdx="01" bitLen="1" halPin="enable-latch-C" halType="bit"/>
                    <!-- Enable latch extern on positive edge -->
                    <pdoEntry idx="7000" subIdx="02" bitLen="1" halPin="ena-latch-ext-on-pos_edge" halType="bit"/>
                    <!-- Set counter -->
                    <pdoEntry idx="7000" subIdx="03" bitLen="1" halPin="set-counter" halType="bit"/>
                    <!-- Enable latch extern on negative edge -->
                    <pdoEntry idx="7000" subIdx="04" bitLen="1" halPin="ena-latch-ext-on-neg_edge" halType="bit"/>
                    <!-- Set counter value -->
                    <pdoEntry idx="7000" subIdx="11" bitLen="32" halPin="set-counter_value" halType="u32"/>
            </pdo>
            </syncManager>
            <syncManager idx="3" dir="in">
                <pdo idx="1A01">
                <pdoEntry idx="6000" subIdx="01" bitLen="1" halPin="Status-Latch-C-197" halType="bit">
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="02" bitLen="1" halPin="Status-Latch-e-198" halType="bit">
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="03" bitLen="1" halPin="Status-Set-cou-199" halType="bit">
                <!-- ENC STATUS-Status- -Set-cou-199 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="04" bitLen="1" halPin="Status-Counter-200" halType="bit">
                <!-- ENC STATUS-Status- -Counter-200 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="05" bitLen="1" halPin="Status-Counter-201" halType="bit">
                <!-- ENC STATUS-Status- -Counter-201 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="06" bitLen="1" halPin="Status-Status-202" halType="bit">
                <!-- ENC STATUS-Status- -Status- -202 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="07" bitLen="1" halPin="Status-Open-ci-203" halType="bit">
                <!-- ENC STATUS-Status- -Open-ci-203 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="08" bitLen="1" halPin="Status-Extrapo-204" halType="bit">
                <!-- ENC STATUS-Status- -Extrapo-204 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="09" bitLen="1" halPin="Status-Status-205" halType="bit">
                <!-- ENC STATUS-Status- -Status- -205 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="10" bitLen="1" halPin="Status-Status-206" halType="bit">
                <!-- ENC STATUS-Status- -Status- -206 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="11" bitLen="1" halPin="Status-Status-207" halType="bit">
                <!-- ENC STATUS-Status- -Status- -207 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="12" bitLen="1" halPin="Status-Status-208" halType="bit">
                <!-- ENC STATUS-Status- -Status- -208 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="13" bitLen="1" halPin="Status-Status-209" halType="bit">
                <!-- ENC STATUS-Status- -Status- -209 -->
                </pdoEntry>
                <pdoEntry idx="1C32" subIdx="32" bitLen="1" halPin="Status-Sync-er-210" halType="bit">
                <!-- ENC STATUS-Status- -Sync-er-210 -->
                </pdoEntry>
                <pdoEntry idx="1801" subIdx="07" bitLen="1" halPin="Status-TxPDO-S-211" halType="bit">
                <!-- ENC STATUS-Status- -TxPDO-S-211 -->
                </pdoEntry>
                <pdoEntry idx="1801" subIdx="09" bitLen="1" halPin="Status-TxPDO-T-212" halType="bit">
                <!-- ENC STATUS-Status- -TxPDO-T-212 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="17" bitLen="32" halPin="Counter-value-213" halType="s32">
                <!-- ENC STATUS-Counter-value-213 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="18" bitLen="32" halPin="Latch-value-214" halType="s32">
                <!-- ENC STATUS-Latch-value-214 -->
                </pdoEntry>
            </pdo>
            </syncManager>
        </slave>
        <slave idx="1" type="generic" vid="0x00000002" pid="0x13ED4052" name="EP5101-1" configPdos="true">
            <!-- IMPORTANT: sometime (sync1Cycle = n * sync0Cycle) sync1Cycle must be appTimePeriod - sync0Cycle) -->
            <!-- Check your DC config...generated is from impoted .xml but assignActivate is hard coded ... it should be different -->
            <dcConf assignActivate="1000" sync0Cycle="1000000" sync0Shift="0" sync1Cycle="0" sync1Shift="0"/>
            <sdoConfig idx="1C12" subIdx="complete">
                <sdoDataRaw data="01000116"/>
            </sdoConfig>
                <sdoConfig idx="1C13" subIdx="complete">
            <sdoDataRaw data="0100011A"/>
            </sdoConfig>
            <syncManager idx="0" dir="out"/>
            <syncManager idx="1" dir="in"/>
            <syncManager idx="2" dir="out">
            <pdo idx="1601">
                    <!-- Enable latch C -->
                    <pdoEntry idx="7000" subIdx="01" bitLen="1" halPin="enable-latch-C" halType="bit"/>
                    <!-- Enable latch extern on positive edge -->
                    <pdoEntry idx="7000" subIdx="02" bitLen="1" halPin="ena-latch-ext-on-pos_edge" halType="bit"/>
                    <!-- Set counter -->
                    <pdoEntry idx="7000" subIdx="03" bitLen="1" halPin="set-counter" halType="bit"/>
                    <!-- Enable latch extern on negative edge -->
                    <pdoEntry idx="7000" subIdx="04" bitLen="1" halPin="ena-latch-ext-on-neg_edge" halType="bit"/>
                    <!-- Set counter value -->
                    <pdoEntry idx="7000" subIdx="11" bitLen="32" halPin="set-counter_value" halType="u32"/>
            </pdo>
            </syncManager>
            <syncManager idx="3" dir="in">
                <pdo idx="1A01">
                <pdoEntry idx="6000" subIdx="01" bitLen="1" halPin="Status-Latch-C-197" halType="bit">
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="02" bitLen="1" halPin="Status-Latch-e-198" halType="bit">
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="03" bitLen="1" halPin="Status-Set-cou-199" halType="bit">
                <!-- ENC STATUS-Status- -Set-cou-199 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="04" bitLen="1" halPin="Status-Counter-200" halType="bit">
                <!-- ENC STATUS-Status- -Counter-200 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="05" bitLen="1" halPin="Status-Counter-201" halType="bit">
                <!-- ENC STATUS-Status- -Counter-201 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="06" bitLen="1" halPin="Status-Status-202" halType="bit">
                <!-- ENC STATUS-Status- -Status- -202 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="07" bitLen="1" halPin="Status-Open-ci-203" halType="bit">
                <!-- ENC STATUS-Status- -Open-ci-203 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="08" bitLen="1" halPin="Status-Extrapo-204" halType="bit">
                <!-- ENC STATUS-Status- -Extrapo-204 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="09" bitLen="1" halPin="Status-Status-205" halType="bit">
                <!-- ENC STATUS-Status- -Status- -205 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="10" bitLen="1" halPin="Status-Status-206" halType="bit">
                <!-- ENC STATUS-Status- -Status- -206 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="11" bitLen="1" halPin="Status-Status-207" halType="bit">
                <!-- ENC STATUS-Status- -Status- -207 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="12" bitLen="1" halPin="Status-Status-208" halType="bit">
                <!-- ENC STATUS-Status- -Status- -208 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="13" bitLen="1" halPin="Status-Status-209" halType="bit">
                <!-- ENC STATUS-Status- -Status- -209 -->
                </pdoEntry>
                <pdoEntry idx="1C32" subIdx="32" bitLen="1" halPin="Status-Sync-er-210" halType="bit">
                <!-- ENC STATUS-Status- -Sync-er-210 -->
                </pdoEntry>
                <pdoEntry idx="1801" subIdx="07" bitLen="1" halPin="Status-TxPDO-S-211" halType="bit">
                <!-- ENC STATUS-Status- -TxPDO-S-211 -->
                </pdoEntry>
                <pdoEntry idx="1801" subIdx="09" bitLen="1" halPin="Status-TxPDO-T-212" halType="bit">
                <!-- ENC STATUS-Status- -TxPDO-T-212 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="17" bitLen="32" halPin="Counter-value-213" halType="s32">
                <!-- ENC STATUS-Counter-value-213 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="18" bitLen="32" halPin="Latch-value-214" halType="s32">
                <!-- ENC STATUS-Latch-value-214 -->
                </pdoEntry>
            </pdo>
            </syncManager>
        </slave>
        <slave idx="2" type="generic" vid="0x00000002" pid="0x13ED4052" name="EP5101-2" configPdos="true">
            <!-- IMPORTANT: sometime (sync1Cycle = n * sync0Cycle) sync1Cycle must be appTimePeriod - sync0Cycle) -->
            <!-- Check your DC config...generated is from impoted .xml but assignActivate is hard coded ... it should be different -->
            <dcConf assignActivate="1000" sync0Cycle="1000000" sync0Shift="0" sync1Cycle="0" sync1Shift="0"/>
            <sdoConfig idx="1C12" subIdx="complete">
                <sdoDataRaw data="01000116"/>
            </sdoConfig>
                <sdoConfig idx="1C13" subIdx="complete">
            <sdoDataRaw data="0100011A"/>
            </sdoConfig>
            <syncManager idx="0" dir="out"/>
            <syncManager idx="1" dir="in"/>
            <syncManager idx="2" dir="out">
            <pdo idx="1601">
                    <!-- Enable latch C -->
                    <pdoEntry idx="7000" subIdx="01" bitLen="1" halPin="enable-latch-C" halType="bit"/>
                    <!-- Enable latch extern on positive edge -->
                    <pdoEntry idx="7000" subIdx="02" bitLen="1" halPin="ena-latch-ext-on-pos_edge" halType="bit"/>
                    <!-- Set counter -->
                    <pdoEntry idx="7000" subIdx="03" bitLen="1" halPin="set-counter" halType="bit"/>
                    <!-- Enable latch extern on negative edge -->
                    <pdoEntry idx="7000" subIdx="04" bitLen="1" halPin="ena-latch-ext-on-neg_edge" halType="bit"/>
                    <!-- Set counter value -->
                    <pdoEntry idx="7000" subIdx="11" bitLen="32" halPin="set-counter_value" halType="u32"/>
            </pdo>
            </syncManager>
            <syncManager idx="3" dir="in">
                <pdo idx="1A01">
                <pdoEntry idx="6000" subIdx="01" bitLen="1" halPin="Status-Latch-C-197" halType="bit">
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="02" bitLen="1" halPin="Status-Latch-e-198" halType="bit">
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="03" bitLen="1" halPin="Status-Set-cou-199" halType="bit">
                <!-- ENC STATUS-Status- -Set-cou-199 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="04" bitLen="1" halPin="Status-Counter-200" halType="bit">
                <!-- ENC STATUS-Status- -Counter-200 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="05" bitLen="1" halPin="Status-Counter-201" halType="bit">
                <!-- ENC STATUS-Status- -Counter-201 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="06" bitLen="1" halPin="Status-Status-202" halType="bit">
                <!-- ENC STATUS-Status- -Status- -202 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="07" bitLen="1" halPin="Status-Open-ci-203" halType="bit">
                <!-- ENC STATUS-Status- -Open-ci-203 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="08" bitLen="1" halPin="Status-Extrapo-204" halType="bit">
                <!-- ENC STATUS-Status- -Extrapo-204 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="09" bitLen="1" halPin="Status-Status-205" halType="bit">
                <!-- ENC STATUS-Status- -Status- -205 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="10" bitLen="1" halPin="Status-Status-206" halType="bit">
                <!-- ENC STATUS-Status- -Status- -206 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="11" bitLen="1" halPin="Status-Status-207" halType="bit">
                <!-- ENC STATUS-Status- -Status- -207 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="12" bitLen="1" halPin="Status-Status-208" halType="bit">
                <!-- ENC STATUS-Status- -Status- -208 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="13" bitLen="1" halPin="Status-Status-209" halType="bit">
                <!-- ENC STATUS-Status- -Status- -209 -->
                </pdoEntry>
                <pdoEntry idx="1C32" subIdx="32" bitLen="1" halPin="Status-Sync-er-210" halType="bit">
                <!-- ENC STATUS-Status- -Sync-er-210 -->
                </pdoEntry>
                <pdoEntry idx="1801" subIdx="07" bitLen="1" halPin="Status-TxPDO-S-211" halType="bit">
                <!-- ENC STATUS-Status- -TxPDO-S-211 -->
                </pdoEntry>
                <pdoEntry idx="1801" subIdx="09" bitLen="1" halPin="Status-TxPDO-T-212" halType="bit">
                <!-- ENC STATUS-Status- -TxPDO-T-212 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="17" bitLen="32" halPin="Counter-value-213" halType="s32">
                <!-- ENC STATUS-Counter-value-213 -->
                </pdoEntry>
                <pdoEntry idx="6000" subIdx="18" bitLen="32" halPin="Latch-value-214" halType="s32">
                <!-- ENC STATUS-Latch-value-214 -->
                </pdoEntry>
            </pdo>
            </syncManager>
        </slave>
    </master>
</masters>
[/code][/code]
[/code]
[code][code][code]ethercat slaves for now
[code]cnc@CNC-01:~/linuxcnc/configs/Maho400E-LinuxCNC$ ethercat slaves
0  0:0  PREOP  +  EP5101-0011 1K. Inc. Encoder 5V, D-SUB15
1  0:1  PREOP  +  EP5101-0011 1K. Inc. Encoder 5V, D-SUB15
2  0:2  PREOP  +  EP5101-0011 1K. Inc. Encoder 5V, D-SUB15
[/code][/code][/code]
[/code]
  • PCW
  • PCW's Avatar
29 Jun 2025 22:17
Replied by PCW on topic Servo Driver Plasma Retrofit

Servo Driver Plasma Retrofit

Category: Plasmac

The basic motion I/O looks relatively straight forward

The A,/A B,/B, Z,/Z signals are encoder signals and go directly to the 7I97T

The Servo-Out pins go to the 7I97T analog out pins and the Servo-Out-Common pins
go the the 7I97T GND pins adjacent to the 7I97T analog out pins.

The drive enables are a bit more puzzling as It hard to tell if they are activated by grounding
or supplying a positive voltage 

 
  • PCW
  • PCW's Avatar
29 Jun 2025 21:05

I get a tracking error. the scale of my encoder is correct on my B axis display

Category: Advanced Configuration

Homing configuration is in both the hal file (index and home switch handling) and the ini file
(type of homing, directions, speeds etc) 

linuxcnc.org/docs/html/config/ini-homing.html
  • JackRay
  • JackRay
29 Jun 2025 20:33
  • irwinger
  • irwinger
29 Jun 2025 20:22

Replaced Hard drive - now my 'fast move' (SHIFT->arrow |PgUp/PgDn is not working

Category: General LinuxCNC Questions

OK - I don't know how this got so 'catty wompus' but... turns out - it was my stepper setting. Originally - it was 8000 steps /inch. which seems to be what was in my 'backup' .INI. When I checked my step setting and did the math - I realized it should be 4000 steps. That improved the movement, but I was still getting 'follow errors' (or something like that). One thing I DID notice is - I was out by a factor of 2 when I did a G0 X.5 command. I went back to 8000 and suddenly I was out by a factor of 4... oops - wrong direction. Changed to 2000 steps/in and all my errors have gone and I am able to use the machine again.

I have to confirm yet - but I'm using a chinese 'blue' board parallel port controller and I'm wondering if my stepper switch settings are documented wrong.

Anyways - crisis resolved. Thank you for your help - this discussion can be closed.
  • Bertho
  • Bertho
29 Jun 2025 19:29

How to write multipule data ( byte) mesambccc

Category: General LinuxCNC Questions

Hi again,

The bug has been found in the driver. It was indeed not counting correctly resulting in trying to overflow the buffer (that caused an abort without writing beyond the buffer). I will be making a patch for it tomorrow.

Also, the mrje70a device is something of a piece with very complex modbus communication (I downloaded the comms spec). It seems to use "record reads and writes in depth" where several values are read/write from an address in a structure like fashion. These must be read/written using a single modbus transaction (when the "continuous read/write" column set to "impossible" it seems to denote that it is a record read/written in depth and not by incremental address). That is the first time I've seen such a hack. Luckily, the driver can do that (but you need to ignore the misalignment warnings from mesambccc). However, some extra pin setup is needed before you want to start writing or you will be sending half or malformed data. I'll show how to do that when I have made the patch.

All that said, the patch will also include a fix for the completely brain-dead mrje70a communication, where it returns a single signed byte (!) in a word register's LSB and zeros the MSB while leaving the user the hassle to tackle the sign extension. The patch will allow you to perform the proper sign extension to s32, s64 or float hal types by introducing a byte type.
Displaying 286 - 300 out of 25534 results.
Time to create page: 0.815 seconds
Powered by Kunena Forum