Re: [Emc-developers] LinuxCNC-aware chat bot

2024-02-02 Thread Jacob Rush
I wonder what would happen if you added the source code.

From: andy pugh 
Sent: Friday, February 2, 2024 6:06:52 PM
To: EMC developers 
Subject: Re: [Emc-developers] LinuxCNC-aware chat bot

On Fri, 2 Feb 2024 at 23:43, Steffen Möller via Emc-developers
 wrote:

> GPT 4 after receiving all our documentation:
> In HAL (Hardware Abstraction Layer) configuration for LinuxCNC, traditional 
> programming constructs like loops (for, while) are not directly supported in 
> the HAL configuration language itself.
...
> In summary, while HAL itself does not support loops in the way a conventional 
> programming language does, you can achieve similar outcomes through the 
> methods mentioned above. This design choice keeps HAL configurations 
> straightforward and focused on hardware-software interfacing, with more 
> complex logic handled by custom components or external scripts.

That's really quite impressive.

--
atp
"A motorcycle is a bicycle with a pandemonium attachment and is
designed for the especial use of mechanical geniuses, daredevils and
lunatics."
— George Fitch, Atlanta Constitution Newspaper, 1912


___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Repositories for buildbot on bullseye

2024-02-02 Thread Rod Webster
This issue is well known and was introduced to the Debian  kernel with
Bullseye (Kernel 5.10).
It is caused by excessive kernel network latency and is nothing to do with
2.9.2
Building a kernel from pristine kernel.org  sources mostly solves it.
It has been slowly improving with successive versions of the kernel so I am
surprised that Bookworm made it worse.
We need more info to help much. CPU, number of cores, NIC manufacturers and
model. Older 2 core PCs may not cut it today.

If it's an Intel nic, be sure to add the coalescing settings as advised in
man hm2_eth
My guess is that you probably have realtek NIC's that get the wrong driver
(R8169) installed.
If this is the case, you need to install a dkms driver. (r8168-dkms or
r8125-dkms)

I have a document in Google drive that outlines the way forward (under the
heading optional steps)
https://docs.google.com/document/d/1jeV_4VKzVmOIzbB-ytcgsW2I_PhCm1x7oiw8VcLFdiY/edit?usp=sharing
This has solved the issue for hundreds of users. One or 2 of them were
using a 2 core PC but I have never had anything less than 4 cores

So in summary, I would
1. Install the Linux 2.9.2 ISO
2. Pick up on step 36 of my Document and install my 6.3 kernel. There is an
instructions document if you wish to try your hand at building a later
version (say 6.6)
3. Install the correct Realtek DKMS driver
4. Enjoy using linuxcnc!



Rod Webster
*1300 896 832*
+61 435 765 611
Vehicle Modifications Network
www.vehiclemods.net.au


On Sat, 3 Feb 2024 at 00:14, Peter Wallace  wrote:

> On Fri, 2 Feb 2024, Marius wrote:
>
> > Date: Fri, 2 Feb 2024 10:32:54 +0200
> > From: Marius 
> > Reply-To: EMC developers 
> > To: Alec Ari via Emc-developers 
> > Subject: Re: [Emc-developers] Repositories for buildbot on bullseye
> >
> > More information regarding this issue
> >
> > This is the max timings at startup of linuxcnc running Gmoccapy
> >
> > Parameters:
> > Owner   Type  Dir Value  Name
> > 56  s32   RW  32713  comp.0.tmax
> > 56  s32   RW  21741  comp.1.tmax
> > 56  s32   RW  21649  comp.2.tmax
> > 56  s32   RW  15801  comp.3.tmax
> > 56  s32   RW   6484  comp.4.tmax
> > 36  s32   RW  0  hm2_7i96s.0.read-request.tmax
> > 36  s32   RW 937642  hm2_7i96s.0.read.tmax
> > 36  s32   RW  79396  hm2_7i96s.0.write.tmax
> > 29  s32   RW  35491  motion-command-handler.tmax
> > 29  s32   RW  80781  motion-controller.tmax
> > 39  s32   RW  22747  pid.b.do-pid-calcs.tmax
> > 39  s32   RW  32665  pid.c.do-pid-calcs.tmax
> > 39  s32   RW  36771  pid.s.do-pid-calcs.tmax
> > 39  s32   RW  35744  pid.x.do-pid-calcs.tmax
> > 39  s32   RW  32242  pid.y.do-pid-calcs.tmax
> > 39  s32   RW  45865  pid.z.do-pid-calcs.tmax
> > 30  s32   RW1022059  servo-thread.tmax
> >
> > Then this is the max timings right after the crash
> >
> > Parameters:
> > Owner   Type  Dir Value  Name
> > 56  s32   RW  93620  comp.0.tmax
> > 56  s32   RW  21866  comp.1.tmax
> > 56  s32   RW  30257  comp.2.tmax
> > 56  s32   RW  21831  comp.3.tmax
> > 56  s32   RW  22149  comp.4.tmax
> > 36  s32   RW  0  hm2_7i96s.0.read-request.tmax
> > 36  s32   RW 941321  hm2_7i96s.0.read.tmax
> > 36  s32   RW 163732  hm2_7i96s.0.write.tmax
> > 29  s32   RW  52368  motion-command-handler.tmax
> > 29  s32   RW 152143  motion-controller.tmax
> > 39  s32   RW  45604  pid.b.do-pid-calcs.tmax
> > 39  s32   RW  46064  pid.c.do-pid-calcs.tmax
> > 39  s32   RW  93254  pid.s.do-pid-calcs.tmax
> > 39  s32   RW  37166  pid.x.do-pid-calcs.tmax
> > 39  s32   RW  48941  pid.y.do-pid-calcs.tmax
> > 39  s32   RW  45865  pid.z.do-pid-calcs.tmax
> > 30  s32   RW1031395  servo-thread.tmax
> >
> >
> > Take note of the motion controller and the hm2_7i96s.0.read.tmax threads.
> >
>
>
> What is the CPU clock speed?
>
> Peter Wallace
> Mesa Electronics
>
>
> ___
> Emc-developers mailing list
> Emc-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-developers
>

___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] LinuxCNC-aware chat bot

2024-02-02 Thread andy pugh
On Fri, 2 Feb 2024 at 23:43, Steffen Möller via Emc-developers
 wrote:

> GPT 4 after receiving all our documentation:
> In HAL (Hardware Abstraction Layer) configuration for LinuxCNC, traditional 
> programming constructs like loops (for, while) are not directly supported in 
> the HAL configuration language itself.
...
> In summary, while HAL itself does not support loops in the way a conventional 
> programming language does, you can achieve similar outcomes through the 
> methods mentioned above. This design choice keeps HAL configurations 
> straightforward and focused on hardware-software interfacing, with more 
> complex logic handled by custom components or external scripts.

That's really quite impressive.

-- 
atp
"A motorcycle is a bicycle with a pandemonium attachment and is
designed for the especial use of mechanical geniuses, daredevils and
lunatics."
— George Fitch, Atlanta Constitution Newspaper, 1912


___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


[Emc-developers] LinuxCNC-aware chat bot

2024-02-02 Thread Steffen Möller via Emc-developers
Hello,

I created a GPT as an extension of chatGPT 4 that users of chatGPT 4 (it still 
costs a bit) can give a try at 
https://chat.openai.com/g/g-vfeQnX43z-linuxcnc-assistant
If you know of documents that I should add - please tell me. So far I only 
added HTML-translated pages of our documentation.

I am not ultimately sure why I did this. I think I wanted to have someone 
"local" to help me get my mill running. And questions that cannot be answered 
by that GPT may be a motivation to extend our documentation for.

The extra documentation seems to make a small difference, though version 4 is 
impressive alone already. For instance, G-code is no longer listed as a means 
to configure LinuxCNC. I think this is correct.

Feel free to send me questions to that chat bot you want me to ask if you do 
not have direct access to it. Once we have something like this implemented on a 
Free Software, should we have some bot like this on IRC/our home page?

Best,
Steffen


Me:
How is the language called that is used to configure LinuxCNC?

GPT 3.5:
The language used to configure LinuxCNC is called "G-code." G-code is a 
standardized language used in the CNC (Computer Numerical Control) industry to 
control machine tools and 3D printers. It consists of a series of alphanumeric 
codes that define the toolpath, feed rates, and other parameters for the 
machine. This information is based on general knowledge about CNC and LinuxCNC 
as of my last training data update in January 2022.

GPT 4 out of the box:

The language used to configure LinuxCNC, which is an open-source system for 
controlling machine tools, is primarily INI (Initialization) file format for 
configuration settings, along with a combination of G-code for operational 
commands and Python for scripting and customization.

1. **INI Files**: LinuxCNC uses INI files to configure the software for a 
specific machine. These files contain settings for hardware, motion control 
parameters, and interface options. The format is straightforward, allowing 
users to specify parameters in a key-value format within sections.

2. **HAL (Hardware Abstraction Layer) Configuration**: LinuxCNC also uses a 
specific system for connecting the software components to the hardware called 
the Hardware Abstraction Layer (HAL). Configuration of HAL is done through HAL 
files, which are written in a custom syntax specific to LinuxCNC. These files 
define how hardware and software components are interconnected.

3. **G-code**: For operational commands, such as moving the machine or 
executing a cutting operation, LinuxCNC uses G-code. G-code is a language used 
by machine tools to control CNC operations. It consists of commands that 
instruct the machine on movements and actions to perform.

4. **Python**: For scripting, automation, and more complex customization, 
LinuxCNC supports the use of Python scripts. Python can be used to create 
custom user interfaces, automate tasks, or extend the functionality of LinuxCNC 
beyond what is possible with G-code and INI configuration alone.

These components together allow for a highly customizable and powerful system 
for CNC machine control, catering to a wide range of applications and machine 
types.

GPT 4 with training on our documentation:
The language used to configure LinuxCNC is not a single language but rather a 
combination of configuration files, HAL (Hardware Abstraction Layer) scripts, 
and sometimes Python scripts for more complex behaviors or customizations. 
Here's a breakdown of each:

INI Files: Configuration for LinuxCNC is primarily done through INI files 
(.ini). These are plain text files that set parameters for the LinuxCNC 
software, including machine geometry, kinematics, hardware settings, and file 
paths. INI files are structured with sections, keys, and values, providing a 
straightforward way to configure the various aspects of a CNC system.

HAL Files: The Hardware Abstraction Layer (HAL) configuration files (.hal) are 
used to connect the LinuxCNC software to the physical hardware. HAL files 
describe how software components are connected to each other and to the 
hardware interfaces. This allows for a flexible setup where users can define 
how signals are routed within the system, map inputs and outputs, and configure 
hardware drivers. HAL uses its own syntax to define these connections and 
configurations.

Python Scripts: For advanced customization, Python scripts can be used to 
extend the functionality of LinuxCNC. Python allows for the creation of custom 
GUI elements, complex logic operations, and integration with external systems. 
This is more advanced than INI and HAL configurations and requires programming 
knowledge.

Together, these components allow for highly customizable and flexible setups to 
suit a wide range of CNC machines and applications.

Me:
Is it possible to define loops in HAL?

GPT 3.5:

Yes, it is possible to define loops in HAL (Hardware Abstraction Layer) for 
LinuxCNC. HAL 

Re: [Emc-developers] Repositories for buildbot on bullseye

2024-02-02 Thread Peter Wallace

On Fri, 2 Feb 2024, Marius wrote:


Date: Fri, 2 Feb 2024 10:32:54 +0200
From: Marius 
Reply-To: EMC developers 
To: Alec Ari via Emc-developers 
Subject: Re: [Emc-developers] Repositories for buildbot on bullseye

More information regarding this issue

This is the max timings at startup of linuxcnc running Gmoccapy

Parameters:
Owner   Type  Dir Value  Name
56  s32   RW  32713  comp.0.tmax
56  s32   RW  21741  comp.1.tmax
56  s32   RW  21649  comp.2.tmax
56  s32   RW  15801  comp.3.tmax
56  s32   RW   6484  comp.4.tmax
36  s32   RW  0  hm2_7i96s.0.read-request.tmax
36  s32   RW 937642  hm2_7i96s.0.read.tmax
36  s32   RW  79396  hm2_7i96s.0.write.tmax
29  s32   RW  35491  motion-command-handler.tmax
29  s32   RW  80781  motion-controller.tmax
39  s32   RW  22747  pid.b.do-pid-calcs.tmax
39  s32   RW  32665  pid.c.do-pid-calcs.tmax
39  s32   RW  36771  pid.s.do-pid-calcs.tmax
39  s32   RW  35744  pid.x.do-pid-calcs.tmax
39  s32   RW  32242  pid.y.do-pid-calcs.tmax
39  s32   RW  45865  pid.z.do-pid-calcs.tmax
30  s32   RW1022059  servo-thread.tmax

Then this is the max timings right after the crash

Parameters:
Owner   Type  Dir Value  Name
56  s32   RW  93620  comp.0.tmax
56  s32   RW  21866  comp.1.tmax
56  s32   RW  30257  comp.2.tmax
56  s32   RW  21831  comp.3.tmax
56  s32   RW  22149  comp.4.tmax
36  s32   RW  0  hm2_7i96s.0.read-request.tmax
36  s32   RW 941321  hm2_7i96s.0.read.tmax
36  s32   RW 163732  hm2_7i96s.0.write.tmax
29  s32   RW  52368  motion-command-handler.tmax
29  s32   RW 152143  motion-controller.tmax
39  s32   RW  45604  pid.b.do-pid-calcs.tmax
39  s32   RW  46064  pid.c.do-pid-calcs.tmax
39  s32   RW  93254  pid.s.do-pid-calcs.tmax
39  s32   RW  37166  pid.x.do-pid-calcs.tmax
39  s32   RW  48941  pid.y.do-pid-calcs.tmax
39  s32   RW  45865  pid.z.do-pid-calcs.tmax
30  s32   RW1031395  servo-thread.tmax


Take note of the motion controller and the hm2_7i96s.0.read.tmax threads.




What is the CPU clock speed?

Peter Wallace
Mesa Electronics


___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Repositories for buildbot on bullseye

2024-02-02 Thread andy pugh
On Fri, 2 Feb 2024 at 07:25, Marius  wrote:

> I need to get master installed to try and get the machines running
> again. There seems to be no repository for Bullseye master. How do I go
> about getting that please.

Try Sebs experimental buildbot: http://buildbot2.highlab.com/


-- 
atp
"A motorcycle is a bicycle with a pandemonium attachment and is
designed for the especial use of mechanical geniuses, daredevils and
lunatics."
— George Fitch, Atlanta Constitution Newspaper, 1912


___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers


Re: [Emc-developers] Repositories for buildbot on bullseye

2024-02-02 Thread Marius

More information regarding this issue

This is the max timings at startup of linuxcnc running Gmoccapy

Parameters:
Owner   Type  Dir Value  Name
    56  s32   RW  32713  comp.0.tmax
    56  s32   RW  21741  comp.1.tmax
    56  s32   RW  21649  comp.2.tmax
    56  s32   RW  15801  comp.3.tmax
    56  s32   RW   6484  comp.4.tmax
    36  s32   RW  0  hm2_7i96s.0.read-request.tmax
    36  s32   RW 937642  hm2_7i96s.0.read.tmax
    36  s32   RW  79396  hm2_7i96s.0.write.tmax
    29  s32   RW  35491  motion-command-handler.tmax
    29  s32   RW  80781  motion-controller.tmax
    39  s32   RW  22747  pid.b.do-pid-calcs.tmax
    39  s32   RW  32665  pid.c.do-pid-calcs.tmax
    39  s32   RW  36771  pid.s.do-pid-calcs.tmax
    39  s32   RW  35744  pid.x.do-pid-calcs.tmax
    39  s32   RW  32242  pid.y.do-pid-calcs.tmax
    39  s32   RW  45865  pid.z.do-pid-calcs.tmax
    30  s32   RW    1022059  servo-thread.tmax

Then this is the max timings right after the crash

Parameters:
Owner   Type  Dir Value  Name
    56  s32   RW  93620  comp.0.tmax
    56  s32   RW  21866  comp.1.tmax
    56  s32   RW  30257  comp.2.tmax
    56  s32   RW  21831  comp.3.tmax
    56  s32   RW  22149  comp.4.tmax
    36  s32   RW  0  hm2_7i96s.0.read-request.tmax
    36  s32   RW 941321  hm2_7i96s.0.read.tmax
    36  s32   RW 163732  hm2_7i96s.0.write.tmax
    29  s32   RW  52368  motion-command-handler.tmax
    29  s32   RW 152143  motion-controller.tmax
    39  s32   RW  45604  pid.b.do-pid-calcs.tmax
    39  s32   RW  46064  pid.c.do-pid-calcs.tmax
    39  s32   RW  93254  pid.s.do-pid-calcs.tmax
    39  s32   RW  37166  pid.x.do-pid-calcs.tmax
    39  s32   RW  48941  pid.y.do-pid-calcs.tmax
    39  s32   RW  45865  pid.z.do-pid-calcs.tmax
    30  s32   RW    1031395  servo-thread.tmax


Take note of the motion controller and the hm2_7i96s.0.read.tmax threads.



On 2024/02/02 09:21, Marius wrote:

Hi

I have three machines that are running on Bullseye with 7i96S cards. 
We did an upgrade to 2.9.2 and now the mesa communication is unstable 
to the extend that the machines are unusable.


Looking at the timing shows that motion has very long delays (like 
getting stuck) that causes the ethernet to loose packets and goes into 
fault mode.


I need to get master installed to try and get the machines running 
again. There seems to be no repository for Bullseye master. How do I 
go about getting that please.


P.S. I DON"T want to upgrade to Bookworm either as we have one 
computer that this error is so bad that we cannot connect to the mesa 
cards at all. This one we installed from the Bookwork 2.9.2 ISO.


Marius



___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers



___
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers