Hi Chris,
As my paws are all over a lot of the work you are mentioning (multicore
in collaboration with Michael Haberler some years back)
and the splitting into HAL and CNC stacks, why not contact me direct to
discuss.
I think there is scope for collaboration which could be to both our projects
benefit, not least from a reduction in maintenance.
The multicore work you mention, primarily adds atomic operations and
other measures
to prevent things like the side effects of multi core, multi cache
operations, where values can be updated
by one cache before another has finished.
Machinekit's HAL generally has hugely diversified from the original
linuxcnc, instantiated components for instance
which can be added or removed at any time, even in a running system.
Because of backwardly compatible measures however, its use is not
visibly greatly different.
The splitting out of HAL, not only allows the stack to be used for non
CNC projects, such as ROS,
but is arranged so that installing machinekit-cnc on top of
machinekit-hal, brings you back to a fully functioning machinekit again.
We are contemplating moving to a 2 package installation and deprecating
the original machinekit repo and packages.
If you were to split out your CNC stack, which has some features we do
not have,
with the correct tweaks it could even sit on our HAL stack and result in
a fully functioning
CNC controller again.
Unfortunately we have not replaced NML with zmq, that would be the 'holy
grail'.
Michael Haberler and Alex's protobuf message headers and zmq
(machinetalk) would probably be the way to go there
It is something we would be interested in discussing, I am sure.
regards
Mick
On 09/09/18 01:27, emc-developers-requ...@lists.sourceforge.net wrote:
From: Chris Morley<chrisinnana...@hotmail.com>
To: EMC DEV<emc-developers@lists.sourceforge.net>
Subject: [Emc-developers] Breakout of HAL/ machinekits's HAL
Message-ID:
<cy1pr05mb22506fd52585a3d57cfc4eefc0...@cy1pr05mb2250.namprd05.prod.outlook.com>
Content-Type: text/plain; charset="iso-8859-1"
I see that machinekit has broken out HAL and cnc (Well and lots of others) into
different repositories.
https://github.com/machinekit
[https://avatars1.githubusercontent.com/u/6759549?s=280&v=4]<https://github.com/machinekit>
machinekit ? GitHub<https://github.com/machinekit>
github.com
GitHub is where people build software. More than 28 million people use GitHub
to discover, fork, and contribute to over 85 million projects.
It also seems they have updated HAL considerably,
They were working on RT multicore support, anytime instantiation of HAL
components
cython support.. probably other stuff - I'm not sure if it includes ARM or FPGA
upgrades.
I was thinking that maybe linuxcnc should discuss if that is something that
would be of interested.
pros I see:
-chance to break HAL out of cnc stack
-seemingly an upgrade in capability
-someone else has done a lot of work/testing already
-might allow more cross work of developers between the projects
cons:
-surely a lot of work to incorporate (though it does support legacy code, if I
understand right)
-lack of experience with concepts/code - will take time to become comfortable
-we'd have to admit they are not bad people:)
Ok that last one was meant as fun.
There are very smart and hard working people on both projects, it would be nice
to benefit both
projects.
I have not really looked at the code, nor am qualified to give indepth opinion
of the code.
I have watched the video of the multicore idea.
https://www.youtube.com/watch?v=brT0bEkJLSY
There are more videos (including one about the trajectory planner that we now
use)
Thoughts?
Chris M
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers