[Emc-developers] Beagle Bone / PRU support ?

2021-03-28 Thread Jon Elson
The Machinekit project seems to be very quiet.  Maybe they 
think they accomplished all their goals.


I was wondering if there was any possibility that LinuxCNC 
could support the Beagle Bone and Charles Steinkuehler's 
driver for the PRU.  This does software stepping with quite 
decent
performance by moving the "base thread" into the PRU 
processors (200 MHz 32-bit RISC attached CPUs).  This has 
been shown to work nicely for small stepper-driven machines.


Right now, Robert C. Nelson is providing a Machinekit build 
(equivalent to our iso's) but I don't

know if that will continue indefinitely.

Any comments?

Thanks,

Jon


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


Re: [Emc-developers] Beagle Bone / PRU support ?

2021-03-28 Thread andy pugh
On Sun, 28 Mar 2021 at 19:40, Jon Elson  wrote:

> I was wondering if there was any possibility that LinuxCNC
> could support the Beagle Bone and Charles Steinkuehler's
> driver for the PRU.

I have talked to Charles about it in the past (a few years ago) but
wasn't really interested enough at the time to experiment.

It looks like the code will just drop into the LinuxCNC tree. But it
only compiles on the Beaglebone. I don't have one set up here at the
moment.

If you want to try compiling this new branch:
https://github.com/LinuxCNC/linuxcnc/tree/andypugh/bb_pru

A problem is that with no BBB buildslave, no packages will be built by
the buildbot.

--
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] Beagle Bone / PRU support ?

2021-03-28 Thread Bari

On 3/28/21 1:39 PM, Jon Elson wrote:

I was wondering if there was any possibility that LinuxCNC could 
support the Beagle Bone and Charles Steinkuehler's driver for the 
PRU.  This does software stepping with quite decent
performance by moving the "base thread" into the PRU processors (200 
MHz 32-bit RISC attached CPUs).  This has been shown to work nicely 
for small stepper-driven machines. 



Not sure why the OrangePi LCNC project didn't just try to get this going 
on the Allwinners since they have an integrated micro for high speed 
stepping and a GPU to support a HD res 30+ fps GUI.


https://orangecnc.gitlab.io/

Tom P did just post this work for Rpi and Opi's to do double stepping 
using the GPIO from the main CPU cores.


https://forum.linuxcnc.org/18-computer/36879-raspberry-pi-4-mmap?start=480#203601

https://forum.linuxcnc.org/media/kunena/attachments/16508/edit-hal_pi_gpio10_2021-03-25.c

https://forum.linuxcnc.org/media/kunena/attachments/16508/drv8825-dblstep.ini

https://forum.linuxcnc.org/media/kunena/attachments/16508/drv8825-dblstep.hal



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


Re: [Emc-developers] Beagle Bone / PRU support ?

2021-03-28 Thread Jon Elson

On 03/28/2021 04:50 PM, Bari wrote:

On 3/28/21 1:39 PM, Jon Elson wrote:

I was wondering if there was any possibility that 
LinuxCNC could support the Beagle Bone and Charles 
Steinkuehler's driver for the PRU.  This does software 
stepping with quite decent
performance by moving the "base thread" into the PRU 
processors (200 MHz 32-bit RISC attached CPUs).  This has 
been shown to work nicely for small stepper-driven machines. 



Not sure why the OrangePi LCNC project didn't just try to 
get this going on the Allwinners since they have an 
integrated micro for high speed stepping and a GPU to 
support a HD res 30+ fps GUI.


https://orangecnc.gitlab.io/

Tom P did just post this work for Rpi and Opi's to do 
double stepping using the GPIO from the main CPU cores.
Well, that's nothing like the PRU "driver" that Charles put 
together.  It looks about the same as an X86 with at least a 
20 KHz base thread.  The Pi definitely has better graphics 
support than the Bone,

but it is mostly tolerable.

Jon


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


Re: [Emc-developers] Beagle Bone / PRU support ?

2021-03-28 Thread Jon Elson

On 03/28/2021 04:18 PM, andy pugh wrote:

On Sun, 28 Mar 2021 at 19:40, Jon Elson  wrote:


I was wondering if there was any possibility that LinuxCNC
could support the Beagle Bone and Charles Steinkuehler's
driver for the PRU.

I have talked to Charles about it in the past (a few years ago) but
wasn't really interested enough at the time to experiment.

It looks like the code will just drop into the LinuxCNC tree. But it
only compiles on the Beaglebone. I don't have one set up here at the
moment.

Right, it would take somebody to set up the infrastructure.

If you want to try compiling this new branch:
https://github.com/LinuxCNC/linuxcnc/tree/andypugh/bb_pru

A problem is that with no BBB buildslave, no packages will be built by
the buildbot.


Compiling all of LinuxCNC on the Bone would not be as quick 
as on a decent X86 machine.
I think it comes out maybe being 1/4 the speed.  That's 
probably still OK, though.


Thanks, Andy and Bari for the comments.

Jon


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


Re: [Emc-developers] Beagle Bone / PRU support ?

2021-03-28 Thread Bari

On 3/28/21 7:49 PM, Jon Elson wrote:

Not sure why the OrangePi LCNC project didn't just try to get this 
going on the Allwinners since they have an integrated micro for high 
speed stepping and a GPU to support a HD res 30+ fps GUI.


https://orangecnc.gitlab.io/

Tom P did just post this work for Rpi and Opi's to do double stepping 
using the GPIO from the main CPU cores.
Well, that's nothing like the PRU "driver" that Charles put together.  
It looks about the same as an X86 with at least a 20 KHz base thread.  
The Pi definitely has better graphics support than the Bone,
but it is mostly tolerable. 


Not sure which you are comparing to the PRU "driver".

But just to be clear, the Orangecnc fork of LinuxCNC for the OrangePi  
https://gitlab.com/orangecnc  Steps as fast as the PRU's in the BBB but 
the driver is currently broken. Maybe they were not aware of the work in 
machinekit using the PRU's. Maybe the PRU "driver" that Charles put 
together would have helped them.


I just pointed out Tom P's work for Rpi and Opi for faster software 
stepping using the main ARM cores and GPIO without use of internal 
microcontroller. For applications where that is fast enough.



-Bari



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


Re: [Emc-developers] Beagle Bone / PRU support ?

2021-03-28 Thread Gene Heskett
On Sunday 28 March 2021 20:52:57 Jon Elson wrote:

> On 03/28/2021 04:18 PM, andy pugh wrote:
> > On Sun, 28 Mar 2021 at 19:40, Jon Elson  
wrote:
> >> I was wondering if there was any possibility that LinuxCNC
> >> could support the Beagle Bone and Charles Steinkuehler's
> >> driver for the PRU.
> >
> > I have talked to Charles about it in the past (a few years ago) but
> > wasn't really interested enough at the time to experiment.
> >
> > It looks like the code will just drop into the LinuxCNC tree. But it
> > only compiles on the Beaglebone. I don't have one set up here at the
> > moment.
>
> Right, it would take somebody to set up the infrastructure.
>
> > If you want to try compiling this new branch:
> > https://github.com/LinuxCNC/linuxcnc/tree/andypugh/bb_pru
> >
> > A problem is that with no BBB buildslave, no packages will be built
> > by the buildbot.
>
> Compiling all of LinuxCNC on the Bone would not be as quick
> as on a decent X86 machine.
> I think it comes out maybe being 1/4 the speed.  That's
> probably still OK, though.
>
> Thanks, Andy and Bari for the comments.
>
> Jon
>
I, for comparison, I just built the latest git pull on my pi4, getting 
these times, which I don't quite grok:
real81m28.218s
user133m40.185s
sys 30m24.466s

How do I get user+sys at nearly 2x the real which is the same as the 
actual wall time?
===
But I've a better Q re the pi4.  I lost my 1920x1080 screen, degraded now 
to a 1366x768 a/o about 90 days back, presumably because of some kernel 
incompatability due to the now 2 yo kernel I built and installed back 
when the pi was a 3b.  So, does debian now have an rt kernel in their 
buster armhf install, that is newer, and everything works, than the 
4.19.71-rt24-v7l+ I've been running the pi4 with for about 18 months?

The latest kernels for intel are amazing, the kernel just installed today 
on my 3 intel i5 boxes shows a servo thread latency of 3.5 u-secs, and 
the uspace installs are now better than the RTAI stuff from 6 years ago.

Mainsteam linux has turned a corner and joined  _us_, not the other way 
around. There has to be a BWG hidden in that. ;-)

Cheers, Gene Heskett
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
If we desire respect for the law, we must first make the law respectable.
 - Louis D. Brandeis
Genes Web page 


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