On 09/10/17 12:57, 'Dimitar Dobrev' via
Machinekit wrote:
I created /usr/lib/linuxcnc/xenomai and copied
pru_generic.bin there. After trying again I got:
Traceback (most recent call last):
File "/usr/bin/hal_temp_bbb", line 198, in <module>
checkAdcInput(pin)
File "/usr/bin/hal_temp_bbb", line 156, in checkAdcInput
pin.filename = tempName[0]
IndexError: list index out of range
This is not an error linked to pru_generic.bin AFAIK, but you need
someone who knows about BBB.
If it is saying that an index of 0 is out of range,
you need to look at what it is trying to do and work out how it can
be empty.
https://github.com/machinekit/machinekit/blob/master/src/hal/user_comps/hal_temp_bbb.py#L156
In case the pru_generic.bin for rt-preempt cannot work in
xenomai,
The pru_generic.bin is identical for all kernel flavours so you can
just copy it across
The rt-preempt component modules may work with xenomai, there has
been discussion as to whether they are actually different,
but the bigger problem is that you will lack ulapi_xenomai.so and
rtapi_app_xenomai.
There are no xenomai packages for Stretch either, as Stretch is on
Xenomai3, which does not work with Machinekit
I assume you have manually installed the Jessie ones?
I suggest you read this thread
https://groups.google.com/forum/#!topic/machinekit/RrNLUo4ASP4
and contact Darren or one of the others to find where you can
download an image with the rt-preempt kernel,
or even just the kernel, modules etc and install it into your
existing image
do I correctly understand that switching from
xenomai to rt-preempt on an existing installation is impossible
and I need to install a new image instead?
On Saturday, October 7, 2017 at 5:06:38 PM UTC+3, Schooner
wrote:
I don't use a BBB, it
looks like Debian only provide i386 and amd64 rt-preempt
kernels for Stretch.
I don't know which rt kernel others have used, probably one
from here
https://elinux.org/Beagleboard:BeagleBoneBlack_Debian#Mainline_.284.14.x_lts.29
The one I used on my server is 4.4.68-ti-rt-r112, but there
are probably newer ones.
Looks like linux-image-4.9.40-bone-rt-r7 is quite new, the
BBG people have to use rt-preempt I believe to get
everything working.
Someone should be able to give you a link
In fact if you have a root around here https://rcn-ee.com/rootfs/bb.org/testing/
you may find an image which suits
rt-preempt kernels are quite easy to build, I have even
built one on a 4 core aarm64, but that has much more
processing power
than a BBB, might take quite a while on a BBB
Is there any reason why you have to use a BBB at all?
Life is much simpler with a proper computer ;\
On 07/10/17 14:39, 'Dimitar Dobrev' via Machinekit
wrote:
Schooner, thank you very much for all of
your help. I am definitely going to try it. Would you
have some directions about the switch to rt-preempt? Do
I need to compile it from source code or is it just a
matter of installing packages?
On Saturday, October 7, 2017 at 4:25:21 PM UTC+3,
Schooner wrote:
In that case,
get hold of the rt-preempt kernel from Stretch and
use that.
Then you will be able to install
machinekit-rt-preempt for stretch-armhf from my repo
and it should work, with the pru_* binaries built
and
symlinked to the /usr/lib/linuxcnc/rt-preempt
directory where they can be found by hal_pru_generic
Xenomai is becoming of lessening importance, as the
rt-preempt kernel latency improves.
Because the BBB uses the PRU for step generation
etc, all that is required is a stable servo thread
which rt-preempt should be able to provide.
Bas is already using rt-preempt on his BBB, as has
Charles.
The reason for the recent commit to make
pru_generic.* available to all armhf kernel
flavours, was to allow this, without the user having
to kludge
together symlinks or copy the binaries from another
install.
Be aware there will be a major change to the libczmq
and libzeromq dependencies in a few days.
The packages as they are now will work together, but
if you upgrade at a later date, you will probably
need to remove all packages and re-install
to get the correct deps.
Good luck
On 07/10/17 14:05, 'Dimitar Dobrev' via
Machinekit wrote:
I have used Stretch for the
following reason:
I need to run a Qt application built with https://github.com/qtquickvcp/QtQuickVcp
on the BBB itself. I had to therefore build
QtQuickVcp for that BBB which in turn meant I
needed to build Qt itself for it. After multiple
attempts to do so failed, I discovered http://software-dl.ti.com/processor-sdk-linux/esd/AM335X/latest/index_FDS.html
. The problem with it is that it contains Qt
5.7.1 while the Qt from packages on Debian Jessi
is 5.3.2. So when I compiled my application it
could not run on the BBB. So I upgraded the BBB
to use Stretch where the Qt from packages is
5.7.1 as well. I tried using the same Qt from
this SDK on the BBB but I kept getting an error
while starting up that the wayland plug-in could
not be found.
I would deeply appreciate any suggestions to
improve the above configuration.
On Saturday, October 7, 2017 at 1:06:47 PM
UTC+3, Schooner wrote:
Thanks for the extra info, that makes
things clearer
You have installed an old Xenomai2 kernel
onto Stretch
My testing repo for Stretch does not
contain any packages for Xenomai and so
you appear to have installed
machinekit-rt-preempt instead
So when machinekit looks for the
pru_generic.bin file, based upon the
kernel in use, it does not find it and you
get this error
Oct 6 23:33:14 beaglebone rtapi:0:
1:rtapi_app:10176:user hal_pru_generic:
cant find /usr/lib/linuxcnc/xenomai/pru_generic.bin
in /home/machinekit/CRAMPS or
/lib/firmware/pru/
Oct 6 23:33:14 beaglebone rtapi:0:
1:rtapi_app:10176:user hpg: ERROR: failed
to initialize PRU
So use the official, supported image and
all will work and leave you free to do
whatever you intended with the board,
rather than mess around trying to get the
wrong packages working on the wrong
kernel.
Use the Jessie SD card image from Robert
Nelsons site ( as indicated in the
'Getting Started' section of the docs)
There is no reason to use Stretch and
currently many reasons not to, which is why
we are working using an unofficial testing
repo at present.
Anything there may or may not work and is
subject to change or removal without notice.
regards
On 07/10/2017 02:03, 'Dimitar Dobrev'
via Machinekit wrote:
Kernel:
Linux beaglebone 3.8.13-xenomai-r83 #1
Wed Jan 4 23:10:15 UTC 2017 armv7l
GNU/Linux
Packages from:
http://deb.mgware.co.uk/
Log:
Attached.
I already have pru_generic.bin:
/usr/lib/linuxcnc/rt-preempt/ pru_generic.bin
/usr/lib/linuxcnc/prubin/pru_generic.bin
Please let me know if you need anything
else.
On Thursday, October 5, 2017 at 1:46:48
PM UTC+3, Schooner wrote:
On 05/10/17 10:55, 'Dimitar
Dobrev' via Machinekit wrote:
Hello all,
My name is Dimitar Dobrev.
I work as an application
programmer and I have tried
using CRAMPS. I have
encountered an error I would
like to ask for your help
about.
I have a BeagleBone Black
with Debian Stretch.
kernel? kernel version? git version
of Machinekit? etc. etc.
I need to start Machinekit
on to connect to a real
machine. I started run.py and
got one error which I solved
but I am now stuck at:
CRAMPS.hal:28: insmod
failed, returned -1;
rtapi_app_main(hal_pru_generic):
-1 Operation not permitted
What is the rest of the error output
(/var/log/linuxcnc.log or dmesg if
it caused a segfault)
insmod errors are rather vague and
can be from several causes.
Try running with 'DEBUG=5 preceding
the machinekit command and change
the inifile 'debug = ' stanza to a
higher number
if you don't get a cause printed.
Make sure you have rsyslogd running
to log output
If you are running an older pull of
machinekit, on a rt_preempt kernel,
it won't have my recent
commits which make pru_generic.bin
etc available
https://github.com/machinekit/machinekit/commit/a6ac2576fc9a7f9d8a9a3f0e9da0eb244b8336d3
That is one possibility, but
impossible to say with this little
info.
My Machinekit is installed
from packages rather than
built from source.
Where did you get the packages?
There is no official support for
Stretch yet.
The only packages for Stretch are in
my unofficial repo.
They HAVE been tested on a BBB and
work
--
website: http://www.machinekit.io
blog: http://blog.machinekit.io
github: https://github.com/machinekit
---
You received this message because
you are subscribed to the Google
Groups "Machinekit" group.
To unsubscribe from this group and
stop receiving emails from it,
send an email to machinekit+...@googlegroups.com.
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.
--
website: http://www.machinekit.io
blog: http://blog.machinekit.io
github: https://github.com/machinekit
---
You received this message because you are
subscribed to the Google Groups
"Machinekit" group.
To unsubscribe from this group and stop
receiving emails from it, send an email to
machinekit+...@googlegroups.com.
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are
subscribed to the Google Groups "Machinekit"
group.
To unsubscribe from this group and stop receiving
emails from it, send an email to machinekit+...@googlegroups.com.
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are subscribed to
the Google Groups "Machinekit" group.
To unsubscribe from this group and stop receiving emails
from it, send an email to machinekit+...@googlegroups.com.
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.
--
website: http://www.machinekit.io
blog: http://blog.machinekit.io
github: https://github.com/machinekit
---
You received this message because you are subscribed to the Google
Groups "Machinekit" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to [email protected].
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are subscribed to the Google Groups "Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.
|