On 6/15/2015 4:20 PM, William Hermans wrote: >> >> *If you're looking for details on the BBB/Xenomai install, that's not* >> * really within the realm of the Machinekit docs repo. The best place* >> * to look for the details and "secret sauce" of building a working image* >> * is to actually grab the build scripts from github. Robert Nelson is* >> * now building the Machinekit images as part of his "universal SoC build* >> * farm", so the Machinekit build scripts are right next to (and* >> * virtually identical to) the scripts used to craft the other BeagleBone* >> * images:* >> >> * https://github.com/RobertCNelson/omap-image-builder >> <https://github.com/RobertCNelson/omap-image-builder>* >> >> * To make a Machinekit image, just:* >> >> * ./RootStock-NG.sh -c machinekit-debian-wheezy* >> >> * ...like it says at the bottom of the readme.md <http://readme.md> file.* > > Thanks for your answer Charles. However what I would like to find out is > how is machinekit different from say Debian. Not so much in difference > between distro's( because I'm thinking it's "just" a kernel with *some* > tools ), or determinism, but how does one use it to their full advantage.
The Machinekit BBB image *IS* Debian, just with a Xenomai capable kernel and some packages to make use of it pre-installed. > So for all I know, one would use it like you'd use Linux in general. My > guess would be this is not the case however. Also, knowing some guidelines > while developing deterministic code would be very handy too. > > So basically, stuff that an experienced developer should know when using > machinekit, but doesn't from lack of experience *with* machinekit. Which > libc is expected . . . etc. > > Does that make any sense ? Maybe I'm looking in the wrong place so far ? That makes sense, but is _way_ beyond the scope of a simple email, particularly since I don't know how much you do or don't know about coding for real-time. If you're wanting to easily write deterministic code, you might want to use PREEMPT_RT, which works really well on the x86 architecture and is coming along on the ARM architecture. This allows you to write "normal" C code, including making kernel syscalls (directly or via libraries like libc) without loosing real-time performance. Xenomai runs in it's own domain, and while you can call routines in the Linux kernel, doing so breaks any guarantee of hard real-time performance. So you have to write Xenomai drivers or directly talk to any hardware you're expecting to have real-time performance. Note that Machinekit is a project to control motors and other physical things (ie: machines) that runs under several possible real-time environments (currently Xenomai, PREEMPT_RT, RTAI, and even plain Posix w/o real-time guarantees). The Machinekit images for the BBB are simply a ready-to-run version of the RCN's BBB Debian builds with the Xenomai kernel and Machinekit packages pre-installed for ease-of-use. -- Charles Steinkuehler [email protected] -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
