network sharing with LinuxCNC

More
21 Mar 2021 03:23 - 21 Mar 2021 04:37 #203078 by clive
Replied by clive on topic network sharing with LinuxCNC
The old box I have is a Dell 530 workstation from ages ago. The CPU's proper name is a Xeon Core2 Duo E4500. There are actually two distinct CPUs in the box. It's a massive affair. I burned a LinuxCNC ISO a while ago and that is what I installed. The machine itself is hopelessly out of date. It only has PATA connectors but I have some spare PCI to SATA converter boards :whistle: Wheezy is what I have.

I should say that it works and works well. I feel much safer with a Linux box, even an old one, than a funky XP box and proprietary software.

For my networking issue I'm using a discarded laptop with Avahi that seems to be friendly for file sharing between Wheezy and my workstation. SMB has recent issues because Microsoft changed something and SMB now half-works :ohmy: So I get to do two drag-and-drops.

OFF TOPIC
For my kind of artwork GRBL works well. The parallel port interface to the stepper drivers was a good idea but, very obviously, has demands on the OS that are just wrong. An Arduino is perfect for real-time stuff but, despite GRBL being a wonderful piece of code, it ends up doing too much. The heavier compute power of a modern Linux box should do all the planning etc. and leave just the real-time buffering to the Arduino. An intermediate communication form is needed. A cheap way of doing it would be to package up the parallel port data and shovel that to an Arduino and let it do the real time stuff.

And further, LinuxCNC should have code that optimizes the cuts and movement. My own code has to arrange the G-Code in an efficient order which is a task the machine driver should do. Tedious stuff like finding the next nearest cut, a TSP at heart, should not be left to the G-CODE generator.

OK, rant over. ;)
Last edit: 21 Mar 2021 04:37 by clive.

Please Log in or Create an account to join the conversation.

More
21 Mar 2021 06:57 #203081 by BeagleBrainz
That's why Mesa FPGA boards are so popular. Linuxcnc does the motion planning and then the step & direction signals are done by the FPGA. This allows a little bit more leeway with latency.

The Beagle Bone Black uses as similar approach but uses the on board PRU to do the realtime stuff, basically the BBB has 2 on die mcu's that aren't touched by the OS, apart from uploading the firmware and communication. Well that's the simplified version.

I'm intrigued regard your CPU, still can't find any info online. If you feel like it, just for interests sake (well maybe my own) could you post the output of this command:
cat /proc/cpuinfo

Please Log in or Create an account to join the conversation.

More
21 Mar 2021 16:44 #203132 by clive
Replied by clive on topic network sharing with LinuxCNC
I see that Mesa uses Xilinx FPGAs. My guys designed the first Altera FPGA the 81188, and we went on and built the 10K100. So you see I can't use anything that has a Xilinx FPGA it's against my religion :dry:

The Xeon processor performance can be found here: Xeon The /proc/cpuinfo reveals lot of detail but nothing useful to further identify the CPU.

The Beagle Board approach seems cheap and good. It would allow me to use Linux Mint 20 and a much more modern CPU.

Please Log in or Create an account to join the conversation.

More
21 Mar 2021 22:05 #203163 by BeagleBrainz
The command I suggested reveals everything to identify the cpu.
The Beagle Bone solution actually runs a fork of Linuxcnc called Machine Kit.
Core 2 Duos are only designed for Single Processor Systems.
The actual Intel alpha numeric code is contained in /proc/cpuinfo, that’s why I asked about the output.
To go for a more modern processor, you have a couple of options. Just note that latest and greatest doesn’t always mean best option for running Linuxcnc. Your best bet would be to search the forums and see what Tommy recommends. Tommy is the guru when it comes to that.
The BBB solution is not for the faint of heart. It requires acquiring a breakout board to translate 3.3v to 5v, some say the performance of the GPU isn’t the best and it has issues with large gcode files. The latest images require the use of a Remote Desktop as the X portion has been stripped out.

IMHO an I5 to I7 of about any generation coupled with a Mesa FPGA card is a solid solution. If you opt for 7i92 you can plug that into your existing Parallel Port BOB. With the 7i92 using an Ethernet port it is good until they stop building PCs with Ethernet ports.
But if your current system works keep with that.

Please Log in or Create an account to join the conversation.

More
22 Mar 2021 01:13 #203185 by clive
Replied by clive on topic network sharing with LinuxCNC
I'm just not a fan of running Linux on small boards. I like the down and dirty of Arduino because there is no OS just a small CPU running in a loop and some naked I/O.

The FPGA solution certainly gets down to the bare metal hardware level but the speed of an FPGA is wasted sending commands to a stepper driver and FPGAs don't naturally buffer data the way a CPU can. A $20 Arduino is hard to beat and I just love the way GRBL is written -- the code is a joy to read.

You are right, the current set up works so I will keep with that until the ancient Dell box dies.

Please Log in or Create an account to join the conversation.

More
22 Mar 2021 01:50 - 22 Mar 2021 01:51 #203190 by PCW
Replied by PCW on topic network sharing with LinuxCNC

The FPGA solution certainly gets down to the bare metal hardware level but the
speed of an FPGA is wasted sending commands to a stepper driver


We do not use FPGAs so much for speed (but it's there when needed), but for flexibility.
say if you need 7 encoder counters, a BISS interface, and a XY2-100 galvanometer
interface, its all possible. FPGAs also have the advantage that the peripherals can be tailored
to LinuxCNCs requirements. In addition porting to newer hardware is trivial since the register
model does not change.

FPGAs don't naturally buffer data the way a CPU can


LinuxCNC depends on unbuffered hardware because the locus of control is
on the host CPU. Buffered systems Like Mach and GRBL are fine until you
try to do something fancy in real time (say plasma torch height control) Then
you typically need external hardware add-ons
Last edit: 22 Mar 2021 01:51 by PCW.

Please Log in or Create an account to join the conversation.

More
22 Mar 2021 04:35 #203197 by BeagleBrainz
Just to be "That Guy"....

Basically FPGA's naturally do nuffin.

Please Log in or Create an account to join the conversation.

More
23 Mar 2021 08:41 #203363 by verticalperformance
Back onto the file sharing.... another approach is to run a software version management system, commit the code on the generating computer, then pull the code onto the Linux cnc computer. This will work with Linux, pc and Mac and has the added benefit you can keep all the tweaks you have done to program and roll back if needed. Works great for the configuration files too. I use svn, just because it was there at the time. Nowadays probably git. There are gui for them too, if that is your thing. You will need to host it on an always on machine but it uses a Web server to provide the data, so direct file sharing is not needed.

Please Log in or Create an account to join the conversation.

More
24 Mar 2021 08:11 #203494 by rodw
Replied by rodw on topic network sharing with LinuxCNC
In the absence of a server at work I use Google drive to transfer files.
At home I used a Synology NAS and its on the list at work. Just I want a rack mount one and they are expensive!

Please Log in or Create an account to join the conversation.

More
24 Mar 2021 08:13 #203495 by BeagleBrainz

In the absence of a server at work I use Google drive to transfer files.
At home I used a Synology NAS and its on the list at work. Just I want a rack mount one and they are expensive!


Hope you have a sound proof room. seems anything that is rack mount tries to out do a Top Fueler for noise.
The following user(s) said Thank You: tommylight

Please Log in or Create an account to join the conversation.

Time to create page: 0.091 seconds
Powered by Kunena Forum