Remora - ethernet NVEM / EC300 / EC500 cnc board

More
28 Sep 2023 17:07 #281805 by aaamil13
God bless you scotta, I was on my way to give up with EC500, but with the last build everything work great, except TFTP, but I rebuild it with changed default JSON. Thanks for the great work you do. Ping is between 200-400 us, stepgen works perfect with no follow error. Continue to test but for now works perfect.

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

More
28 Sep 2023 17:40 #281807 by oficinerobotica
For the tftp error try
Sudo apt install python3-pip
Pip3 install tftpy

That did it for me. Sorry for the formatting but I'm on mobile but you get the idea.

Pip3 will install the python3 tftpy module. Pip will install only for the 2.7

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

More
28 Sep 2023 18:09 - 28 Sep 2023 18:14 #281810 by aaamil13
Not a Python problem, just TimeOut while trying to upload config file. Tried to upload with script and TFTP in terminal ( the file produced from script) but with no success. 

tcpdump port 69 -vv
tcpdump: listening on eno1, link-type EN10MB (Ethernet), snapshot length 262144 bytes
21:04:06.187537 IP (tos 0x0, ttl 64, id 53926, offset 0, flags [DF], proto UDP (17), length 43)
    LinuxCNC.43235 > 10.10.10.10.tftp: [bad udp cksum 0x2851 -> 0x29d8!] TFTP, length 15, WRQ "config" octet
21:04:36.211690 IP (tos 0x0, ttl 64, id 61158, offset 0, flags [DF], proto UDP (17), length 43)
    LinuxCNC.43235 > 10.10.10.10.tftp: [bad udp cksum 0x2851 -> 0x29d8!] TFTP, length 15, WRQ "config" octet

Unfortunately can't read debug messages on UART ( seems that TTL level shifter burned while been connected to RS232)
 


So i decided to compile with integrated config JSON and that is ok for me. The good news is that Version 2.0.0 with DMA is much better, the possibility to control pulse width and 500khz stepgen ( tested at 90khz and it is ok ).
Attachments:
Last edit: 28 Sep 2023 18:14 by aaamil13.

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

More
28 Sep 2023 20:35 #281816 by scotta

May I ask what is the advantage of DMA stepgen? Is it faster or less cpu intense? Adjustable step length seems nice.
And one more question: Can it be used for generating PWM signals or is this a completly different can of worms.

The advantage of the DMA stepgen is the increased max step rate, from ~100khz to 500khz. So people with high micro stepping or reductions will be happy.

At low step rates the DMA stepgen has way less CPU load. The reason for the max 500khz is the point where there is not enough time within the servo thread to do the calcs for all 6 axes. Which most people will never need all 6 axes to be that fast simultaneously.

For the last point, the downside with the DMA stepgen is that it is tied to the GPIO port used for the step and direction outputs, GPIO1. The other outputs are on GPIO2, which could be used with the sowftware PWM module if needed. 
The following user(s) said Thank You: cnc-phil

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

More
28 Sep 2023 21:08 #281819 by oficinerobotica
@aaamil13 could you please share your ec500-rt1052.txt config file for the DMA branch? also the hal and ini files. I managed to flash the ec500 with the DMA stepgen bin, I can ping the card and bring Linuxcnc out of estop but I'm getting following errors as soon as I try to jog. I'm using the config provided by scotta in the github repo. No steppers yet attached.

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

More
29 Sep 2023 04:29 #281833 by scotta
I've just added my testing LinuxCNC config and EC500 config file to the DMAstepgen branch. Hope it works for you to. I've set the joint scales high for testing.

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

More
29 Sep 2023 04:34 - 29 Sep 2023 04:49 #281834 by oficinerobotica

I've just added my testing LinuxCNC config and EC500 config file to the DMAstepgen branch. Hope it works for you to. I've set the joint scales high for testing.

Oh man .... thank you so much. I still have allot to learn.

Link for supporting your development please? :)

Edit:
In the remora-ec500.hal at line 9 I see "loadrt remora-nv PRU_base_freq=500000"  but linuxcnc will throw an error complayning of not finding remora-nv.so. I can start linuxcnc only if I change it to "remora-eth" in the hal file.

Do I have the wrong remora components compiled for  linuxcnc?
I used the remora eth branch to compile the lcnc components
Last edit: 29 Sep 2023 04:49 by oficinerobotica.

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

More
29 Sep 2023 08:04 #281843 by scotta
No need to add the base_freq parameter, The DMA stepgen is hard coded.

remora-nv component is available from the following repo

github.com/scottalford75/Remora-NVEM/tre...Components/Remora-nv
The following user(s) said Thank You: oficinerobotica

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

More
29 Sep 2023 08:08 #281844 by scotta
Link for supporting development, yes I still need to get this up and more visible. Appreciate the support.

www.gofundme.com/f/remora-firmware-development

Hoping to move onto documentation improvement now the DMA stepgen is less in my head.
The following user(s) said Thank You: oficinerobotica

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

More
29 Sep 2023 08:08 #281845 by rodw
Can you share the DMA code or post a link?
I have given some thought to timer interrupt driven stepping, so would be interested to see how you do DMA

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

Time to create page: 0.379 seconds
Powered by Kunena Forum